文献[5]提出的 JACOBSEN 算法利用 DFT 频谱中最大的 3 根谱线校正第一步中的频率粗估计值。通过仿真实验,我们看到在噪声较大时,该算法能够得到较好的估计结果,但是估计的精度仍然不高。为了提高频率估计的精度,文献[6]提出了CANDAN算法,它对JACOBSEN算法进行了修正与优化,从而使得估计精度有了明显提高。文献[7]提出了一种傅里叶系数插值迭代算法, 通过两次迭代实现在低信噪比时估计的精度都较高,该算法的优点在于当信号的信噪比较高时,其频率估计的性能优于CANDAN算法;但由于该算法每次迭代需计算两点的DFT系数,导致了运算量的增大。文献[8]通过对信号进行2N 点的 DFT 变换,使更多的谱线处于信号频谱的主瓣内,并且通过最大值附近的两条谱线进行频率估计。仿真发现在频率偏差较小的情况下,估计方差较为精确;但该方法的缺点是当信号频率偏差较大时,频率估计精度较低。针对上述方法各自的特点,本文提出了一种改进的频率估计算法。其主要思想是在粗估计阶段,借助于CANDAN算法估计出真实频率与粗估计值(即 DFT 变换谱峰最大值所对应的位置)间的偏差,然后去除输入信号中的偏差得到修正信号,从而使得修正后的信号频率偏差较小。这样正好使得2N点DFT算法可以避免在频偏较大时估计不精准的缺点。于是,我们在在精估计阶段,利用2N点DFT算法估计剩余频率偏差。通过上述思路的改进,本算法既利用了CANDAN算法高精确的频率估计性能,又克服了2N点DFT算法在信号频率偏差较大时的缺陷,使得改进算法对于任何频率的信号,期频率估计都较为精准。
本文组织结构如下:第2章介绍了CANDAN算法的公式推导的具体过程,并且分析了他的优缺点。同样的,第3章详细描述了2N点DFT算法的公式推导的具体过程,分析了他的优缺点。第4章在第2章和第3章的基础上详细论述了改进的频率估计算法,介绍了改进算法的灵感由来,列出了公式推导的详细步骤,说明了改进算法的优越性。第5章简单列出了其他的频率估计算法,只是作于展示,并没有做进一步探讨。第6章对于提出的改进算法用MATLAB进行了性能仿真并做了简单分析。第7章列举了两种对于改进算法的进一步思考,并且通过MATLAB仿真对这两种想法的可能性进行了验证。
2 CANDAN频率估计算法
众所周知,在白噪声和高斯噪声下,单一复指数波形的最大频率估计可能值,即是所得信号的离散时间傅立叶变换(DTFT)的峰值位置。由于连续区间[0,2]上的DTFT计算很难完成,CANDAN转而对DTFT样本进行离散傅立叶变换(DFT)计算。通常N点DFT用来计算数据长度为N的样本,得到的频率估计的分辨率为2/N。
许多应用中,即便不得不增加额外计算,人们也希望能提高频率估计的分辨率。正如文献[14]中写到的,实施两阶段搜索可以改进频率估计。首先用N点DFT进行粗略搜索,然后在其确定的峰值附近进行精确搜索。值得注意的是,两阶段搜索的分辨率受到精确搜索所使用的格点间距的限制。
文献[2][3][4][15]中提出了一个第二阶段的替代方法。高分辨率估计不再通过格点搜索进行,而是借由已经过第一阶段计算的DFT样本进行。文献[2][3][4]中提到的方法使用了三个DFT样本,Provencher法则只是用了两个样本[15]。与格点搜索相比,这些方法只需要少量的操作,并且得到的频率估计值是实值,而不仅是离散的格点。
在文献[5]中,JACOBSEN为DFT域的高分辨率估计提出了一个简单关系式。这一假设基于经验观察,在文中并未得到证明。而CANDAN对JACOBSEN的公式进行了推导和偏差修正。修正式适用于高SNR值的情况,却几乎不需要任何额外计算,因此无论SNR值为多少该式均适用。 改进的DFT正弦信号频率估计(2):http://www.youerw.com/tongxin/lunwen_18897.html