基于matlab的Hilbert变换详解

基于matlab的Hilbert变换详解,第1张

作为学习HHT的的第二部分,第一部分emd分解可参见链接:

用matlab进行振动波形的emd分解

希尔伯特变换的物理意义十分简单: 把肢缺闹信号的所有频率分量的相位推迟90度。 因此又叫90°移相器,所以原始信号与它的希尔伯特变换构成正交副。

当然,我知道大家最感兴趣的是:把相位推迟90度有什么用?

答案是: 希尔伯特变换可以用来做解调器,调幅、调频都能解。

我们构造一个信号 z(t)=x(t)+i*y(t),将该图像在三维空间中画扮裂出来,如图所示

补充:为什么通过瞬时相位求导可以定义为瞬时频率:从信号投影来看可以建立时间t和一个角度的极坐标方程,所以单位时间角度的变化就是角速度,而角速度与频率成倒数。

这样,我们就利用希尔伯特变换从一个幅度、频率均被调制的调制波中把幅度、频率都解调了出来。

3瞬属性中的瞬时频率,很明显可以看出它有很多的" 负频率 "!这很明显是错误的。

所以,直接根据" 解析信号 "算瞬时频率是无意义的!

所以,真正做 3瞬属性 的分析,做原信号的" 时频谱 "分析,我们用的是:历罩

—— 希尔伯特-黄变换(HHT)。HHT变换先将信号进行EMD分解,得到的是各个不同尺度的分量,对每一个分量进行Hilbert变换后得到的是有实际意义的瞬时频率。

举例如下:

希尔伯特-黄变换最初的理论是采用emd的经验模态分解,目前已经改进到采用ceemdan的模态分解方式

【1】https://www.zhihu.com/question/30372795   希尔伯特变换将信号表示为复解析信号的物理意义是什么?

【2】https://www.jianshu.com/p/b591d95ae80b    一维离散希尔伯特变换实现与3瞬属性

【3】https://www.jianshu.com/p/3363abb64f32    离散数据希尔伯特-黄变换

【4】https://blog.csdn.net/yrlgg/article/details/79595859    傅里叶变换与希尔伯特变换

1、可以参考下面的代码:

%因式分解

syms a x

a=factor(x^2+3*x+2)

%合并

syms a x

a=collect((x+1)*(x+2))

2、factor用于因式分解,expand用于多项式展开。

可以在MATLAB命令窗口输入:

help factor

help expand

查询用法。

扩展资料:

常用函数

barh 二维水平直方图

base2dec X进制转换为十进制

bin2dec 二进制转换为十进制

blanks 创桥物建空格串

dos 执行DOS 指令和此并返回结果

double 把其他类型对象转换为双精度数值

drawnow 更新事件队列强迫Matlab刷新屏幕

floor(x):下取整,即舍去正小数至相邻整数

ceil(x):上取整,即加入正小数至相邻整敏棚液数

参考资料来源:百度百科-MATLAB

一般的的查询可在matlab里的帮助界面进行搜索,点击帮助。

打开帮助页面,左侧检索栏进行检索需要查询的语句,然后即可查看右侧谨老孝查询结果。

或者在主界面,输入help 空格+你要查询的内容,进行查询。下次你可以尝试一下。

一般程序都会有不懂得语句,或没用过的,可以在刚刚说过的帮助页面进行查询,看如何使用,输入参量什么意义,程序输出结果是什么。

你这个描述祥稿太过于简略了,含氏我只能给出这样的答案了,一般可以都给一点程序,也许会有对答题人帮助。

不过你这个程序的确有点复杂,不根据前后逻辑,和主程序和目的是很难解答的。

你可以看看主程序,再查查帮助。

希望对你有所帮助。谢谢。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12324919.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存