欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

matlab频域怎么提取特征值,补充:频域特征值提取的MATLAB代码实现(小波分析)...

发布时间:2025/5/22 循环神经网络 149 豆豆
生活随笔 收集整理的这篇文章主要介绍了 matlab频域怎么提取特征值,补充:频域特征值提取的MATLAB代码实现(小波分析)... 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

之前的文章信号频域分析方法的理解(频谱、能量谱、功率谱、倒频谱、小波分析)中提到了离散小波分解的例子,其参考代码如下:

t_s = 0.005; %采样周期

t_start = 0.001; %起始时间

t_end = 10; %结束时间

t = t_start : t_s : t_end;

y = 10*sin(2*pi*0.5*t)+3*sin(2*pi*10*t)+1*sin(2*pi*20*t)+3*randn(1,length(t)); %生成信号

len = length(y);

%生成突变信号

y2 = 50*sin(2*pi*50*t);

for i = 1: len

if i>=601&&i<=604

y(i) = y(i)+y2(i);

else

y(i) = y(i);

end

end

figure

plot(y) %绘制原始信号

[c,l] = wavedec(y,5,'db5');

%重构1~5层细节函数

d5 = wrcoef('d',c,l,'db5',5);

d4 = wrcoef('d',c,l,'db5',4);

d3 = wrcoef('d',c,l,'db5',3);

d2 = wrcoef('d',c,l,'db5',2);

d1 = wrcoef('d',c,l,'db5',1);

%重构1~5层近似函数

a5 = wrcoef('a',c,l,'db5',5);

a4 = wrcoef('a',c,l,'db5',4);

a3 = wrcoef('a',c,l,'db5',3);

a2 = wrcoef('a',c,l,'db5',2);

a1 = wrcoef('a',c,l,'db5',1);

figure

subplot(4,2,1);

plot(a1)

subplot(4,2,2);

plot(d1)

subplot(4,2,3);

plot(a2)

subplot(4,2,4);

plot(d2)

subplot(4,2,5);

plot(a3)

subplot(4,2,6);

plot(d3)

subplot(4,2,7);

plot(a4)

subplot(4,2,8);

plot(d4)

结果如下:

原始信号

离散小波分析结果

左侧四行是1~4阶的近似信号,右侧四行是1~4阶的细节信号。

欢迎关注我的专栏与信号处理有关的那些东东

欢迎关注我的公众号“括号的城堡”,微信号为“khscience”,会有更多有趣的东西分享。

总结

以上是生活随笔为你收集整理的matlab频域怎么提取特征值,补充:频域特征值提取的MATLAB代码实现(小波分析)...的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。