Hilbert包络线

更新时间:2023-05-23 21:22:15 阅读: 评论:0

33aabb-哪些食物含铁量高

Hilbert包络线
2023年5月23日发(作者:元旦祝福语大全简短)

Hilbert变换是一个很有用的变换,用它来做包络分析更是一种有效的数据处理

方法。现用代码测试其变换效果

第一个程序效果如下

% Hilbert变换测试

clc

clear all

clo all

ts = 0.001;

fs = 1/ts;

N = 200;

f = 50;

k = 0:N-1;

t = k*ts;

% 信号变换

% 结论:sin信号Hilbert变换后为cos信号

y = sin(2*pi*f*t);

yh = hilbert(y); % matlab函数得到信号是合成的复信号

yi = imag(yh); % 虚部为书上定义的Hilbert变换

figure

subplot(211)

plot(t, y)

title('原始sin信号')

subplot(212)

plot(t, yi)

title('Hilbert变换信号')

% 检验两次Hilbert变换的结果(理论上为原信号的负值)

% 结论:两次Hilbert变换的结果为原信号的负值

yih = hilbert(yi);

yii = imag(yih);

max(y + yii)

% 信号与其Hilbert变换的正交性

% 结论:Hilbert变换后的信号与原信号正交

sum(y.*yi)

% 谱分析

% 结论:Hilbert变换后合成的复信号的谱没有大于奈氏频率的频谱,即其谱为

单边的

NFFT = 2^nextpow2(N);

f = fs*linspace(0,1,NFFT);

Y = fft(y, NFFT)/N;

YH = fft(yh, NFFT)/N;

figure

subplot(211)

plot(f,abs(Y))

title('原信号的双边谱')

xlabel('频率f (Hz)')

ylabel('|Y(f)|')

subplot(212)

plot(f,abs(YH))

title('信号Hilbert变换后组成的复信号的双边谱')

xlabel('频率f (Hz)')

ylabel('|YH(f)|')

第二个效果如下

第一个包络测试

可以看到,此包络分析得到的包络信号频率为20Hz,包络信号的波形为余弦信

号的绝对值信号,这是因为计算包络时是取绝对值得到的,从而使信号频率加倍。

解决方法是把包络提升,远离0,如下第二个包络。

第二个包络测试

可以看到Hilbert包络分析可以有效提取包络和调制信号频率,和检波有一样的

效果,而且更实用。

第三个包络测试

这是尝试一个任意形状的包络,可以看到除在边缘处有误差外,整体效果很好。

% 包络分析(高中心频率的窄带信号分析)

% 基于:两个信号乘积的Hilbert变换取决于高频信号的Hilbert变换

clc

clear all

clo all

ts = 0.001;

fs = 1/ts;

N = 200;

k = 0:N-1;

t = k*ts;

% 原始信号

f1 = 10;

f2 = 70;

% a = cos(2*pi*f1*t); % 包络1

a = 2 + cos(2*pi*f1*t); % 包络2

% a = 1./(1+t.^2*50); % 包络3

m = sin(2*pi*f2*t); % 调制信号

y = a.*m; % 信号调制

figure

subplot(241)

plot(t, a)

title('包络')

subplot(242)

plot(t, m)

title('调制信号')

subplot(243)

plot(t, y)

title('调制结果')

% 包络分析

% 结论:Hilbert变换可以有效提取包络、高频调制信号的频率等

yh = hilbert(y);

aabs = abs(yh); % 包络的绝对值

aangle = unwrap(angle(yh)); % 包络的相位

af = diff(aangle)/2/pi; % 包络的瞬时频率,差分代替微分

计算

% NFFT = 2^nextpow2(N);

NFFT = 2^nextpow2(1024*4); % 改善栅栏效应

f = fs*linspace(0,1,NFFT);

YH = fft(yh, NFFT)/N; % Hilbert变换复信号的频谱

A = fft(aabs, NFFT)/N; % 包络的频谱

subplot(245)

plot(t, aabs, t, a, '.')

title('包络的绝对值')

legend('包络分析结果', '真实包络')

subplot(246)

plot(t, aangle)

title('调制信号的相位')

subplot(247)

plot(t(1:end-1), af*fs)

title('调制信号的瞬时频率')

subplot(244)

plot(f,abs(YH))

title('原始信号的Hilbert')

xlabel('频率f (Hz)')

ylabel('|YH(f)|')

subplot(248)

plot(f,abs(A))

title('包络的频谱')

xlabel('频率f (Hz)')

ylabel('|A(f)|')

2字成语-优优祝福

Hilbert包络线

本文发布于:2023-05-23 21:22:14,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/zhishi/a/1684848135176073.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:Hilbert包络线.doc

本文 PDF 下载地址:Hilbert包络线.pdf

标签:Hilbert
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 实用文体写作网旗下知识大全大全栏目是一个全百科类宝库! 优秀范文|法律文书|专利查询|