【滤波器】基于多种滤波器实现信号去噪含Matlab源码
【滤波器】基于多种滤波器实现信号去噪含Matlab源码
TT_Matlab
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。
1 简介
基于Matlab软件平台研究了不同的数字滤波器对污染的语音信号的去噪效果.对比了加入噪声前后的语音信号的时域与频域图.仿真实验结果表明:多种滤波器对加入噪声后的语音信号的去噪效果最佳,且成功滤除了高频噪声.
2 部分代码
function b = inverseFilter(
Hd
,
Fs
,method,
PLOT
)
T
=
0.15
;
[
F
,w] = freqz(
Hd
,
1
,
1000
,
Fs
);
if
(method==
1
)
F2
=
abs
(
F
) +
T
;
F3
=
1
./
F2
;
%
F3
=
F3
-
min
(
abs
(
F3
));
%
F3
=
F3
./
max
(
abs
(
F3
));
%
F3
(
F3
>
0.50
) =
1
;
%
F3
(
F3
<=
0.50
) =
0.00001
;
else
if
(method==
2
)
T
=
0.050
;
F3
(
find
(
abs
(
F
)>
T
)) =
1
./
F
(
find
(
abs
(
F
)>
T
));
F3
(
find
(
abs
(
F
)<=
T
)) =
1
./
T
;
F3
=
F3
-
min
(
abs
(
F3
));
F3
=
F3
./
max
(
abs
(
F3
));
M
= mean(
abs
(
F3
(
abs
(
F3
)>
0.20
)));
F3
=
F3
./
M
;
else
b =
1
;
a =
Hd
;
end
end
if
((method==
1
) || (method==
2
))
if
(
PLOT
==
1
)
figure;
plot(w,
abs
(
F
));
hold on;
plot(w,
abs
(
F3
),’r’);
end
[b,a] = invfreqz(
F3
,
2
* pi * w ./
16000
, length(
Hd
),
1
);
end
if
(
PLOT
==
1
)
figure;
freqz(b,a,
1000
,
Fs
);
end
3 仿真结果
4 参考文献
[1]赵培瑶, 向凤红, 毛剑琳,等. 基于Matlab的不同数字滤波器对语音信号的去噪效果[J]. 化工自动化及仪表, 2016(7):3.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的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
