信号瞬时频率估计方法的研究:
在信号处理中,信号本身有很多重要的属性,频率特性有:带宽、各频率分量的相对幅值、频率分量间的相对相位关系等;时域特性有信号时宽等。
在很多时候,对信号的处理都涉及到需要对平稳或者非平稳信号的频率特性进行估计。
平稳信号的频率特性是时不变的,而非平稳信号的频率特性往往是时变的,因此,瞬时频率的定义主要是针对非平稳信号而提出的。
Ville 给出了一种统一的瞬时频率的定义:
1()[arg ()]
2i d f t z t dt
π=
其中,z(t)是实信号()cos(())s t A t φ=的解析信号。
瞬时频率估计的方法可以分为时频分析和时域分析两类。
就平稳信号而言,由于其功率谱密度函数是不随时间变化的,因此可以直接用参数化或者非参数化谱估计的方法来得到其功率谱,将功率谱中峰值所对应的频率值作为组成该平稳信号的各频率分量的频率的估计值。
但是,对于非平稳信号而言,由于其功率谱密度函数是时变的,因此如果要在频域估计其瞬时频率,最简单的方法就是先将其视为短时平稳的信号,每次都用足够短的时间内的数据来构建其功率谱密度函数,将估计得到的结果作为该短时间内的信号瞬时频率,这也就是时频分析中的短时傅立叶变换方法。
当然,时频分析还有诸如小波变换等其他的性能更好的变换方法这里不再展开叙述。
下图是用短时傅立叶变换得到的一个非线性调频信号的时频分布图:
时域处理方法则主要是根据信号瞬时频率的定义,先将实信号变换为复信号,再通过对复信号的相位进行求导(模拟)或者差分(数字)的方法来求得瞬时频率。
时频分析处理的好处是对于有多个频率分量的信号可以根据功率谱密度函数的各个峰值点估计出对应分量的瞬时频率。
而基于相位求导或者差分的时域处理方法却是无法对多频率分量的信号进行瞬时频率估计的。
针对这一问题,HUANG. N. E 提出了局域波分解方法,首先将复杂的信号分解成有限个基本模式分量,再对这些基本模式进行相位求导或者差分以估计各分量的瞬时频率。
通过局域波分解的方法可以很好的解决相位求导或差分方法的缺陷。
时域处理的好处是计算量远小于时频分析处理。
这里主要讨论时域的处理。
而要进行时域处理,则通常要首先将物理上的实信号变换为复信号以便取其相位。
现有的两种的方法分别是正交变换和hilbert变换。
正交变换可以用模拟信号处理的方法实现,也可以用数字信号处理的方法实现。
正交变换的实质就是用两个正交的本振进行同相和正交两路下变频混频,由这两路下变频的输出组成实信号包络的零中频复基带信号的实部和虚部。
模拟信号处理由于模拟电路的固有缺点(如本振频率不稳定、本振间不正交和IQ 两路通道不均衡等)将会导致输出的两路正交信号会存在相位正交性误差和幅度一致性误差。
而数字信号处理的方法则可以避免这些问题。
因此,现在通常用数字正交处理的方法来实现正交变换。
当然,数字正交处理由于滤波器处理速度的原因,其前置预滤波器和后置低通滤波器通常需要诸如多相滤波等特别设计以满足要求。
而hilbert 变换则是直接在载频上将实信号变换为复信号。
hilbert 变换的得到的复信号也叫解析信号。
Hilbert 变换可以用时域的方法实现,也可以用频域的方法实现。
在频域方法中:先对输入的一段数据进行FFT 变换,再进行如下运算:
()()()Y X G U G Ω=ΩΩ
2,0()1,0,0,2U π
π
ππ<Ω<⎧⎪
Ω=Ω=⎨⎪<Ω<⎩
之后再运行IFFT 运算即可得到实信号的解析信号。
这种在频域实现hilbert 变换的方法,其计算量相比时域冲激响应的方法要大很多的。
因此只适用于短数据的情况。
时域的方法在理论上,只要将一个实信号()s t 通过一个冲激响应
为:
1
()h t t
π=
的hilbert 滤波器就可以求出实信号()s t 的正交分量()s t ∧。
但是在实际中,hilbert 变换通常是在数字域实现的。
因此,需要设计一个数字滤波器,使得其输出为数字信号()s n 的正交分量()s n ∧。
这样的数字滤波器的冲激响应是:
2sin(/2)
,0()0,0n n h n n
n ππ⎧≠⎪
=⎨⎪=⎩
这是一个非因果IIR 滤波器。
在实现的时候,考虑在实时要求不高的情况下,数据输出可以有一定的延迟,且()h n 的绝对值随 n 增大而减小,因此可以在()h n 足够小的时候将其截断。
从而构成一个非因果FIR 滤波器。
但是,对于很短的一段非平稳信号数据而言,hilbert 变换会存在的端点效应,尤其在用频域的方法实现hilbert 变换时,这种端点效应会变得非常严重。
即在hilbert 变换得到的数据段的两端会存在I 、Q 不均衡现象。
针对这一问题,有人提出通过对原数据序列进行数据延拓的方法,以期在有用的数据段内避免端点效应的出现。
至于如何对数据进行有效地延拓,人们也提出了很多的方法: HUANG. N. E 在提出局域波分解法时也提出了一种有效的数据延拓方法,并在美国申请了专利;另外也有人用神经网络的方法来进行数据延拓。
实际上,基带复信号只是解析信号的频移形式而已,两者反映的基本信息是相同的,但是在工程上多用的是正交变换的方法来建立复信号。
在将实信号变换为复信号之后,就可以提取其瞬时相位进行瞬时
频率估计了。
其处理的流程如下:
其中,在进行反正切运算求复信号相位的时候,由于反正切运算的值域是2
π
-
到2
π
,而信号的真实相位是连续变化的,这样有时由反
正切得到的两个相邻采样点的相位值会从靠近2
π
的值直接跳变为靠
近2
π
-
的值。
如果用这两个相位值来进行中心相位差分求瞬时频率就
势必会出现错误,因此,如果使用这样的处理方式就还需要其他的辅助判断手续来解决这一问题。
我们知道,两个复数相除等于其模值相除、相位相减。
那么就可以用两个相邻的复信号相除的办法来求其相位差,即:
(()(2))
()|()|()(
)(1)
|(2)|
j n n z n z n c n e
z n z n ϕϕ--=
=--
由于相邻采样点的真实相位值是连续变化的,因此,这样得到的相位差就可以避免由于求反正切之后出现的相邻采样点的相位从2
π
跳变为2
π
-
而导致相位差分出错的问题。
如果仅从使得两个复信号的相位相减的角度来看,用相邻两个复信号相除的方法与用后一复信号乘以前一复信号的共轭的方法是等效的。
即:
,*(()(2))
=-=-
()()(2)|()||(2)|j n n
c n z n z n z n z n eϕϕ--
因此实际中可以采用以下的处理流程:
假设输入正交变换的信号是目标信号加上高斯白噪声。
由于噪声的存在,使得正交变换得到的复信号的相位与真实值之间存在一个随机误差,这种误差经相位差分放大之后,以噪声的形式反映在最后的瞬时频率估计值上。
假设输入的实信号为一线性调频信号,最后输出
的瞬时频率估计值如图:
那么,现在以各框图的输出为信号,对各信号进行FFT变换以
分析各处理步骤对信号及噪声的影响。
假设输入的实信号为一线性调频信号
由各信号的频谱可见:通频带以外的噪声功率已经被正交变换的前置带通预滤波和低通后滤波抑制得很低了,但是,在通频带以内的噪声并没有受到什么损失,因此,可以将通频带内的噪声仍视为白噪声。
由于在求瞬时频率估计值的处理块中包含着一个差分运算,而随机过程通过一个微分运算之后其功率谱会发生如下变化:
2
()()X X
G G ωωω=
也就是说,即使在前面的处理中已经将噪声功率抑制的很低,但是,经过微分运算之后整个采样频带内的噪声功率会再一次上升。
这与前面仿真的结果是一致的。
相对于采样频率而言,最后输出的瞬时频率估计值是缓变的,也
就是说是低频的。
因此,可以用低通滤波的方法将绝大部分采样频带内的噪声抑制下去,从而减小噪声对最后输出的瞬时频率估计值的影响。
最后低通滤波之后的结果为:
可见,低通滤波的确可以将噪声对最后的瞬时频率估计值的影响减小到最小。
那么,整个的处理流程应当如下:
其中的正交变换也可以换成hilbert 变换,效果是相同的。