基于自相关函数的钢琴乐音改进识别算法
基于YIN算法的乐器单旋律音高的提取

第38卷第5期2020年10月沈阳师范大学学报(自然科学版)J o u r n a l o f S h e n y a n g N o r m a lU n i v e r s i t y(N a t u r a l S c i e n c eE d i t i o n)V o l.38N o.5O c t.202文章编号:16735862(2020)05043805基于Y I N算法的乐器单旋律音高的提取张岩,王伟(沈阳师范大学计算机与数学基础教学部,沈阳110034)摘要:乐器单旋律是乐音信号的重要特征,音高是旋律的最重要因素,由发音体的基本频率决定㊂音频信号的时域分析具有简单快捷的特点,可以实时辅助作曲创作㊁音准分析和校正等㊂通过对Y I N算法的分析,提出利用Y I N算法确定分析帧的长度㊂对比自相关函数算法的三电平中心削波在Y I N算法应用的效果,指出三电平中心削波不利于Y I N算法的效率㊂对于时移非常小的Y I N算法近零点的影响,采取累积平均归一化处理,消除其对基频近零点的干扰㊂在M a t l a b环境中,实现以分析帧为单位的音高提取㊂根据十二平均律,计算各个音级和音分的标准频率比,以小提琴无伴奏WA V文件的200分析帧为样本,对于提取基频和标准基频的偏差,提出基频的修正方法㊂关键词:音高;Y I N;自相关函数;三电平中心削波;十二平均律中图分类号:T P311文献标志码:Ad o i:10.3969/j.i s s n.16735862.2020.05.010P i t c h e x t r a c t i o no f s i n g l em e l o d y b a s e do nY I Na l g o r i t h mZ HA N GY a n,WA N G W e i(C o m p u t e ra n dB a s i c M a t h e m a t i c sE d u c a t i o n D e p a r t m e n t,S h e n y a n g N o r m a lU n i v e r s i t y,S h e n y a n g110034,C h i n a)A b s t r a c t:S i n g l em e l o d y i sa n i m p o r t a n t f e a t u r eo fm u s i c a l s i g n a l,P i t c hi s t h e m o s t i m p o r t a n tf a c t o r o fm e l o d y.I t i s d e t e r m i n e db y t h e b a s i c f r e q u e n c y o f t h e s o u n db o d s.T i m e d o m a i n a n a l y s i so f a u d i o s i g n a l i ss i m p l ea n df a s t.I t c a na s s i s t c o m p o s i t i o n,i n t o n a t i o na n a l y s i sa n dc o r r e c t i o n i nr e a l t i m e.B a s e do n t h e a n a l y s i s o fY i n a l g o r i t h m,i t i s p r o p o s e d t ou s eY i n a l g o r i t h mt od e t e r m i n et h e l e n g t ho f a n a l y s i s f r a m e.C o m p a r e dt h ee f f e c to f t h r e e-l e v e l c e n t e rc l i p p i n g o f a u t o c o r r e l a t i o nf u n c t i o na lg o r i th mi n Y i n a l g o r i t h m,i ti s p o i n t e d o u tt h a tt h r e e-l e v e lc e n t e rc l i p p i n g i s n o tc o nd u c i ve t o t h e ef f i c i e n c y o fY i na lg o r i th m.F o r t h ei n f l u e n c eo f n e a r z e r o p o i n t o fY i na l g o r i t h mw i t h v e r y s m a l lt i m e s h i f t,t h e c u m u l a t i v e a v e r a g e n o r m a l i z a t i o n i s u s e d t o e l i m i n a t e t h ei n t e r f e r e n c et o t h ef u n d a m e n t a lf r e q u e n c y n e a rz e r o.I n t h e M a t l a b e n v i r o n m e n t,t h e p i t c he x t r a c t i o n b a s e d o n t h e a n a l y s i sf r a m e i s r e a l i z e d.A c c o r d i ng t o th e T w e l v e-t o n e e q u a lt e m p e r a m e n t,c a l c u l a t i n g t h es t a n d a r df r e q u e n c y r a t i oo fe a c hs o u n dl e v e la n dc e n t,t a k i n g200a n a l y s i sf r a m e so fv i o l i n u n a c c o m p a n i e d WA V f i l ea ss a m p l e s,f o rt h e d e v i a t i o nb e t w e e nt h ee x t r a c t e df u n d a m e n t a l f r e q u e n c y a n dt h es t a n d a r df u n d a m e n t a l f r e q u e n c y,ac o r r e c t i o n m e t h o do ft h e f u n d a m e n t a l f r e q u e n c y i s p r o p o s e d.K e y w o r d s:p i t c h;Y I N;a u t o c o r r e l a t i o n f u n c t i o n;t h r e e-l e v e l c e n t e r c l i p p i n g;T w e l v e-t o n e e q u a lt e m p e r a m e n t旋律通常指若干乐音经过艺术构思而形成的有组织㊁节奏的序列,其特征是按一定的音高㊁时值和音量构成,并由具有逻辑因素的单声部进行㊂旋律的3个主要特征中,音高是最重要的㊂国际音乐信息收稿日期:20191106㊂基金项目:国家社会科学基金艺术学重大项目(18Z D23)㊂作者简介:张岩(1968),女,辽宁沈阳人,沈阳师范大学教授,硕士㊂检索测评(M u s i c I n f o r m a t i o nR e t r i e v a l E v a l u a t i o nE x c h a g e ,M I R E X )将旋律定义为对应显著性人声或乐器中感知音高的基频值序列[1]㊂在旋律进行中,由于音高走向的变化而形成的起伏线条,叫旋律线㊂音乐学中,按照音乐作品旋律线的数量,将音乐分为单声部音乐和多声部音乐㊂单声部音乐指同一时刻只有一个音符发音,如独唱㊁管乐器的独奏㊁演奏单旋律的弦乐器独奏等㊂多声部音乐是指有2个或者更多的音符同时发声的音乐,这些音符可以来源于不同的声源,如歌声㊁吉它或贝斯等,也可以来源于能同时发2个以上音的声源,如钢琴[2]㊂单旋律提取是以单声部音乐为对象,对旋律的音高和时值等主要特征进行提取㊂从音乐信号中提取主旋律的方法主要分为3类:基于显著性的方法㊁基于源分离的方法和基于机器学习的方法[3]㊂单旋律的提取侧重所提取旋律的准确性㊁高效性和可视性㊂从音乐复杂性和计算复杂性分析,为了实现旋律快速和实时的轮廓化,基于显著性的方法比较适用㊂单旋律提取可以应用于乐曲创作㊁音准分析㊁调式分析等,因此具有重要的研究和应用价值㊂1 音高显著性和音高检测1.1 音高与基频音高是由发音体发出的基本频率决定的,基频通常用F 0表示㊂音高越高对应的f 0越大㊂当发音体由于震荡而发出音时,每个音不仅仅包括基频正弦波的基音,还同时包括许多频率较高的正弦波的泛音[4],其中频率最低的正弦波即为基音,而其他频率较高的正弦波则为泛音㊂基音是区别音高的主要元素,泛音决定音色㊂复合波的振幅是由基音的振幅和各组泛音的振幅重叠而成,若振幅方向相同则相加;若振幅方向相反则须要相减㊂复合波也是一种周期性的振动波[5]㊂音分为谐和音与不谐和音㊂谐和音指谐波(或谐波分量)的频率是基频的整数倍,当然有许多乐器(如弹拨弦乐器)产生的音并不是完全谐和的㊂不谐和音和不完全谐和音都是乐音,音乐中的旋律等均由乐音构成[6]㊂1.2 音高检测(基频估计)音高检测通常包括时域分析㊁频域分析和时频域分析㊂在时间域内对信号进行滤波㊁放大㊁统计特征计算㊁相关性分析等处理,统称为信号的时域分析㊂频域分析采用傅立叶变换将时域信号变换为频域信号,从频域角度来了解信号的特征㊂时频域分析是将时域与频域的处理方式结合起来,它将信号分割成时间帧,进行时频变换,分析信号在时间域内的频谱的特征㊂针对单旋律提取的简单性,采取不用进行时频转换的时域分析来进行音高检测,以降低计算复杂度,提高实时应用性㊂时域分析算法主要包括自相函数(A u t oC o r r e l a t i o nF u n c t i o n ,A C F )算法和Y I N 算法㊂2 Y I N 算法2.1 自相关函数算法Y I N 算法以自相关函数算法为基础㊂对于乐曲数字化的有限离散信号,若其长度为N ,它的自相关函数R x (k )定义为R x (k )=ðN -1-k n =0x (n )x (n +k )(1)其中k 是时移参数,显然当k =0时得到最大的R 值,也就是信号与信号本身相似度最大[7]㊂自相关函数在基音周期的整数倍处取得最大值,计算2个相邻的最大峰值间的距离,就可以估计出基音的周期,从而得到基音的频率㊂乐音信号复合波的大多数峰值并不能反映基频的周期,而只有少数的峰值与基频有关㊂为了强化反映基频周期的峰值,减少谐波成分峰值的干扰,降低自相关算法的计算量,需要对音频信号进行中心削波处理㊂通常采用的三电平中心削波函数是y (n )=1,x (n )>C l 0,x (n )ɤC l -1,x (n )<-C ìîíïïïïl(2)式(2)中,x (n )是原始乐音信号,C l 是削波电平,y (n )是削波后的乐音信号[8]㊂一般地,削波电平是由乐音信号的峰值的固定百分比来确定的,可以取峰值幅度的60%~70%㊂934第5期 张 岩,等:基于Y I N 算法的乐器单旋律音高的提取2.2 Y I N 算法Y I N 算法可以一定程度地解决确定哪个峰值对应的是基频的峰值的问题㊂Y I N 函数的定义D x(k )为[9]D x (k )=ðN -1n =0[x (n )-x (n +k )]2(3)公式(3)中,以信号差平方和函数代替了公式(1)中的信号积和函数㊂这样,在信号周期整数倍数处,Y I N 函数值为幅度差平方和,并且取值均为零㊂很显然,查找零值的时间效率要高于求最大值的时间效率㊂图1 乐音信号某512采样点三电平中心削波后Y I N 波形F i g .1 Y i nw a v e f o r mo fm u s i c s i gn a l a f t e r t h r e e -l e v e l c e n t e r c l i p p i n g a t 512s a m p l i n gpo i n t s 利用Y I N 算法时,考虑基频提取的实时性,通过实验测试三电平中心削波对Y I N 算法效率的影响㊂具体测试了不同采样点数量规模的情况下,只进行Y I N 算法的运行时间,以及先进行三电平中心削波后进行Y I N 计算的运行时间,测试数据如表1所示,采样点数为512时的Y I N 函数波形如图1所示㊂实验结果表明,随着处理的采样点数的增加,三电平中心削波会一定程度地增加Y I N 算法的运行时间;三电平中心削波减弱了Y I N 算法在信号周期处获得零值或者近零值的显著性,增加了获取周期位置的复杂性㊂因此,Y I N 算法不必进行自相关函数算法中的三电平中心削波处理㊂表1 Y I N 算法与三电平中心削波+Y I N 算法的运行时间对比(单位:秒)T a b l e1 C o m p a r i s o no f o p e r a t i o n t i m eb e t w e e nY i na l go r i t h ma n d t h r e e -l e v e l c e n t e r c l i p p i n g +Y i na l g o r i t h m (U n i t :s e c )方 法采 样 点 数1282565121024Y I N 算法0.02900.11400.44901.7910三电平中心削波+Y I N 算法0.03100.11700.45501.79703 单旋律乐曲的音高提取算法的实现3.1 利用Y I N 算法对乐音信号的分析帧长的估算图2 乐音信号某512个采样点的Y I N 波形F i g .2 Y i nw a v e f o r mo f 512s a m p l i n gp o i n t s o fm u s i c a l s i gn a l 以小提琴为例,从低到高的4根琴弦分别为E ㊁A ㊁D ㊁G ,标准的空弦音从低到高是g =196H z ㊁d 1=294H z ㊁a 1=440H z ㊁e 2=659H z,每把小提琴的实际频率分布是不同的[10]㊂假设取最低频率确定的分析帧长,当分析帧帧长取128(1024个采样点的时间约为24m s ,128个采样点的时间约为3m s)时,不能包含最低频率的2个周期,经过Y I N 算法实验证明,波形中包含1个最低点,但是不能判断该采样点即是周期点,所以需要扩展分析帧长点数;当扩展帧长点数为512时,采样时间约为12m s ,包含最低频率的2个周期,波形出现了周期性的波动,如图2所示㊂以上实验表明,512个点作为分析帧的帧长是适当的,依此也可以将分析044沈阳师范大学学报(自然科学版) 第38卷帧的一半,即256个点作为帧移㊂3.2 获取乐音信号分析帧中近零点的方法从图中的Y I N 函数波形来看,对于Y I N 算法理论上的零点存在2个实际的问题:图3 乐音信号某512个采样点的Y I N 累积平均归一化波形F i g .3 Y i n c u m u l a t i v ea v e r a gen o r m a l i z e dw a v e f o r m o f 512s a m p l i n gp o i n t s o fm u s i c a l s i gn a l 1)理论上应该在信号周期处获得零点,但是由于采样时未必能取到信号周期所在处的点,所以只能从Y I N 函数值中获得近零点㊂2)当时移k 非常小的时候,D x (k )的值也非常小,也往往小于周期处近零点的值㊂当k =0时,往往就是D x (k )的零点或者是最接近零的近零点,影响获取正确的近零点㊂为了取消时移k 非常小的影响,可以采用累积平均归一化差分函数,其公式为[11]D n x (k )=1,k =0D x (k )1k ðk j =1D x (k ),ìîíïïïïo t h e r w i s e (4)利用累积平均归一化函数,对于图2中的采样帧进行处理,处理结果如图3所示㊂显然,经过处理后,消除了时移非常小时的Y I N 函数值对提取近零点的影响㊂3.3 Y I N 算法提取音高的实现在M a t l a b 环境中,读入小提琴无伴奏的WA V 乐曲文件,利用Y I N 算法提取该分析帧的基频的周期,即采样点序号㊂若经算法计算得出基音周期为T (i ),则相应的基音频率为F (i )=fs /T (i ),其中f s 表示乐曲采样频率[12]㊂M a t l a b 代码如下[13]:[x 1,f s ,n b i t ]=a u d i o r e a d (ᶄx t q.w a v ᶄ); %f s 为采样频率44.1k H z ,n b i t 为采样位数16,x 1为读取的归一化后幅%值[-1,1]之间的乐音信号,共有采样点数*2个数据,2表示双声道[R o w ,C o l ]=s i z e (x 1);%采样点数组的行数和列数N=512;%确定分析帧的帧长点数I n d =[];AM=[];P i t c h =[];f o rF M=1:200%选取前200个分析帧N 1=256*(F M-1)+1;%某分析帧的起始采样点序号,帧移是256 N 2=N 1+1024-1;%某分析帧的终止采样点序号x 2=x 1(N 1:N 2,:); D=[];D n =[];%以下3行是累积平均归一化的初始化 D n (1)=1;s u m n =0; f o r k =2:N%延迟N 个点数s u m=0;f o r j=1:N %Y I N 函数计算s u m=s u m+(x 2(j )-x 2(j +k ))*(x 2(j )-x 2(j +k )); e n dD (k )=s u m ;s u m n =s u m n +D (k );%以下2行是累积平均归一化 D n (k )=D (k )/(s u m n /k );e n d[A ,P o s ]=m i n (D n);%求第一个近零点 AM (F M )=A ; I n d (F M )=P o s;%求近零点的采样点序号P i t c h (F M )=44100/I n d (F M );%求基频e n d4 结 语根据十二平均律,计量上将一个八度音程即2倍频率之间分成12个音级,每2个相邻音级相差144第5期 张 岩,等:基于Y I N 算法的乐器单旋律音高的提取244沈阳师范大学学报(自然科学版)第38卷100音分(c e n t)㊂2个相邻音级的频率比是2(1/12)(约1.059463)㊂2个相邻音分的频率比是2(1/1200)(约1.00057779)[14]㊂音列中乐音i的标准频率公式为F(i)=f a1*2(n/12),其中f a1=440为第一国际高度,n为乐音i到a1间隔的半音数目,当乐音i比音a1低时,n取负数[15]㊂以前面的200个分析帧(帧长512点,帧移256点)提取的音高序列为例,提取的频率和标准频率之间存在偏差,表现为音级和音级之间不是准确的2(n/12)的关系,进一步通过消除偏离频率严重的野点来修正提取的频率㊂以f a1= 440H z为基准,可以通过若干次的1.059463的倍数来计算标准音级的频率㊂对于某个音级,可以通过若干次的1.00057779的倍数来计算音级的各个音分的频率㊂如果是音准检测,那么10个音分以内的偏差下,可以认定音级;如果是提取旋律,那么50个音分以内的偏差下,可以认定音级,或者结合提取频率对应的帧数来进一步判断,当帧数少于2帧时,可以认定为野点,否则可以进行频率修正,如表2所示㊂显然,经过修正后,可以提高乐音频率提取的准确度㊂表2提取频率的修正方法T a b l e2T h ec o r r e c t i o nm e t h o do f e x t r a c t i o n f r e q u e n c y提取的频率标准音级的频率音分偏差修整方法86.811,86.982,87.154,87.32787.307289,6,3,087.30728104.5103.82644103.8264174.31,175174.61443,4174.6144260.95261.62584261.6258393.75391.99558391.9955454.64466.163744野点/466.1637518.82,525523.25116,6523.251700698.4564698.456773.6824野点/783.9902787.5783.99028783.9902801.8239野点/783.9902816.67830.608629野点/830.6086参考文献:[1]李强,于凤芹.一种改进的基于音高显著性的旋律提取算法[J].计算机工程与应用,2019,55(3):115119.[2]李伟,冯相宜,吴益明,等.流行音乐主旋律提取技术综述[J].计算机科学,2017,44(5):14.[3]张维维,陈喆,殷福亮.复调音乐主旋律提取方法综述[J].电子学报,2017,45(4):10001007.[4]陈静.钢琴音乐的多基频估计研究[D].成都:电子科技大学,2016.[5]李睿.音乐和谐感的科学支点研究[D].太原:山西大学,2018.[6]胡倩如.解析钢琴调律中检验方法对基准音组音高的影响[J].西安音乐学院学报,2019,38(3):138142.[7]S T A U D A C H E R M,S T E I X N E R V,G R I E S S N E R A,e ta l.F a s t f u n d a m e n t a l f r e q u e n c y d e t e r m i n a t i o nv i aa d a p t i v ea u t o c o r r e l a t i o n[J].S p r i n g e r J o u r n a l,2016,2016(1):18.[8]赵发,孙瑞霞.基于小波减噪的基音检测改进算法[J].安徽理工大学学报(自然科学版),2018,38(2):7782.[9]张维维.音乐主旋律提取与多音高估计方法研究[D].大连:大连理工大学,2019.[10]Y O L O Y AMA M.P o s s i b i l i t y o f d i s t i n c t i o no f v i o l i nt i m b r eb y s p e c t r a l e n v e l o p e[J].A p p l i e dA c o u s t i c s,2020,157(1):17.[11]张维维.音乐主旋律提取与多音高估计方法研究[D].大连:大连理工大学,2019.[12]刘莹,赵彤洲,江逸琪,等.基于自相关函数的钢琴乐音改进识别算法[J].武汉工程大学学报,2018,40(2):208213.[13]张岩,吕梦儒.基于MA T L A B的音乐旋律二维可视化方法[J].沈阳师范大学学报(自然科学版),2018,36(4):342346.[14]中华人民共和国国家质量监督检验检疫总局,中国国家标准化管理委员会.十二平均律的频率与音分的计算:G B/ T23146 2008[S].北京:中国标准出版社,2018.[15]别碧耀.基于示范音频深度学习的钢琴自动作曲研究[D].广州:华南理工大学,2019.。
自适应信号分解和相空间重构的钢琴和弦识别

自适应信号分解和相空间重构的钢琴和弦识别自适应信号分解和相空间重构是一种用于信号处理和模式识别的高级技术,常常被用于处理音乐信号。
本文将介绍如何运用这种技术在钢琴和弦识别方面取得良好的效果。
1. 自适应信号分解的原理自适应信号分解(Adaptive Signal Decomposition,ASD)是一种将信号分解为一系列特定成分的技术,其中每个成分都可以被独立地表示和分析。
它可以通过多种算法进行实现,其中最常用的是经验模态分解(Empirical Mode Decomposition,EMD)和变分模式分解(Variational Mode Decomposition,VMD)。
2. 钢琴和弦的特征分析钢琴和弦是一种由多个音符组成的音乐元素,它的特点在于其音符具有一定的关联性。
通过对钢琴和弦的分析,可以得到其频率谱、时间域波形和时频图等特征。
3. 相空间重构的基本原理相空间重构(Phase Space Reconstruction,PSR)是一种根据原始信号生成新的、更抽象的信号表示方式的技术。
它的基本原理是将信号映射到高维空间中,然后在该空间中进行分析和处理。
4. 钢琴和弦的识别方法钢琴和弦的识别可以通过多种算法实现,这里介绍一种基于ASD和PSR的识别方法。
该方法首先使用ASD将钢琴和弦信号分解为多个成分,然后在每个成分上执行PSR以得到其相空间表示。
最后,将得到的相空间表示与预先训练的模型进行匹配,以识别所属的和弦类型。
5. 实验结果分析在实验中,使用ASD和PSR的钢琴和弦识别方法在常见的和弦数据集上取得了非常好的结果,准确率达到了90%以上。
相比传统的时间域和频域处理方法,该方法具有更好的稳定性和精度,并且能够在多种音乐环境下进行有效的识别。
总之,自适应信号分解和相空间重构是一种应用广泛的信号处理技术,它在钢琴和弦识别中的应用得到了证明。
相信在未来的研究中,该技术将继续发挥其重要作用,并为音乐信号处理领域带来更多的进步和突破。
基于小波变换和自相关函数的基音频率检测算法

基于小波变换和自相关函数的基音频率检测算法
李飞鹏;张维强;徐晨
【期刊名称】《现代电子技术》
【年(卷),期】2009(32)4
【摘要】根据语音的基音频率较低这一特点,利用小波变换的滤波特性剔除了语音的高频部分,然后再利用计算速度较快的自相关函数法检测语音的基音频率,有效剔除了高频共振峰和噪音的影响,其估计基音频率准确性高,稳定性好,运算速度较快.实验结果表明,此方法是一种有效的基音频率检测算法.
【总页数】3页(P121-123)
【作者】李飞鹏;张维强;徐晨
【作者单位】深圳大学,智能计算科学研究所,广东,深圳,518060;深圳大学,智能计算科学研究所,广东,深圳,518060;深圳大学,智能计算科学研究所,广东,深圳,518060【正文语种】中文
【中图分类】TP391.42
【相关文献】
1.基于小波变换的汉语三字词语音基音频率提取 [J], 王义元;赵黎明
2.利用自相关函数与平稳小波变换的252Cf源驱动核材料质量识别方法 [J], 冯鹏;刘恩远;金晶
3.一种改进的自相关函数基音检测算法 [J], 杨森斌;陈砚圃;李真
4.提升小波加权自相关函数的基音检测算法 [J], 王晨;章小兵;刘美娟
5.基于3次B样条小波变换的改进自适应阈值边缘检测算法 [J], 王煜;谢政;朱淳钊;夏建高
因版权原因,仅展示原文概要,查看原文内容请购买。
一种改进的自相关函数基音检测算法

一种改进的自相关函数基音检测算法
杨森斌;陈砚圃;李真
【期刊名称】《现代电子技术》
【年(卷),期】2008(31)9
【摘要】提出了一种改进的自相关函数基音检测算法:首先利用清浊音自相关函数幅度值的不同性质进行清浊音判决,然后仅对浊音段检测基音周期.在基音检测前用带通滤波、中心削波和数值滤波等方法进行预处理,去除共振峰和高频噪声的影响;在基音检测过程的后端用搜索平滑方法进行后处理,平滑掉半、倍频点和随机错误点.实验结果表明,改进算法的效果优于传统自相关算法,而且在信噪比低至5 dB时仍有良好的清浊音判决和基音检测性能.
【总页数】3页(P135-137)
【作者】杨森斌;陈砚圃;李真
【作者单位】西安通信学院,基础部,电子信息研究室,陕西,西安,710106;西安通信学院,基础部,电子信息研究室,陕西,西安,710106;西安通信学院,基础部,电子信息研究室,陕西,西安,710106
【正文语种】中文
【中图分类】TP391
【相关文献】
1.一种改进的汉语语音基音检测算法 [J], 李平;胡慧之
2.一种改进的正弦语音模型基音周期检测算法 [J], 孙华山
3.一种改进的自相关基音检测算法 [J], 胡瑛;陈宁;夏旭
4.一种改进的强噪声背景下基音检测算法 [J], 胡连锋;夏秀渝;张佩;李志昌
5.一种改进的抗噪基音周期检测算法 [J], 李娟;张雪英
因版权原因,仅展示原文概要,查看原文内容请购买。
电子科技大学数字信号处理DSP课程设计-钢琴音符识别

2014级数字信号处理课程设计陈述之马矢奏春创作题目:钢琴音符识别姓名:邱晨曦答辩时间:2016/12/9一. 题目要求:(1)播放和记录一段钢琴音乐中的音符;(2)记录到音符以后,找到音符所对应的现代尺度钢琴的钢琴键,并分析结果。
二. 课程设计思路:(1)涉及到的知识点:快速傅里叶变换、钢琴音频信号的时域和频域的特性、能熵比的概念、频率校正、频率与音符的转换关系。
(2)方案分析:A.预处理部分:1.直接用audioread函数读出来的原始数据。
优点:准确率较高;缺点:数据量较大,采样频率为44kHz,远大于奈奎斯特采样率。
2.以11kHz的采样率重新采样,并转换为单声道。
优点:数据量小了很多,易于处理;缺点:牺牲了部分的准确率,但对于音符的判断影响可以忽略。
B. 端点检测算法:<1> . 双门限法:1. 计算短时能量(高门限)和过零率(低门限);2. 选取一个较高的门限T,语音信号的能量包络大部分都2在此门限之上,进行一次初判,语音起止点位于该门限与短时能量包络交点所对应的时间间隔之外;3. 根据噪声能量,确定一个较低的门限T,并从初判起点1往左,从初判终点往右搜索,分别找到能零比曲线第一次与门限T相交的两个点,两点之间段就是用双门1限方法所判定的语音段;4. 以短时平均过零率为准,从低门限点往左右搜索,找到短时平均过零率低于某阈值的两点,为语音的起止点;图1:双门限法示意图说明:算法中的阀值是根据实验过程调节的。
该算法在实际应用的过程中发现:在语音信号频率分布较为集中的时候,端点检测出来的结果比较准确,但当语音信号频率分布比较分散的时候,很难通过控制固定的阀值来检测到每个音符;<2>. 自相关法:由于两种信号的自相关函数存在极大的差别,可以利用这种不同来提取语音端点。
根据噪声的情况,设置两个阈值1T 和2T ,当相关函数最大值大于2T 时,便判定是语音;当相关函数最大值大于或小于1T 时,则判定为语音信号的端点。
一种基于模糊的MUSIC改进算法

一种基于模糊的MUSIC改进算法
王德明
【期刊名称】《电子学报》
【年(卷),期】1996(24)8
【摘要】本文将模糊控制理论应用于高分辨谱估计测向中,提出MUSIC算法的改进算法,我们称为Fuzzay-MUSIC算法,以解决短数据,低信噪比下谱估计测向问题,并给出了在TMS320C30仿真开发系统上计算机的模拟结果。
【总页数】1页(P83)
【作者】王德明
【作者单位】无
【正文语种】中文
【中图分类】TN911.23
【相关文献】
1.一种基于 MUSIC 改进算法的宽带水声信号 DOA 估计 [J], 刘亮;赵高泽;龙伟
2.一种基于方向响应函数的MUSIC改进测向算法 [J], 赵厚滨;丁海峰
3.一种基于改进T-S模糊推理的模糊神经网络学习算法 [J], 许哲万;李晶皎;王爱侠;郭先日
4.一种基于MUSIC算法的二次搜索解模糊方法 [J], 司锡才;唐建红;谢纪岭
5.一种相关干涉仪与MUSIC算法相结合的改进测向算法 [J], 李彦龙; 杨博盛
因版权原因,仅展示原文概要,查看原文内容请购买。
基于MATLAB的自相关函数基音检测的优化

系统软件与软件工程本栏目责任编辑:谢媛媛Computer Knowledge and Technology 电脑知识与技术第5卷第36期(2009年12月)基于MATLAB 的自相关函数基音检测的优化王丽(青海师范大学物理系语音与图像研究室,青海西宁810008)摘要:基音是语音信号的一个重要参数,它是指发浊音时声带振动所引起的周期性。
基音的提取是语音处理中的重要任务。
目前对基音的检测方法有很多,典型的就有自相关法,AMDF (短时平均幅度差)法,倒谱法等等。
这里介绍一种自相关和倒谱相结合的算法,较传统的自相关法有一定的改进和优化。
关键词:自相关;倒谱;三电平中心削波中图分类号:TP391文献标识码:A 文章编号:1009-3044(2009)36-10611-02The Autocorrelation Function based on MATLAB Optimization of Pitch DetectionWANG Li(Qinghai Normal University Physics Department Pronunciation and Image Laboratory,Xi'ning 810008,China)Abstract:Pitch is an important parameter of speech signals,which is when the hair dullness caused by the cyclical nature of vocal fold vi -bration.Pitch extraction is an important task of speech processing.Currently there are a lot of pitch detection methods,typically there is self-correlation method,AMDF (short-time average magnitude difference)method,cepstrum,etc.Here are a self-correlation and cep -strum combination of algorithms,the more traditional autocorrelation have some improvements.Key words:autocorrelation;cepstrum;the three-level center clipping基音是语音信号处理中的一个非常重要的参数。
一种改进的基音周期检测方法

一种改进的基音周期检测方法曾树华【摘要】提出了一种改进的基于自相关算法的基音周期检测方法,首先对信号进行了预滤波.消除二次谐波的影响.计算自相关系数时使用的是削波后的数据,大大降低了计算复杂度,野波平滑在保持周期的阶跃性的同时去除野波.【期刊名称】《电声技术》【年(卷),期】2011(035)004【总页数】3页(P53-55)【关键词】基音周期检测;自相关;滤波;削波;平滑【作者】曾树华【作者单位】湖南铁路科技职业技术学院,湖南,株洲,412003【正文语种】中文【中图分类】TN912语音是人类相互交流和通信最方便快捷的手段。
人类发音时,声门从一次开启到下一次开启就形成一个基音周期,而基音频率是基音周期的倒数。
基音频率是一个重要的参数,因此准确检测基音频率具有十分重要的意义。
由于基音周期[1]只具有准周期性,所以只能采用短时平均方法估计该周期,这个过程也称为基音检测(Pitch Detection)。
基音检测的方法主要有短时自相关函数法、平均幅度差函数法、倒谱解卷积法、Hilbet—Huang变换法、小波变换[2]等。
笔者提出一种改进的基于自相关函数法的基音检测方法,并在Matlab上进行仿真,实验证明,准确性得到提高。
基音周期检测分为取样、分帧、短时能量分析、自相关计算和基音周期估计,如图1所示。
取样的点数一般为帧长的整数倍,而帧长一般选15~30 ms(8 000 Hz,120~240点),短时能量分析的目的是进行清浊判别,再通过计算信号的自相关来判断信号x(n)的周期。
取样与分帧:取样是指从语音信号中取出一部分进行分析,一般取样点为帧长的整数倍。
基音的准周期性要求对语音信号采用短时分析,需要把语音信号分成一段一段来进行分析,这就是分帧。
对信号进行加窗来分帧,窗长度一般应大于基音周期的两倍,所以一般选择120~240点(8 000 Hz,15~30 ms)。
短时能量分析:语音信号的大部分能量集中在浊音段,所以浊音段的短时能量会远远大于清音段,据此可以判断清浊音的起止时间。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于自相关函数的钢琴乐音改进识别算法刘莹;赵彤洲;江逸琪;柴悦;李翔【摘要】Combined with traditional three-level center clipping method and autocorrelation function recognition algorithm,an improved frame-shift algorithm to extract precisely the pitch signal was presented,which could search the maximum autocorrelation function at a finer scale to accurately locate the pitch position after accurate audio segmentation. This algorithm solved the problem that the traditional algorithms could not distinguish the influence of half-frequency and double-frequency on the pitch with fast rhythm,which degraded the recognition rate.Experiments showed that the improved algorithm had an average recognition rate of 83.0% for piano music with different rhythms,and the recognition rate with fast-paced music was 20.2% higher than that of traditional method. Therefore,the proposed algorithm has a significant improvement on music recognition,especially for fast-tempo music.%在传统三电平削波结合自相关函数识别算法的基础上,经过准确的音频分割后,提出了帧移法提取乐音基音信号.该算法能在更精细尺度上寻找最大自相关函数,进而准确定位基音位置,较好地解决了传统算法中当乐音节奏较快时,无法区分半频和倍频对基音的影响,从而导致的识别率低的问题.实验表明,本算法对—节奏快慢不同的钢琴乐音的平均识别率约为83.0%,且快节奏乐音的识别率较传统算法高出20.2%,因此该方法对乐音识别尤其对快节奏乐音识别有显著效果.【期刊名称】《武汉工程大学学报》【年(卷),期】2018(040)002【总页数】6页(P208-213)【关键词】基音周期;三电平中心削波;自相关函数;帧移;乐音识别【作者】刘莹;赵彤洲;江逸琪;柴悦;李翔【作者单位】智能机器人湖北省重点实验室(武汉工程大学),湖北武汉430205;武汉工程大学计算机科学与工程学院,湖北武汉430205;智能机器人湖北省重点实验室(武汉工程大学),湖北武汉430205;武汉工程大学计算机科学与工程学院,湖北武汉430205;智能机器人湖北省重点实验室(武汉工程大学),湖北武汉430205;武汉工程大学计算机科学与工程学院,湖北武汉430205;智能机器人湖北省重点实验室(武汉工程大学),湖北武汉430205;武汉工程大学计算机科学与工程学院,湖北武汉430205;武汉天喻信息产业股份有限公司,湖北武汉430223【正文语种】中文【中图分类】TP391.4钢琴乐音信号是由基音及泛音共同组成的,而决定其音高的是基音,因此基音周期的检测是钢琴音符识别的关键所在[1-2]。
基音周期的检测的方法主要包括频域识别和时域识别,短时自相关法是一种经典的时域检测算法,它计算简单,应用广泛,但是该算法会发生基音倍频或半频错误。
在此基础上,在计算自相关函数前进行三电平中心削波运算是一种经典的改进算法[3-5]。
由于该运算去除了各个音符能量相对集中在中心区域的部分,保留了在峰值附近的能量,因而可以减少计算量,加快运算速度,同时,在一定程度上避免上述错误的发生,进而提高识别率,但是,这种算法仍然有一定的局限性。
为抑制高次谐波的干扰,文献[6]提出进行两次三电平中心削波和自相关处理,但这种方法增加了计算量,不适于快速计算的应用场景。
此外,在用自相关法估计基音周期时,会发生帧间基音周期跳跃的现象,并且识别过程会受到半频点、倍频点和随机错误点的干扰,对于这些问题前期工作者提出了各种平滑滤波算法[7-9],其目的就是过滤掉各种干扰点。
文献[10]提出将插零算法以及相应的低通滤波器应用于三电平削波的自相关法。
文献[11]提出将三电平中心削波自相关函数与循环均值幅度差分函数相结合。
上述算法在处理节奏较为缓和的乐曲时,可以达到较为满意的识别率,但是在处理节奏较快的乐曲时,识别率会迅速下降。
本文提出了帧移自相关函数法,目的是在更小尺度上寻找最大自相关函数,以适应快节奏乐曲,因而一定程度上避免了传统算法对快节奏乐曲的漏检、误检或识别错误等情况发生,进而可以显著提高识别准确率。
1 三电平中心削波的自相关函数假设zi(x)是乐音信号的时间序列w(t)加窗分帧后的第i帧信号,其中下标i表示第i帧,设每帧帧长为N。
zi(x)的短时自相关函数定义为:式中,k是时间的延迟量。
短时自相关函数具有如下性质:1)如果 zi(x)是周期信号,周期是 P,则 Ri(k)也是周期信号,且周期相同,即有2)当k=0时,短时自相关函数具有最大值,即在延迟量为0,±P,±2P,…时,周期信号的自相关函数也达到最大值。
3)短时自相关函数是偶函数,即Ri(k)=Ri(-k)。
短时自相关函数法基音检测的主要原理都是利用短时自相关函数的这些性质,通过比较原始信号与它延迟后的信号之间的类似性来确定基音周期的。
如果延迟量等于基音周期,两个信号就具有最大类似性;或是直接找出短时自相关函数的两个最大值间的距离,作为基音周期的初估值。
CL是削波电平,中心削波函数C[zi(x)]的数学关系式为:三电平中心削波法的输入输出函数为:即削波器的输出 (x)在 zi(x)>CL时为1,zi(x)<-CL时为 -1,其余为 0。
按文献[7]的介绍,CL的取法是取 zi(x)前部100个样点和后部100个样点的最大幅度,从中取较小者,并乘以0.68作为门限电平CL。
按式(1)得到的中心削波输出yi(x):与按式(2)得到三电平削波输出 (x)求自相关函数:其中,(x)的取值只有1,0和-1三种,所以式(3)中只有加(减)法,在实际运算中节省了大量时间,为实时运算创造了条件。
2 改进的自相关函数基音提取算法若对音频序列w(t)端点检测,每个端点在原序列的起始位置记为S(i),(i=1,2,…,n)。
经过准确的音符分割[12-13]后,认为一个端点对应一个基本音符的起始点,设T(i)为原音频序列中第i个音符的基音周期,由音乐的短时平稳性,将区间s(i)=w[S(i),S(i)+l]按定长窗计算自相关函数,其中窗长l=409 6。
理论上认为,第一个最大自相关函数对应的位置,即为基音的周期。
由式(3)可得seg(i)的自相关函数为:取Ri(x)最大值 Ri,max(x)=max(Ri(x)),理想状况下,约70%音符的数据帧在经过三电平削波和自相关函数计算后的波形图符合如下规律:Ri,max(x)所在的点Pi,max与首个峰值点Pi(1)重合,如图1所示,首个峰值点1与最大峰值点3为同一个点,在此情形下可得基音周期T(i)=Ii(1)。
图1 理想状况下自相关函数波形图Fig.1 Waveform diagram of autocorrelation function in ideal condition少数情况下,信号受到共振峰的影响,会出现倍频波干扰,即出现Pi,max与Pi(1)分离的现象。
为消除此影响,首先需要选取合适的峰值点。
图2显示了钢琴曲“致爱丽丝”(For Elise)的第11个音符E4的数据帧在经过三电平削波和自相关函数计算后的波形图,第二个峰值点2与最大峰值点3是同一个点。
设阈值 Hi,min=Ri,max(x)/k1,其中 k1为一常量。
记录满足条件Ri(x)>Hi,min的峰值序列Pi(j)与对应于 Ri(x)的序号 Ii(j),即 Ri(Ii(j))=Pi(j)。
k1的取值需要保证Pi(j)不包含图2中幅值过小的峰值点1,同时也要包含幅值较大且可能正确的峰值点2。
因此,峰值点2的幅值为 Pi(1),序号为 Ii(j);峰值点3的幅值为 Pi,max,序号为 Ii,max。
在本文中阈值k1=2。
图2 音符E4自相关函数波形图Fig.2 Waveform diagram of autocorrelation function of note E4为选出正确的峰值点,还需要进行进一步阈值判断。
取最大峰值点与首个峰值点的幅值比CR=Pi,max/Pi(1)。
图3显示了钢琴曲“梦中的婚礼”(MARIAGED'AMOUR)的第35个音符D5的数据帧在经过三电平削波和自相关函数计算后,数据帧平移前后波形对比图。
经过计算可得图3(a)、3(b)中的幅值比分别为CR,1=1.66,CR,2=1.36,由此可见,当数据帧进行平移后,CR的值会发生变化。
在本文中,数据帧平移指的是使选取的信号区间上界与下界都增加 64,即平移后的信号区间s′(i)=w[S(i)+64,S(i)+l+64]。
图3 音符D5波形(a)帧移前和(b)帧移后对比图Fig.3 Contrast diagramsof(a)before and(b)after frame-shift of note D5 waveform对数据帧进行多次平移后,可以发现其幅值比在一定范围内波动,如图4所示,将上述数据帧进行8次平移得到幅值比序列CR(b)。
设阈值k2为一常量,分别统计CR(b)>k2的个数 n1与 CR(b)<k2 的个数 n2,若 n2>n1,认定T(i)=Ii(1);若 n1>n2,则认定 T(i)=Ii,max。
k2的值对统计结果有直接影响,经过多首乐曲的调整,取k2=1.43结果较为理想。
图4 多次帧移的幅值比变化情况Fig.4 Amplitude ratio change of multiple frame-shift3 结果与讨论所用乐音数据文件由软件EveryonePiano根据曲谱合成,并通过立体声混音内录钢琴曲谱的右手演奏部分得到,其中软件所用音源为mdaPiano。