2阶段音调检测方法和装置的制作方法

文档序号:2819399阅读:480来源:国知局
专利名称:2阶段音调检测方法和装置的制作方法
技术领域
本发明涉及一种音调检测方法和装置,尤其涉及一种通过对外部输入的数字信号连续执行频率分析和自相关而用来减小音调检测结果的误差范围的2阶段(2-phase)音调检测方法和装置。
背景技术
为了根据乐器的音符或人的声音抽取性能信息数据或者为了在音乐会上现场演奏,已经开发出了检测现场演奏的乐器的音符的音调或者人的声音的音调的技术。
通常用来检测音调的方法包括分析演奏音符或声音的数字信号的频率的方法、计算波形的峰值或零交叉周期以便计算重复波的周期的方法、和使用波形自相关的方法。
在频率分析方法中,在高频段的误差与低频段的误差相同。但是,当使用频率分析方法检测乐器产生的声音的音调时,由于在低频段音调间的频率间隔比高频段窄,所以在低频段对误差音调检测失败的可能性提高了。在使用自相关的方法中,由于计算性质的缘故,在高频段误差变大。
在计算峰值或零交叉周期的方法中,由于例如噪音等很难准确计算周期从而导致该方法的结果不准确。

发明内容
为了解决上述问题,本发明的目的是提供一种用于通过对外部输入的数字信号执行频率分析然后根据频率分析的结果在选择的预定时间范围内对数字信号执行自相关从而准确检测音调的2阶段音调检测方法和装置。
为了达到本发明的上述目的,提供了一种2阶段音调检测方法。该方法包括第一步骤,将外部输入的数字信号分析为频率分量并根据频率分量检测第一音调候选者;第二步骤,将第一音调候选者的误差范围与对使用第一音调候选者的误差范围计算的自相关范围执行自相关的结果的误差范围相比较;和第三步骤,当自相关的结果的误差范围小于或等于第一音调候选者的误差范围时,在预定时间范围内对数字信号执行自相关从而检测音调。
也提供了一种2阶段音调检测装置。该装置包括频率分析器,用于将外部输入的数字信号分析为频率分量并根据频率分量检测第一音调候选者;误差范围比较器,用于将第一音调候选者的误差范围与对使用第一音调候选者的误差范围计算的自相关范围执行自相关的结果的误差范围相比较;和自相关计算器,当自相关的结果的误差范围小于或等于第一音调候选者的误差范围时,在预定时间范围内对数字信号执行自相关以便检测第二音调候选者;音调确定器,用于根据第一音调候选者的误差范围和第二音调候选者的误差范围确定音调;和结果输出单元,用于输出由音调确定器确定的音调。


图1是根据本发明的实施例的2阶段音调检测装置的示意方框图。
图2是根据本发明的实施例的2阶段音调检测方法的流程图。
图3A到3D是根据本发明的实施例用来解释2阶段音调检测方法的信号处理图。
具体实施例方式
以下将参考附图详细描述根据本发明的2阶段音调检测方法和装置的实施例。
图1是根据本发明的实施例的2阶段音调检测装置的示意方框图。参考图1,2阶段音调检测装置包括音乐信息输入单元10、音调存在/不存在确定器20、频率分析器30、误差范围比较器40、自相关计算器50、音调确定器60、结果输出单元70。
音乐信息输入单元10将通过话筒输入的模拟信号转换为数字信号或接收通过转换产生的数字信号。
音调存在/不存在确定器20感知通过音乐信息输入单元10接收的信号的强度以便确定音调是否存在。换句话说,当通过音乐信息输入单元10接收的信号的声压电平(sound pressure level)高于考虑到周围环境而预定的噪音的声压电平时,认为输入音乐声音信号。
频率分析器30将通过音调存在/不存在确定器20输入的声音的数字信号分析为频率分量并根据频率分量检测第一音调候选者。使用频率分析检测音调的方法是现有技术并可以以各种方式进行。例如,一方面,在通过分析频率分量值检测峰值位置之后,将峰值之间的间隔检测为音调候选者。另一方面,将多个峰值中最大峰值的位置检测作为音调候选者。同时,为了将数字声音分析为频率分量,通常使用快速傅里叶变换(FFT),但是也可以使用例如小波变换等其它方法。
误差范围比较器40将由频率分析器30检测的第一音调候选者的误差范围R1与对使用误差范围R1计算的自相关范围L1执行自相关的结果的误差范围R2作比较。这里,实时计算或预先计算并分别存储误差范围R1、自相关范围L1和误差范围R2。
当自相关结果的误差范围R2小于或等于第一音调候选者的误差范围R1时,自相关计算器50在预定的时间范围内对数字信号执行自相关以便检测第二音调候选者。这里,预定时间范围是根据由误差范围比较器40计算的自相关范围来确定的。当使用自相关范围L1时,其可能在预定范围内改变。换句话说,自相关范围L1能根据数字信号来源(例如,乐器种类或人的声音)和数字信号的使用而改变。
在确定自相关范围L1后,自相关计算器50对与自相关范围L1相对应的数字信号执行自相关以便检测自相关系数最大处的延迟并使用该延迟检测数字信号的第二音调候选者。
音调确定器60根据第一音调候选者的误差范围R1和第二音调候选者的误差范围R2确定音调。这里,参考由误差范围比较器40执行的比较结果。换句话说,根据由误差范围比较器40执行的比较结果,如果自相关结果的误差范围R2小于或等于第一音调候选者的误差范围R1时,在第二音调候选者的误差范围R2内确定音调。否则,在第一音调候选者的误差范围R1内确定音调。但是,当为了检测第二音调候选者而检测到的延迟具有使用第一音调候选者的误差范围R1计算的自相关范围L1的最大或最小值时,在第一音调候选者的误差范围R1和第二音调候选者的误差范围R2间的交集内确定音调。
结果输出单元70输出由音调确定器60确定的音调。
图2是根据本发明的实施例的2阶段音调检测方法的流程图。将参考图2来描述根据本发明的实施例的2阶段音调检测方法。
如果数字信号在步骤S210从外部输入时,将数字信号的电平与考虑到外部环境而预定的噪音电平作比较。当数字信号的电平高于预定的噪音电平时,考虑输入数字信号,从而在步骤S220对输入的数字信号进行频率分析以便检测第一音调候选者。利用现有技术使用频率分析检测音调候选者并执行频率转换,这些技术在对频率分析器30的描述中进行了解释。这里将省略其详细的描述。
在使用频率分析检测第一音调候选者后,在步骤S230计算第一音调候选者的误差范围R1。接下来,在步骤S240使用误差范围R1计算自相关范围(即延迟范围)L1。接下来,在步骤S250计算对自相关范围L1执行自相关的结果的误差范围R2。预先计算误差范围R1、自相关范围L1和误差范围R2以便进行操作。这种情况下,省略步骤S230到S250。
在步骤S260将第一音调候选者的误差范围R1与自相关结果的误差范围R2相比较。如果误差范围R2小于或等于误差范围R1,在根据自相关范围L1确定的时间范围内对数字信号执行自相关以便在步骤S270检测第二音调候选者。此后,在步骤S280,在第一音调候选者的误差范围R1和第二音调候选者的误差范围R2间的交集内检测音调。如果误差范围R2大于误差范围R1,在步骤S290将使用频率分析检测的第一音调候选者确定为音调。
一般来讲,不必分别计算第一音调候选者的误差范围R1和第二音调候选者的误差范围R2间的交集。但是,如果被用来检测第二音调候选者的延迟具有在步骤S240计算的自相关范围(延迟范围)L1的最大或最小值,那么分别计算误差范围R1和第二音调候选者的误差范围R2间的交集。
以下,将参考公式来描述根据本发明的实施例在采样速率是22,050Hz和FFT的窗尺寸是1024的条件下检测音调的过程。
首先,当在上述条件下执行频率分析时,将根据用于FFT的频率仓(frequency bin)(以下称作FFT指数)检测频率的方法定义为公式(1)。这里,根据FFT的窗尺寸(以下称作FFT窗尺寸)来确定FFT指数。当FFT窗尺寸是1024,在1到1024的范围内确定FFT指数。
这里,实际频率范围FR根据公式(2)来确定。
因此,作为在钢琴上调音对音符C3执行FFT分析的结果,当对于基频峰值FFT指数是7时,如果将FFT指数7和上述条件应用到公式(1)和(2),分别由公式(3)和(4)计算对于FFT指数7即7阶频率仓的频率转换结果和实际频率范围。
即,公式(3)对应频率转换结果的计算,和公式(4)对应频率转换结果误差范围的计算。
FFT(F)=220501024×7+(7-1)2]]>=220501024×6.5]]>=139.96(Hz)---(3)]]>FRFFT=220501024×(7-1)~220501024×7]]>=129.19~150.73---(4)]]>因此,作为在上述条件下对数字信号执行FFT的结果,第一音调候选者是139.96Hz(129.19~150.73),而基于频率范围FRFFT的第一音调候选者的误差范围R1是21.53Hz(150.73-129.19)。
使用误差范围R1根据公式(5)可以计算自相关范围L1。
这里,频率范围FRFFT的最大频率是150.73Hz,而频率范围FRFFT的最小频率是129.19Hz。因此,当将这些值应用到公式(5)时,如公式(6)所示计算自相关范围L1。
L1=22050150.73~22050129.19]]>=146.29~170.67---(6)]]>=147~171]]>换句话说,自相关范围L1是147~171。
同时,自相关结果的误差范围R2随延迟而发生改变。根据方程(7)计算使用自相关检测的频率范围FRCOR。
因此,在与自相关范围相对应的延迟147到171中最低延迟处频率范围最大。当延迟是147时,如公式(8)所示计算频率范围FRCOR。
FRCOR=22050147-0.5~22050147+0.5]]>=150.51~149.49---(8)]]>因此,当在上述条件下延迟是147到171时,对数字信号执行自相关结果具有最大误差的频率范围FRCOR是(150.51~149.49)Hz,而根据频率范围FRCOR的自相关结果的误差范围R2是1.02Hz(150.51-149.49)。
换句话说,自相关结果的误差范围R2(1.02Hz)小于频率转换结果的误差范围R1(21.53Hz)。因此,这种情况下,使用自相关检测音调。
当自相关结果的误差范围R2大于频率转换结果的误差范围R1时,将频率转换的结果确定为音调而不执行自相关。换句话说,在频率转换结果的误差范围R1内确定音调频率。
无论何时对应新声音的输入需要音调检查,都可以实时计算或可以根据预定采样频率和FFT窗大小计算用在上述描述中的值并预先存储在特定存储单元中。
图3A到3D是根据本发明的实施例用于解释2阶段音调检测方法的信号处理图。
图3A表示外部输入的波形。图3B表示对图3A所示的波形执行自相关的结果。图3C表示对图3A所示的波形执行频率分析的结果。图3D表示在根据对图3A所示的波形执行频率分析的结果确定的自相关范围内自相关的结果。
图3B表示对图3A所示的外部输入波形执行自相关的全部结果。参考图3B,尽管在延迟时间100~200范围内的最大峰值是实际音调,但是在延迟时间0~100或300~400范围内在最大峰值处错误地检测到音调。
图3C表示对外部输入的波形执行频率分析的结果。参考图3C,尽管第二峰值是实际音调,但是如果选择最大频率峰值,将第四峰值即实际音调的第二谐波频率错误地检测为音调。然而,使用频率分析检测音调的方法已是公知技术并能以各种方式执行。因此,在该例中我们假设正确地检测第二峰值。
图3D表示对自相关范围即根据本发明的实施例频率分析的结果确定的延迟时间执行自相关的结果。这里,能检测准确的音调。
参考图3C到3D,在钢琴上C3调的情况下,最大FFT指数是7,而在延迟171处自相关值最大。当将延迟171代入公式(7)时,频率范围是128.57~129.32Hz。同时,根据公式(3),根据在钢琴上对C3调执行FFT的结果的频率范围是129.19~150.73Hz。因此,当得到FFT的结果的频率范围和自相关结果的频率范围间的交集时,在129.19~129.32Hz范围内检测音调。
这里,因为在自相关期间涉及的延迟是延迟范围147~171的最大值,所以得到FFT的结果的频率范围和自相关结果的频率范围间的交集。
在上述情况下,当考虑在MIDI调C3的基频是130.8Hz时,将钢琴调整得较低。由于在调整钢琴时的误差,通常钢琴调子的基频与MIDI调子的基频有些不同。因此,本发明使准确的音调检测成为可能。
上述描述仅涉及本发明的实施例。本发明不局限于上述实施例,在相关权利要求所定义的范围内可以作各种改变。例如,可以改变在实施例中指定的每一元件的形状和结构。
工业实用性根据本发明,在对外部输入的数字信号执行频率分析后,在根据频率分析的结果选择的时间范围内选择性地对数字信号执行自相关,从而解决在低频段检测音调具有大的误差范围的频率分析的问题和在高频段检测音调具有大的误差的自相关的问题。因此,本发明达到了检测准确音调的效果。
此外,代替对采样尺寸的全部数字信号计算自相关系数和在自相关期间比较自相关系数,对根据频率分析的结果选择的时间范围内的数字信号计算和比较自相关系数。因此,能减少用来计算自相关系数和获得最大自相关系数的时间。
权利要求
1.一种2阶段音调检测方法,包括第一步骤,将外部输入的数字信号分析为频率分量并根据频率分量检测第一音调候选者;第二步骤,将第一音调候选者的误差范围与对使用第一音调候选者的误差范围计算的自相关范围执行自相关的结果的误差范围相比较;和第三步骤,当自相关的结果的误差范围小于或等于第一音调候选者的误差范围时,在预定时间范围内对数字信号执行自相关从而检测音调。
2.根据权利要求1所述的2阶段音调检测方法,其中第二步骤包括下述步骤(2-1)计算第一音调候选者的误差范围;(2-2)使用第一音调候选者的误差范围计算对于数字信号的自相关范围;(2-3)计算在自相关范围上执行自相关的结果的误差范围;(2-4)将第一音调候选者的误差范围与自相关的结果的误差范围相比较。
3.根据权利要求1或2所述的2阶段音调检测方法,其中,在第二步骤中,根据预先计算并分别存储的信息检测第一音调候选者的误差范围、自相关范围和自相关结果的误差范围。
4.根据权利要求1所述的2阶段音调检测方法,其中第三步骤包括下述步骤(3-1)在根据第二步骤中计算的自相关范围确定的预定时间范围内对数字信号执行自相关;(3-2)根据执行自相关的结果检测在自相关系数最大处的延迟;和(3-3)使用该延迟检测数字信号的第二音调候选者并根据该第二音调候选者检测音调。
5.根据权利要求4所述的2阶段音调检测方法,其中,步骤(3-1)包括改变用于在预定范围内的数字信号的自相关的时间范围。
6.根据权利要求4所述的2阶段音调检测方法,其中,步骤(3-3)包括当在步骤(3-2)中检测的延迟是在第二步中计算的自相关范围的最大或最小值时,在第二音调候选者的误差范围和第一音调候选者的误差范围间的交集内确定音调;和当在步骤(3-2)中检测的延迟不是在第二步中计算的自相关范围的最大或最小值时,在第二音调候选者的误差范围内确定音调。
7.根据权利要求1、4、5和6中任一权利要求所述的2阶段音调检测方法,其中,在第三步骤,当自相关的结果的误差范围大于第一音调候选者的误差范围时,在第一音调候选者的误差范围内确定音调。
8.一种2阶段音调检测装置,包括频率分析器,将外部输入的数字信号分析为频率分量并根据频率分量检测第一音调候选者;误差范围比较器,将第一音调候选者的误差范围与对使用第一音调候选者的误差范围计算的自相关范围执行自相关的结果的误差范围相比较;和自相关计算器,当自相关的结果的误差范围小于或等于第一音调候选者的误差范围时,在预定时间范围内对数字信号执行自相关以便检测第二音调候选者;音调确定器,用于根据第一音调候选者的误差范围和第二音调候选者的误差范围确定音调;和结果输出单元,用于输出由音调确定器确定的音调。
9.根据权利要求8所述的2阶段音调检测装置,其中,误差范围比较器根据预先计算并分别存储的信息检测第一音调候选者的误差范围、自相关范围和自相关结果的误差范围。
10.根据权利要求8所述的2阶段音调检测装置,其中,自相关计算器在根据由误差范围比较器计算的自相关范围确定的预定时间范围内对数字信号执行自相关;以便检测在自相关系数最大处的延迟;和使用该延迟检测数字信号的第二音调候选者。
11.根据权利要求10所述的2阶段音调检测装置,其中,自相关计算器在预定范围内改变用于数字信号的自相关范围。
12.根据权利要求8所述的2阶段音调检测装置,其中音调确定器根据由误差范围比较器执行的比较结果,当自相关的结果的误差范围小于或等于第一音调候选者的误差范围时,根据第一和第二音调候选者确定音调;和根据由误差范围比较器执行的比较结果,当自相关的结果的误差范围大于第一音调候选者的误差范围时,在第一音调候选者的误差范围内确定音调。
13.根据权利要求8、10和12中任一权利要求所述的2阶段音调检测装置,其中音调确定器当在自相关最大处的延迟是由误差范围比较器计算的自相关范围的最大或最小值时,在第二音调候选者的误差范围和第一音调候选者的误差范围间的交集内确定音调;和当该延迟不是自相关范围的最大或最小值时,在第二音调候选者的误差范围内确定音调。
全文摘要
一种音调检测方法和装置。音调检测方法包括将外部输入的数字信号分析为频率分量并根据频率分量检测音调候选者;将第一音调候选者的误差范围与对使用第一音调候选者的误差范围计算的自相关范围执行自相关的结果的误差范围相比较,当自相关的结果的误差范围小于或等于第一音调候选者的误差范围时,在预定时间范围内对数字信号执行自相关从而检测音调;并将在使用频率分析得到的频率范围和自相关值最大的频率范围间的交集内的音调确定为最终的音调。因此,通过对外部输入的数字信号连续执行频率分析和自相关而用来减小音调检测结果的误差范围。
文档编号G10L25/90GK1552058SQ02817224
公开日2004年12月1日 申请日期2002年7月26日 优先权日2001年7月27日
发明者郑道日, 徐宪瑞 申请人:娱乐技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1