发明内容
为了解决上述问题,本发明提供一种高精度的频率估计系统。
为实现上述发明目的,本发明所采用的技术方案是:
本发明是一种高精度的频率估计系统,所述频率估计系统由信号采集模块,信号处理模块,信号显示和存储模块,配置模块四个部分组成。
信号采集模块:主要实现单音信号的采集,支持模拟信号输入采集和数字信号输入采集两种模式,将采集的数据传送给信号处理模块进行频率估计;
信号处理模块:读取信号采集模块传送的数据,根据配置模块配置的信息进行输入信号的频率估计,首先将输入数字信号利用参考频率进行
和
两个正交分量处理,并对正交分量
和
进行低通滤波,然后求其一周期相位差;多次测量求其相位差的均值,进而高精度的估计输入单音频率,并将估计的结果输出到显示和存储模块;
信号显示和存储模块:用于存储和显示信号处理模块输出的频率估计结果;
配置模块:主要包括参考频率设置和特定功能配置的功能。
优选的,所述采集数据的输入,输入接口包括模拟输入接口和数字输入接口两种模式,模拟输入接口接收来自线路上或麦克风的单音信号,经AD转换后转化为数字信号;数字接口可直接接收数字线路上的数字信号,两种模式的输入通过多路选择开关MUX进行功能选择,通过IO接口输送给处理器。
优选的,所述频率估计系统的处理步骤为,处理器在系统开始工作时首先读取存储器中存储的配置信息,然后进入相应的信号处理模块对输入的数字信号进行高精度频率估计,处理器可以通过显示接口输出频率估计结果,可以通过存储接口输送到存储器。
优选的,所述配置模块中,采用参考频率设置时,系统根据设置的参考频率进行高精度频率估计;采用特定功能配置时,系统将主要对特定功能所要求的频率进行估计,其方法是对于输入样本将该组所有频率依次用做参考频率
,计算输入单音与参考频率之差
,选输入单音与参考频率最小的
估计输入单音频率。
相对于现有技术,本发明的高精度的频率估计系统,具有以下有益的技术效果:
1.本发明的高精度频率估计方法,理论上可以达到任意精度。
2.采用数字方式频率估计方法,需要较小的时间复杂度和空间复杂度。
3.与幅度无关的单音信号频率估计方法,幅度变化不会影响频率估计的精度。
4.支持两种频率估计模式,包括单频率估计方式和特定功能频率估计模式(多频率同时进行估计模式);
5.支持模拟输入和数字输入两种信号输入。
具体实施方式
以下结合附图详细描述本发明的高精度的频率估计系统的体系结构,但不构成对本发明的限制。
1.高精度的频率估计方法理论基础
假设输入的单音信号频率为
,相位为
,幅值为
,则输入单音信号
可以表示为公式1。对
乘以互为正交的2个谐波信号得到
和
两个正交分量(见公式2和公式3),其中
为进行频率估计的参考频率,一般选取被测单音信号的理想频率。对
和
进行积化和差转换,得到公式4、5、6,其中
为输入单音与参考频率之差。对
和
正交分量进行低通滤波处理,滤除高频分量后,其输出信号
和
如公式7、8所示。取
,其中
是采样周期,则低通滤波器输出的正交分量信号表示为
和
,即第n个采样时刻的低通滤波器输出的正交分量,表示为公式9、10。由
和
表达式可知,第n个采样时刻低通滤波器输出信号的相位
可以表示为公式11,由公式9和10推出
可以表示为公式12。根据公式11、12,可以计算相差一个周期T时间的滤波器相位差
,表示为公式13、14。在实际应用中采用多次测量求平均值(数学期望)减少误差的方法,利用公式14和公式15计算出
。联立公式13和15,可以估计出输入频率
和参考频率
之间的频率差
(见公式16),进而通过公式17估计输入单音信号频率
。
由公式1~17可知,单音信号频率
的估计精度取决于
的精度,即取决于
,而
取决于低通滤波器输出信号的相位
的精度。由公式12可知,低通滤波器输出信号的相位
的精度取决于反正切函数的精度,理论上精度可以达到任意希望精度。
在实际应用过程中,采用数字信号进行单音信号频率估计,与FFT相比在空间复杂度和时间复杂度上具有以下优势。
1)精度
采用FFT方法,其频率精度为
(
为采样频率,
为采样点数),当
取8000Hz时,频率分辨率要达到约1Hz,需要
=8192,这将大大增加系统的时间复杂度和空间复杂度,降低实时性,而且1Hz的精度并不高。
选用公式1~17的方法,理论上可以达到任意高的精度,且对时间复杂度和空间复杂度影响不大。
2)空间复杂度
采用FFT进行频率估计,需要存储一定数量的输入信号样本。由于其估计精度为
,存储的输入信号样本越多其估计精度越高。
而采用公式1~17所述方法,仅需要存储若干个间隔为T时间的样本,即可以实现频率估计,空间复杂度远远小于FFT方法。
3)时间复杂度
采用
点的FFT方法,理论上需要
个复数加运算和
复数乘运算,为了提高频率分辨率,增大N,将同时增加时间复杂度。
采用公式1~17所述方法,如果选择N阶低通滤波器,其时间复杂度基本在100个乘加运算以内,远远小于FFT方法。
(13)
(14)
(15)
2.一种高精度的频率估计方法系统设计方案
为实现高精度的频率估计,采用如图1所示的系统设计方案。整个系统主要由信号采集模块,信号处理模块,信号显示和存储模块,配置模块四个部分组成。
1)信号采集模块
主要实现单音信号的采集,支持模拟信号输入采集和数字信号输入采集两种模式,将采集的数据传送给信号处理模块进行频率估计。
2)信号处理模块
信号处理模块读取信号采集模块传送的数据,根据配置模块配置的信息按公式(1~17)的方式进行输入信号的频率估计,首先将输入数字信号利用参考频率进行
和
两个正交分量(见公式2和公式3)处理,并对正交分量
和
进行低通滤波,然后求其一周期相位差。多次测量求其相位差的均值,进而高精度的估计输入单音频率,实现高精度的频率估计,并将估计的结果输出到显示和存储模块。
3)信号显示和存储模块
信号显示和存储模块用于存储和显示信号处理模块输出的频率估计结果,根据应用领域不同,该显示和存储模块可以使用不同的形式。
4)配置模块
配置模块主要是对系统功能进行配置工作,主要包括参考频率设置和特定功能配置。采用参考频率设置时,系统根据设置的参考频率进行高精度频率估计。采用特定功能配置等功能时,系统将主要对特定功能所要求的频率进行估计,其方法是对于输入样本将该组所有频率依次用做参考频率
,计算各自的
,选最小
估计输入单音频率。用户可以根据自己的需求进行特定功能配置。
3.一种高精度的频率估计系统硬件设计方案
根据高精度频率估计系统设计方案,采用图2所示的硬件设计方案。输入接口主要包括模拟输入接口和数字输入接口两种模式,其中模拟输入接口接收来自线路上或麦克风的单音信号,经AD转化为数字信号,数字接口可以直接接收数字线路上的数字信号,两种输入模式可以通过多路选择开关MUX进行功能选择,通过IO接口输送给处理器。处理器在系统开始工作时首先读取存储器中存储的配置信息,然后进入信号处理模块对输入的数字信号进行高精度频率估计,处理器可以通过显示接口输出频率估计结果,可以通过存储接口存储估计结果到存储器。用户可以通过键盘和触摸屏进行高精度频率估计系统配置,配置信息存储于系统的存储器中。
4.一种高精度频率估计系统的软件设计方案
系统启动后,软件根据用户输入决定系统进入相应的处理模块。当用户选择进入配置模式时,用户可以选择“单频率估计模式”和“特定功能配置模式”两种模式。当用户选择“单频率估计模式”时,用户输入参考频率或者从特定功能模式下存储的频率中选择参考频率(例如在钢琴键音中选择一个调音目标音,例如中央“dou”,用户可以不知道该目标频率的确切值,系统自动提取对应的频率作为参考频率),并存储参考频率到系统中。当用户选择“特定功能配置模式”时,用户输入一组参考频率和对应标识信息(如钢琴按键音与其频率)并存储于系统配置信息中,用户可以根据实际应用配置多组特定功能,每次开始频率估计时仅有一种特定功能起作用。当开始频率估计时,如果是“单频率估计模式”,将以用户输入的参考频率进行高精度频率估计。如果是“特定功能频率估计模式”,将以该特定功能所配置一组频率分别作为参考频率对输入信号进行频率估计,根据配置的阈值信息输出频率估计信息。其方法是对于输入单音将该组所有频率依次用做参考频率
,计算各自的
,选最小
估计输入单音频率。用户可以根据需要终止频率估计。
上述实施例只是为了说明本发明的技术构思及特点,其目的是在于让本领域内的普通技术人员能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡是根据本发明内容的实质所作出的等效的变化或修饰,都应涵盖在本发明的保护范围内。