【语音去噪】基于维纳+卡尔曼+谱减法实现语音去噪含Matlab源码
【语音去噪】基于维纳+卡尔曼+谱减法实现语音去噪含Matlab源码
TT_Matlab
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。
1 简介
基于维纳滤波、卡尔曼滤波、谱减法实现语音去噪处理。
2 部分代码
function
[wiener_enspeech] = wienerfilter(testsignal)
%维纳滤波器函数
testsignal
=
testsignal’;
frame_len
=
256; %帧长
step_len
=
0.5*frame_len; %分帧时的步长,相当于重叠50%
wav_length
=
length(testsignal);
R
=
step_len;
L
=
frame_len;
f
=
(wav_length-mod(wav_length,frame_len))/frame_len;
k
=
2*f-1; % 帧数
h
=
sqrt(1/101.3434)*hamming(256)’; % 汉宁窗乘以系数的原因是使其复合条件要求;
%
testsignal = testsignal(1:f*L); % 带噪语音与纯净语音长度对齐
%
signal= signal(1:f*L);
win
=
zeros(1,f*L); % 设定初始值;
wiener_enspeech
=
zeros(1,f*L);
%-------------------------------分帧-------------------------------------
for
r = 1:k
y
=
testsignal(1+(r-1)*R:L+(r-1)*R); % 对带噪语音帧间重叠一半取值;
y
=
y.*h; % 对取得的每一帧都加窗处理;
w
=
fft(y); % 对每一帧都作傅里叶变换;
Y(1+(r-1)*L
:
r*L) = w(1:L); % 把傅里叶变换值放在Y中;
end
%-------------------------------估计噪声-----------------------------------
NOISE
=
stationary_noise_evaluate(Y,L,k); %噪声最小值跟踪算法
%
每帧中的傅里叶变换和噪声估计均如上所示
%-------------------------------winner-------------------------------------
for
t = 1:k
X
=
abs(Y).^2;
S
=
max((X(1+(t-1)*L:t*L)-NOISE(1+(t-1)*L:t*L)),0);
G_k
=
(X(1+(t-1)*L:t*L)-NOISE(1+(t-1)*L:t*L))./X(1+(t-1)*L:t*L);
S
=
sqrt(S);
A1
=
G_k.*S;
A
=
Y(1+(t-1)*L:t*L)./abs(Y(1+(t-1)*L:t*L)); % 带噪于语音的相位;
S
=
A1.*A; % 因为人耳对相位的感觉不明显,所以恢复时用的是带噪语音的相位信息;
s
=
ifft(S);
s
=
real(s); % 取实部;
wiener_enspeech(1+(t-1)*L/2
:
L+(t-1)*L/2) = wiener_enspeech(1+(t-1)*L/2:L+(t-1)*L/2)+s; % 在实域叠接相加;
win(1+(t-1)*L/2
:
L+(t-1)*L/2) = win(1+(t-1)*L/2:L+(t-1)*L/2)+h; % 窗的叠接相加;
end
wiener_enspeech
=
wiener_enspeech./win; % 去除加窗引起的增益得到增强的语音;
wiener_enspeech
=
wiener_enspeech’;
end
3 仿真结果
4 参考文献
[1]郑永敏, 鲍鸿, & 张晶. (2017). 基于维纳–小波分析的语音去噪新方法. 广东工业大学学报, 34(5), 4.
[2]何志勇, 朱忠奎. 脉冲噪声环境下基于卡尔曼滤波的语音增强[J]. 计算机应用, 2011, 31(12):5.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26
