0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Hilbert(希尔伯特)变换的两种Matlab实现方法

雷达通信电子战 来源:雷达通信电子战 2023-10-16 16:09 次阅读

信号只包含振幅信息,而缺乏相位信息。而复信号则包含了原始信号的相位信息,可以用于分析信号的相位特性。在某些应用中,例如信号处理、通信系统中,相位信息对于理解信号的特性和进行后续处理非常重要。

Hilbert(希尔伯特)变换可以将实信号转换为复信号,常用于提取信号的相位信息,使得我们能够更全面地分析和处理信号,这在雷达通信领域中都很有用,尤其是在带通信号处理中。

Hilbert变换可以认为是函数f(t)和h(t)的卷积,其中:

2b7d93ba-6527-11ee-939d-92fbcf53809c.png

在频率域,对函数进行Hilbert变换,是在f(t)的傅里叶变换结果F(w)前乘一个系数H(w),其中H(w)是h(t)的傅里叶变换:

2b907476-6527-11ee-939d-92fbcf53809c.png

也就是把F(w)所有正频率向后移动90°相位,负频率则向前移动90°相位。也可以用符号函数表示:

2b9a63be-6527-11ee-939d-92fbcf53809c.png

那么,对于函数f(t),它的希尔伯特变换在频域表示为:

2ba44cb2-6527-11ee-939d-92fbcf53809c.png

方法一:使用Matlab工具箱中的函数使用Matlab工具箱中的函数hilbert 可以计算实数输入序列x的 Hilbert 变换,并返回相同长度的复数结果,即y = hilbert(x),其中y的实部是原始实数数据,虚部是实际 Hilbert 变换。

2bb05cf0-6527-11ee-939d-92fbcf53809c.png

方法二:使用FFT/IFFTHilbert变换的实现还可以通过对实信号进行傅里叶变换(FFT),将负频率部分置零,然后再通过逆傅里叶变换(IFFT)转换到时域,得到复信号,其中实数部分为原始信号,虚数部分为变换后的信号。

常见函数的Hilbert变换

2bbb8a4e-6527-11ee-939d-92fbcf53809c.png

另外,使用NCO(Numerically Controlled Oscillator)和低通滤波器的组合也可以直接将实信号转换为复信号,避免了额外的FFT和IFFT处理,从而减少处理时间。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • matlab
    +关注

    关注

    175

    文章

    2922

    浏览量

    228441
  • Hilbert
    +关注

    关注

    0

    文章

    9

    浏览量

    8951
  • 傅里叶变换
    +关注

    关注

    5

    文章

    415

    浏览量

    42245
  • 雷达通信
    +关注

    关注

    0

    文章

    10

    浏览量

    7166

原文标题:Hilbert(希尔伯特)变换及两种Matlab实现方法

文章出处:【微信号:雷达通信电子战,微信公众号:雷达通信电子战】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何用Labview实现WVD分布和小波变换以及希尔伯特变换时频

    高手指教!!!还有,对于小波变换希尔伯特变换就更加不会了。不知有谁能给几个sample让我模仿一下。谢谢!
    发表于 10-16 19:03

    labview系统下的希尔伯特变换

    求助各位高手!!!!我在labview环境下,对正弦信号进行希尔伯特变换,但是labvIEW里面只提供快速希尔伯特变换,信号输入后,变换后得
    发表于 04-19 15:07

    希尔伯特分形天线的知识求助!

    最近在工作中遇到了这个希尔伯特分形天线,可是我是学其他的,对于这个东西实在不怎么懂啊,求高手指导一下,或者给点资料也行!让我打下基础就好!谢谢了!
    发表于 06-20 08:50

    matlab上的希尔伯特变换实现过程

    matlab上的希尔伯特变换实现过程
    发表于 04-19 21:27

    希尔伯特中的hhspectrum问题

    用到希尔伯特转换中的hhspectrum.m程序,是直接从网上下的程序,运行的时候出现了错误,是在hhspectrum.m调用 hilbert.m文件时出现的错误,??? Undefined
    发表于 03-04 11:12

    单片机的希尔伯特FIR滤波器

    求高手指点单片机的希尔伯特FIR滤波器设计步骤?
    发表于 03-16 17:05

    单片机的希尔伯特FIR滤波器电路原理图

    求高手指点用51单片机的希尔伯特FIR滤波器电路原理图?
    发表于 03-16 17:09

    关于Hillbert希尔伯特变换

    求各路大侠指导,希尔伯特变换,并用来求无功功率?
    发表于 01-07 19:41

    无耻伸手,关于如何用labview求解希尔伯特

    小弟最近忙毕业设计,由于要用到HHT变换,网上找了不少资料,学会了如何用labview实现EMD分解,无耻伸手请教各位大神如何用labview实现HHT的后半部分求解希尔伯特谱,小弟先
    发表于 03-08 20:40

    labview的希尔伯特变换

    小白一个。。。请问为什么我进行labview的希尔伯特变换以后的频率变大了很多。不是正弦信号变成余弦信号但是不会改变频率的么?
    发表于 09-20 21:00

    请问Labview如何实现WVD分布以及希尔伯特变换等时频分析的?

    Labview新手求救:我想用Labview对信号进行时频分析,可是WVD变换的那个模块,help里没有给example,我就不会了,求高手指教!!!还有,对于小波变换希尔伯特变换
    发表于 10-19 10:11

    请问sigmadsp中希尔伯特变换调相能实现信号延时么?

    sigmadsp中希尔伯特模块怎么实现调相位?相位可以换算成时间么?也就是,可以通过调相位使信号达到延时效果么? 如上图,我在外部设置一个调节参数,1800000000,可以调节cos和sin
    发表于 11-28 07:41

    基于Matlab的FIR型希尔伯特变换器设计

    Matlab作为滤波器设计的基础软件,不仅可以快速有效地实现希尔伯特变换器的设计、分析仿真和最优化,而且可以直接计算出希尔伯特
    发表于 05-17 10:03 1.2w次阅读

    基于希尔伯特变换的基带数字波束合成算法

    为了降低多普勒计程仪波束合成器的复杂度,本文根据相移束控基本原理和希尔伯特变换性质,提出一种基于希尔伯特变换的基带数字波束合成算法。首先,利用希尔伯
    发表于 12-27 15:36 3次下载
    基于<b class='flag-5'>希尔伯特</b><b class='flag-5'>变换</b>的基带数字波束合成算法

    浅析希尔伯特变换简介以及希尔伯特变换意义

    1 hilbert变换 希尔伯特变换是以著名数学家大卫·希尔伯特(David Hilbert)来
    的头像 发表于 06-04 15:08 2.7w次阅读
    浅析<b class='flag-5'>希尔伯特</b><b class='flag-5'>变换</b>简介以及<b class='flag-5'>希尔伯特</b><b class='flag-5'>变换</b>意义