什么是希尔伯特变换?

来源:模态空间 作者:谭祥军
在进行包络分析时,首先需要对实值的时域信号进行希尔伯特变换,将其相位移动90度,变换成一个纯虚数,然后再与实值的时域信号组成一个复值的解析信号。由于在希尔伯特变换的过程中涉及到相量、解析信号等概念,因此,首先,我们需要明白这两个基本概念。
为了直观地表明简谐运动的三个基本特征量的物理意义,可以用一个旋转矢量来表示简谐运动:
l 旋转矢量的长度等于振动幅值A;
l 矢量在平面内绕原点以角速度ω作逆时针匀速旋转;
l 在t=0时刻,矢量与x轴正向的夹角等于初相位φ。
则在任一时刻t,该矢量与x轴正向的夹角为ωt+φ,矢量末端在x轴上的投影的长度为时间的余弦函数
x(t)=Acos(ωt+φ)
因此,旋转矢量的末端在x轴上的投影点的运动是简谐运动,如图1所示。
在物理和工程领域,经常会用到名词相量(Phasor),它实际上是上述旋转矢量的扩展,上述旋转矢量是在实数范围内描述。而相量是在复平面内描述一个旋转的位置矢量,是相位向量的混合词,也具有上述类似的特征。在复平面内,相量是一个位置矢量,原点是复平面的零点,而终点以恒定的速度作圆周运动,终点到原点的距离是恒定的,因此,它的运动轨迹在复平面上是一个圆。随着圆周运动的进行,相量在实轴上的投影的长度是一个随时间变化的向量,这个向量的长度是时间的余弦信号。因此,相量是一个余弦信号的时变复数描述。
根据欧拉公式,有
A·exp(+j(ωt+φ))=Acos(ωt+φ)+j·Asin(ωt+φ)
因而,有
Acos(ωt+φ)=A/2·exp(+j(ωt+φ))+A/2·exp(-j(ωt+φ))
这表明余弦信号数学上可表示成两个复值函数之和。实旨上,上式也表明了一个余弦(或正弦)信号的傅立叶变换是一个双边频:存在正负相同的频率成分,但两个频率处的幅值为原来幅值的一半。
或者,余弦信号也可以表示成欧拉公式的实部,即
Acos(ωt+φ)=Re{A·exp(+j(ωt+φ))}=Re{A exp(jφ))·exp(jωt)}
我们知道,在复平面,函数A·exp(+j(ωt+φ))是一个长度为A的旋转矢量,轨迹是一个半径为A的圆,如图2所示,我们称这个函数是一个相量。
图2 相量实例
相量在复平面的实轴上的投影是一个随时间变化的余弦函数,投影的长度就是这个余弦函数的幅值,相量旋转的角频率是这个余弦函数的角频率,相量在初始位置与实轴正向的夹角是余弦函数的初相位。因此,实值的余弦信号可以写成两个长度相同、频率相同、初相位相反,旋转方向相反的相量之和,即:
Acos(ωt+φ)=A/2·A·exp(+j(ωt+φ))+ A/2·A·exp(-j(ωt+φ))
定义
那么,任何时刻这两个相量之和是一个沿实轴方向长度随时间变化的向量,如图3所示,这个向量也就是一个实值的余弦函数。相加之后的信号幅值为原始相量幅值的2倍。
图3 实值信号可以认为是两个相量之和
2 解析信号
如果一个信号只有正频率部分,则称这个信号是解析信号,它也是一个复值信号,因为虚部是实部的希尔伯特变换。一个信号的解析信号是其频谱的正半轴对应的信号的2倍。对于希尔伯特-包络分析而言,首先就要构造相应的解析信号。
一个沿正方向(逆时针)旋转的相量就是一个解析信号。对于希尔伯特变换而言,变换之前的信号为实值的时域信号,而相量X+和相量X-旋转方向相反,旋转速度相同,它们之和将生成一个实值的时域信号,即
虽然这两个相量都是复数,但它们的和是一个随时间变化的实数,这就是我们要变换的实值时域信号x(t)。为了使信号成为解析信号,需要消除X-,这就需要一个相位相反、方向相同的相量-X-。令
也即是,正方向旋转的相量的相位向后移动90度变成了负方向,这个相位移动等于相量X+与-j的乘积。负方向旋转的相量的相位向前移动90度变成了正方向,这个相位移动等于相量X-与j的乘积。
实际上,上式就定义了希尔伯特变换,相量Y+与相量Y-的和为
解析信号是一个有虚部的复值信号,这个虚部就是信号实部的希尔伯特变换。解析信号Z定义如下
解析信号的定义表明解析信号是正方向的原始信号的相量的2倍。
3 希尔伯特变换的定义
首先,我们要明白希尔伯特变换是针对包含正弦(或余弦)成分的连续时域信号,因此,信号具有周期性。希尔伯特变换一定是在时域,是将时域信号通过希尔伯特变换后再回到时域。那么,对希尔伯特变换而言,输入输出信号都是时域信号,只不过是相位发生了变化:移动了90度。因而,希尔伯特变换可视作一个滤波器,可以通过传递函数来描述它。起到希尔伯特变换作用的滤波器,我们称之为希尔伯特变换器或90度相位移动器。假设输入信号x(t)和输出信号y(t)的傅里叶变换分别为X(jω)和Y(jω),那么,希尔伯特变换使相位移动90度,定义为
我们知道正弦信号相位移动90度,可以变成余弦信号,反之亦然。那么,我们可以说,正弦信号的希尔伯特变换是余弦信号,余弦信号的希尔伯特变换是正弦信号。
除了用传递函数来描述希尔伯特滤波器的特性之外,还可以用脉冲响应函数来描述。脉冲响应函数由频响函数经傅里叶逆变换得到。但上式不能直接进行逆变换,因为它不是一个衰减函数。为了使之满足逆变换的要求,对上式乘以一个指数函数,而指数函数求逆非常方便。如果变量σ趋于0,如图4所示,那么,原始的传递函数乘以指数函数后,变换成
图4 希尔伯特变换的频响函数和脉冲响应函数
修改后的传递函数H(jω)的脉冲响应函数为
对上式求极限,我们可以得到希尔伯特变换的脉冲响应函数为
时域信号的希尔伯特变换也可以通过一个确定的公式来计算,类似傅里叶变换。通过上面的脉冲响应函数我们知道,它在t=0时刻是没有定义的。对于这个定义而言,涉及到卷积积分。而对于无穷积分或瑕积分而言,可使用柯西主值(Cauchy principal value, PV)来表示,如对于
则称
为柯西主值。
使用柯西主值表示的输入信号x(t)经希尔伯特变换的输出信号y(t)可定义为
一些常见函数的希尔伯特变换如表1所示。
表1 希尔伯特变换
4
希尔伯特变换的计算
希尔伯特变换的以上定义都是针对连续的时域信号,而实际工程上的采样都是离散的数字采样点信号。针对采样信号有两种方法可用于计算希尔伯特变换,一种为快速傅里叶变换(FFT),一种为数字滤波器方法。但是由于数字滤波器存在相位延迟,因而,通常使用FFT来计算希尔伯特变换。
对于FFT计算而言,每帧数据点数都是2的n次幂,因此,数据点数都是偶数,这就保证了相量能成对出现。基于FFT的希尔伯特变换分三步:
第一步,对有限偶数个采样点的输入数据进行FFT变换,以便得到信号中包含的正负相量。
第二步,对正方向的相量旋转-90度(乘以虚数单位-j);对负方向的相量旋转90度(乘以虚数单位j)。这相当于交换了信号的实部与虚部。
第三步,准备数据用于快速傅里叶逆变换计算(IFFT),然后进行逆变换到时域。
如图5所示为频率为100Hz,初相应为70度的正弦信号(红色)和它的希尔伯特变换信号(绿色)。我们知道时间移动对应于相位移动,而相位φ与时间t的关系为
取图5相邻的峰值数据点的时间差来计算,应满足以下关系
二者的时间差为2.5ms,代入上式,刚好满足,因此,验证二者的相位差为90度。
图5 正弦信号和它的希尔伯特变换
参考:
1. Jiri Tuma,Vehicle Gearbox Noise and Vibration: Measurement, Signal Analysis, Signal Processing and Noise Reduction Measures. John Wiley & Sons, Ltd, 2014

工程师必备
- 项目客服
- 培训客服
- 平台客服
TOP
