資源簡介
LMS語音信號去噪matlab代碼,可以對一段較長的語音信號進行去噪

代碼片段和文件信息
clc;
clear;
[GTF]?=?audioread(‘青鳥-火影忍者.mp3‘);?%獲得樣本和采樣頻率
single_channe?=?GT(:1);%獲得單通道音樂
Length?=?length(single_channe);
n=(1:Length)‘;
audiowrite(‘原始單通道信號.wav‘single_channeF);
figure(1);
plot(nsingle_channe);
title(‘原始單通道信號‘);
%生成噪聲加音樂的信號
v?=?0.8?*?randn(Length1);
ar?=?[11/2];
v1=?filter(1arv);%通過ar模型,得到噪聲
x?=?single_channe?+?v1;%將音樂加上噪聲
ma?=?[1-0.80.4-0.2];%生成與噪聲相關的信號
v2?=?filter(ma1v);
audiowrite(‘加噪聲后信號.wav‘xF);
figure(2);
plot(nx);
title(‘加噪聲后信號‘);
%通過最陡梯度下降法求噪聲
v_after=LMS(v2x600.0005);
audio_filter?=?x?-?v_after‘;
audiowrite(‘LMS濾波信號.wav‘audio_filterF);
figure(3);
plot(naudio_filter);
title(‘LMS濾波信號‘)
square_error?=?(single_channe?-?audio_filter).^2;
figure(4);
plot(nsquare_error);
title(‘誤差‘);
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????511??2018-12-15?14:21??SGDM.m
?????文件?????????879??2018-12-15?14:23??LMSfilter.m
- 上一篇:SHINEtoolbox
- 下一篇:強化學習代碼,2016版,matlab
評論
共有 條評論