一种基于welch的多频点多带宽识别方法与流程

文档序号:32044228发布日期:2022-11-03 06:25阅读:160来源:国知局
一种基于welch的多频点多带宽识别方法与流程

1.本发明涉及通信技术领域,更具体的说是涉及一种基于welch的多频点多带宽识别方法。


背景技术:

2.中心频率估计和带宽估计主要涉及到雷达、声纳、导航、通信、成像、地质勘探、生物医学工程等诸多军事及民用领域。在这些领域中,接收机在接收带宽内同时接收多个不同的信号,而以上领域中需要对该类信号进行分析,进行特征信号的提取。而在进行特征信号的提取之前,首先要对该类信号进行中心频点和带宽的估计。
3.关于信号的频率估计,频域估计方法包括周期图法、质心法,其中周期图法是基于最大似然估计的方法,将周期图的最高峰值位置作为载波频率的估计,这种方法适用于存在载波分量的情况,载波被抑制时该方法不适用。质心法适用于频谱对称信号,对非对称信号估计效果不好。因此以上方式不适合接收带宽内的对多个信号进行频点带宽计算的场景。
4.常规的带宽估计方法包括均方根法、自相关法、最大熵法和能量集中法等。这几种方法估计出的带宽精度都相对较低,往往不能满足实际应用需求。
5.对于干扰比较大,低信噪比的情况,现有的中心频点带宽的估计方法也比较难识别出来。现有频点带宽的计算基于单一信号的居多,不满足实际情况的处理。而且对于mfsk(多进制数字频率调制)这种多峰值的情况,现有频点带宽的方式将它识别为多频点,与实际不符合。


技术实现要素:

6.针对现有技术中存在的问题,本发明的目的在于提供一种基于welch的多频点多带宽识别方法,实现了低信噪比情况下,信号中心频点和带宽的识别。
7.本发明为实现上述目的,通过以下技术方案实现:一种基于welch的多频点多带宽识别方法,包括如下步骤:步骤1:取长度为n的基带信号进行welch功率谱估计,得到傅立叶变换的点数的功率谱px;步骤2:将功率谱px进行m阶平滑滤波,得到功率谱py;步骤3:将功率谱py倒序进行m阶平滑滤波,得到功率谱pz;步骤4:将功率谱pz进行分段,计算噪声值noise和全带宽阈值fullbwth;步骤5:计算出功率谱pz的最大值max和对应的索引值maxind、3db带宽阈值threebwth,其中threebwth=max/2,判断功率谱pz的最大值max是否小于预设值,若是则转到步骤10,否则转到下一步;步骤6:根据全带宽阈值fullbwth,从索引值maxind向右搜索,得到全带宽右边索引值fullbwr,从索引值maxind向右搜索,得到全带宽左边索引值fullbwl;
步骤7:当fullbwr和fullbwl同时存在时,根据3db带宽阈值threebwth得到3db带宽的右边索引值threebwr和3db带宽的左边索引值threebwl,并求得3db带宽索引差;步骤8:根据预设公式计算中心频点和3db带宽;步骤9:将[fullbwl, fullbwr]区间内的px置为噪声值noise,以进行次峰值信号的中心频点和3db带宽的计算;步骤10:将接收机接收到的基带信号,往后移nfft,并转到步骤1,以进行下一个频谱的计算。
[0008]
进一步,步骤1具体为:将接收机接收到的基带信号,每次取长度的数据进行welch功率谱估计,得到点的功率谱;其中,是傅立叶变换的点数,为welch变换时的分段数,每段数据重合一半,每段的长度都是,段数为。
[0009]
进一步,步骤2具体为:通过下式对功率谱进行阶的平滑滤波,得到功率谱;。
[0010]
进一步,步骤3具体为:通过下式将功率谱倒序进行m阶平滑滤波,得到功率谱;。
[0011]
进一步,步骤4具体为:将平滑后得到的功率谱分为段,每个功率谱求均值,取段中最小均值作为噪声值;通过公式计算全带宽阈值,其中,为频谱信号中心频点和带宽计算的阈值。
[0012]
进一步,所述判断功率谱pz的最大值max是否小于预设值具体为:判断功率谱pz的最大值max是否小于。
[0013]
进一步,步骤6包括:
从索引值maxind位置向右搜索,找到首次低于全带宽阈值fullbwth的索引值的前一个索引值记为全带宽右边索引值fullbwr;从索引值maxind位置向左搜索,找到首次低于全带宽阈值fullbwth的索引值的后一个索引值记为全带宽左边索引值fullbwl。
[0014]
进一步,步骤7包括:如果同时存在fullbwr和fullbwl时计算3db带宽的索引值,从fullbwr到maxind往左搜索,找到首个大于threebwth的索引值,记为threebwr;从fullbwr到maxind往右搜索,找到首个大于threebwth的索引值,记为threebwl;如果fullbwl不存在,则令fullbwl=0,标记为flag=-1;如果fullbwr不存在,则令fullbwr=nfft-1,标记为flag=1;根据公式threebandind=threebwr-threebwl,求得3db带宽索引差threebandind;根据公式deltal= threebwl-fullbwl,求得全带宽3db带宽左边索引差deltal;根据公式deltar= fullbwr
ꢀ‑
threebwr,求得全带宽3db带宽右边索引差deltar;如果deltal/deltar>2,fullbwl= threebwl-deltar;如果deltar /deltal>2,fullbwr= threebwr+deltal。
[0015]
进一步,步骤8包括:判断flag是否为0,若不为0,则转到步骤5;若为0,则根据下列公式计算出中心频点frecenter和3db带宽bandwidth;idth;其中,fs为采样率。
[0016]
进一步,步骤9包括:将全带宽[fullbwl, fullbwr]索引值内的px置为噪声值noise,跳转到步骤5,以进行次峰值信号的中心频点和带宽的计算。
[0017]
对比现有技术,本发明有益效果在于:1、本发明算法简单,易于实现,实现了低信噪比情况下,信号中心频点和带宽的识别。
[0018]
2、本发明可以正确地将mfsk识别出中心频点和它的有效带宽。
[0019]
3、本发明可以识别多频点多带宽的信号的中心频点与带宽。
[0020]
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
[0021]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0022]
附图1是本发明具体实施方式的方法流程图。
[0023]
附图2是本发明具体实施方式的fft频谱图。
[0024]
附图3是本发明具体实施方式的welch平滑频谱图。
[0025]
附图4是图3的3db带宽的点的标识图。
[0026]
附图5是本发明具体实施方式的4fsk识别出的3db带宽的点的标识图。
[0027]
附图6是本发明具体实施方式的多频点多带宽fft频谱图。
[0028]
附图7是本发明具体实施方式的多频点多带宽welch平滑频谱图。
[0029]
附图8是图7的第一频点3db带宽的标识图。
[0030]
附图9是图7的第二频点3db带宽的标识图。
[0031]
附图10是图7的第三频点3db带宽的标识图。
具体实施方式
[0032]
下面结合附图对本发明的具体实施方式做出说明。
[0033]
如图1所示的一种基于welch的多频点多带宽识别方法,包括如下步骤:步骤1:取长度为n的基带信号进行welch功率谱估计,得到傅立叶变换的点数的功率谱px。
[0034]
本步骤具体包括:将接收机接收到的基带信号,每次取长度的数据进行welch功率谱估计,得到点的功率谱;其中,是傅立叶变换的点数,为welch变换时的分段数,每段数据重合一半,每段的长度都是,段数为。
[0035]
相对于直接求得的功率谱,本步骤通过welch变换后得到的信号功率谱是经过加窗,分段,加权得到的功率谱,在功率谱表现上会更加地平滑,可以使信号主瓣宽度更明显。而且,过滤掉一些干扰,使主瓣宽度更加精准。
[0036]
步骤2:将功率谱px进行m阶平滑滤波,得到功率谱py。
[0037]
具体的,通过下式对功率谱进行阶的平滑滤波,得到功率谱。
[0038]

[0039]
步骤3:将功率谱py倒序进行m阶平滑滤波,得到功率谱pz。
[0040]
具体的,通过下式将功率谱倒序进行m阶平滑滤波,得到功率谱。
[0041]

[0042]
步骤4:将功率谱pz进行分段,计算噪声值noise和全带宽阈值fullbwth。
[0043]
首先,将平滑后得到的功率谱分为段,每个功率谱求均值,取段中最小均值作为噪声值。然后,通过公式计算全带宽阈值,其中,为频谱信号中心频点和带宽计算的阈值。
[0044]
步骤5:计算出功率谱pz的最大值max和对应的索引值maxind、3db带宽阈值threebwth,其中threebwth=max/2,判断功率谱pz的最大值max是否小于预设值,若是则转到步骤10,否则转到下一步。
[0045]
其中,判断功率谱pz的最大值max是否小于预设值具体为:判断功率谱pz的最大值max是否小于。
[0046]
步骤6:根据全带宽阈值fullbwth,从索引值maxind向右搜索,得到全带宽右边索引值fullbwr,从索引值maxind向右搜索,得到全带宽左边索引值fullbwl。
[0047]
具体来说,从索引值maxind位置向右搜索,找到首次低于全带宽阈值fullbwth的索引值的前一个索引值记为全带宽右边索引值fullbwr;从索引值maxind位置向左搜索,找到首次低于全带宽阈值fullbwth的索引值的后一个索引值记为全带宽左边索引值fullbwl。
[0048]
步骤7:当fullbwr和fullbwl同时存在时,根据3db带宽阈值threebwth得到3db带宽的右边索引值threebwr和3db带宽的左边索引值threebwl,并求得3db带宽索引差。
[0049]
如果同时存在fullbwr和fullbwl时计算3db带宽的索引值,从fullbwr到maxind往左搜索,找到首个大于threebwth的索引值,记为threebwr;从fullbwr到maxind往右搜索,找到首个大于threebwth的索引值,记为threebwl。如果fullbwl不存在,则令fullbwl=0,标记为flag=-1。如果fullbwr不存在,则令fullbwr=nfft-1,标记为flag=1。
[0050]
在本步骤中,根据公式threebandind=threebwr-threebwl,求得3db带宽索引差threebandind;根据公式deltal= threebwl-fullbwl,求得全带宽3db带宽左边索引差deltal;根据公式deltar= fullbwr
ꢀ‑
threebwr,求得全带宽3db带宽右边索引差deltar。
[0051]
其中,如果deltal/deltar>2,fullbwl= threebwl-deltar;如果deltar /deltal>2,fullbwr= threebwr+deltal。
[0052]
步骤8:根据预设公式计算中心频点和3db带宽。
[0053]
首先,判断flag是否为0,若不为0,则转到步骤5。
[0054]
若为0,则根据下列公式计算出中心频点frecenter和3db带宽bandwidth。
[0055][0055]
其中,fs为采样率。
[0056]
步骤9:将[fullbwl, fullbwr]区间内的px置为噪声值noise,以进行次峰值信号的中心频点和3db带宽的计算。
[0057]
具体的,将全带宽[fullbwl, fullbwr]索引值内的px置为噪声值noise,跳转到步骤5,以进行次峰值信号的中心频点和带宽的计算。
[0058]
步骤10:将接收机接收到的基带信号,往后移nfft,并转到步骤1,以进行下一个频谱的计算。
[0059]
基于上述方法,本发明在实际使用后可以体现出如下优势:图2是一个信噪比为-15db的4fsk的信号直接采用fft方式画的频谱图,在图2中可以看出有用信号已经完全淹没在噪声中了,采用这个频谱图去识别中心频点和带宽是无法识别的。图3是经过本方法的步骤1至步骤3之后画出来的频谱图,可以明显的看出有用带宽和4fsk的四个峰值点,说明经过本方法的处理可以很好地解决低信噪比情况下的中心频点和带宽的识别问题。图4的*点为采用本方法识别出来的3db带宽的位置,根据步骤8可得到相应的中心频点与带宽。
[0060]
本方法尤其适用于mfsk的情况,一般算法很容易将如图5所示的4fsk识别为4个频点,而本方法的特别之处在于步骤6和步骤7所采用的方法,可以正确地将mfsk识别出中心频点和它的有效带宽。图5的*点为该信号采用本发明所识别出来的3db带宽的位置,根据步骤8得到相应的中心频点与带宽。
[0061]
本方法的特别之处是可以识别多频点多带宽的信号的中心频点与带宽,如图6所示,它是2ask、4fsk、16qam三种调制方式组成的多频点多带宽的直接采用fft方式画出的频谱图。在低信噪比的情况下,图6的多频点多带宽的信号主瓣看得不太明显。图7为经过本发方法中的步骤1到步骤3之后画出来的频谱图,可以明显看出多频点多带宽信号的轮廓。图8中*点标记出了最高信号的3db带宽的位置;图9中*点标记出了第二高信号的3db带宽的位置;图10中*点标记出了第三高信号的3db带宽的位置,从图10中存在4个峰值可以看出这应该是4fsk。各信号根据步骤8得到相应的中心频点与带宽。
[0062]
由此可见,本方法实现简单、复杂度低,且对于多种调制方式的频点带宽的识别都是有效的,同样适用于mfsk这种多峰值的情况。
[0063]
结合附图和具体实施例,对本发明作进一步说明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本技术所限定的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1