一种音调序列的鲁棒阶跃规整方法与流程

文档序号:13706177阅读:224来源:国知局
技术领域本发明属于音频应用技术中音调提取与确定部分。具体内容是应用在提取原始音调序列之后的规整,用于准确提取音调的方法。

背景技术:
声音是由物体振动产生的声波,也就是模拟信号,计算机要对声音进行处理,就要对声音的声波进行数字化,也就是转化为数字信号。模拟信号是一定范围的电压信号或电流信号,模拟信号是指信息参数在给定范围内表现为连续的信号,或在一段连续的时间间隔内,其代表信息的特征量可以在任意瞬间呈现为任意数值的信号,因而计算机无法对模拟信号进行存储;但是根据香农定理可知,用离线的序列可以完全代表一个连续的函数,所以可以使用离散采样的方式获取声波的值序列,然后通过该值序列还原出模拟信号的波形;要保证采样后的序列可以完整的还原出原始的波形信息,需要根据奈奎斯特原则:在进行模拟信号转数字信号的过程中,只有当采样频率大于模拟信号最高频率的2倍时,采样之后的数字信号能较完整地保留原始信号中的信息。后文所说的音频数据即表示采样之后的声波值。人耳的听力范围是20~20kHz,所以在实际中采样的频率是44.1kHz,高于最高频率的2倍是为了提高声波量化的容差性。声音波形的频率高低叫做音调,可以根据相关的公式由声音波形的频率求出音调值。音频作为一种重要的用来传递信息数据,在实际生活中如何对这种大规模的数据进行有效的应用一直是一项重要的研究内容。在音频应用的相关技术中,音调是音频一项极为重要的特征属性,例如在音乐检索中,只有音调定准之后才能做好一些后续的操作,如音调序列字符化、提取音高曲线等;准确的音调序列可以提高基于内容的音频检索的准确率、可以使音频按照风格或者按照作曲人等信息的聚类更加可信。当前的音频的音调序列提取主要是通过短时自相关函数、短时平均幅度差等方法来获取与原始音频波形周期一致的中间函数波形,然后再对中间函数波形进行基音周期提取;然而在提取的过程中由于实际音频的谐波组成多样以及噪声的干扰,因此会造成音调提取值的参差不齐,无法确定某一短时间内的准确音调值;传统方法在提取音调序列之后用中值平滑算法、线性平滑算法或者动态规划平滑算法去除音调序列中的异常值,这些方法只对平稳序列中有个别的突变点时奏效;如果序列值存在连续的异常点,值进行平滑算法之后很有可能无法准确识别异常点,还可能会导致异常被放大,造成平滑后的序列仍然波动明显;本发明介绍的方法可以很好解决这一问题,提取到比较准确的音调值;在音调值提取准确之后,可以在以下等方面进行应用:1.在音乐检索中利用音乐音调值建立准确的索引并进行快速的搜索;2.通过音乐文件生成对应的乐谱文件,给相关工作提供帮助;3.通过比较网络中不同音乐的相似度来对音乐等文件进行版权保护;4.在音乐软件中利用音乐聚类方法对用户进行音乐推荐,提供更好的用户体验;5.提供更加灵活的音乐检索方式,例如通过人哼唱来进行基于内容的音乐检索。

技术实现要素:
本发明属于音频检索中音调提取部分。具体内容是应用在音调提取之后音调序列的规整,用于准确提取音调的方法。针对上述所说的在音频应用技术中音调提取与确定方面现有方法在设计上的缺陷和不足,本发明提出一种音调序列的鲁棒阶跃规整方法,用于将不准确的音调值规整到更符合上下文的音调值上,在音调值的确定上有很好的效果。音调序列规整的目的是通过一系列的变换,把序列中的每一个音调值规整为校准值,该校准值序列具有阶跃函数的相关特征,使得序列整体呈现阶跃式地变化,每段值的分散程度较小,段内的值都比较接近;本发明介绍的方法可以很好解决这一问题,提取到比较符合上下文的音调值。本方法的特征在与包括以下步骤:1.对输入长度为t的音频数字信号x1,x2,…,xt提取原始音调序列:a)设置数字信号的帧长度为L,把信号划分为个不重叠的数据帧;b)对每一帧音频信号,利用短时平均幅度差函数或短时自相关函数或加权短时自相关函数方法计算出与原始音频信号波形具有相同周期的中间函数波形;c)提取中间函数波形的极值点序列K1,K2,…,Ku,及相应的位置点序列P1,P2,…,Pu,u为极值点个数兼位置点个数;d)利用极值点序列计算中间函数波形的频率f,设定n的初值为2,具体步骤如下:i.按顺序取第1到n个极值点构成极值向量a,取第n+1到2·n个极值点构成极值向量b;ii.利用公式计算a,b之间的余弦相似度;iii.把n增加2,重复步骤i到iii直到n大于u/2;iv.把sim2,sim4,…,simn从大到小排列,取出所有simn大于Δ(1>Δ>0.80,比如Δ=0.85,Δ=0.90,Δ=0.95等)的n值,求这些n值两两之间的最大公约数d,取出现次数最多的公约数D,作为波形信号每个周期中最可能包含的极值点个数;v.根据公约数D、极值点序列K1,K2,…,Ku和位置点序列P1,P2,…,Pu,从P1开始计算包含D个极值点的时间区间,作为周期值period,并计算出频率f=1/period;e)利用频率值f和公式Semitone=log2(f/440)*12+69计算每一帧信号的音调值;f)将所有计算得到的音调值记为T1,T2,…,Ts,该序列就是原始音调序列;2.设置音调持续的最短时间阈值H(0.01秒<H<1.00秒,比如H取值0.04秒、0.06秒、0.08秒等);利用音频采样率Q,计算该时间阈值内音调值的个数N,具体计算公式是:3.输入需要校准规整的音调序列T1,T2,…,Ts,设置移位偏移量i初值为N+1;4.构造一个(2·N+1)×(2·N+1)的规整矩阵M,具体步骤如下:a)在T1,T2,…,Ts中以Ti为中心截取Ti及左右两边各N个音调值,组成序列S1,S2,…,S2·N+1(例如当N=2,截取的音调序列S1,S2,S3,S4,S5为Ti-2,Ti-1,Ti,Ti+1,Ti+2,即S1=Ti-2,以此类推),并置规整矩阵M为全0矩阵;b)找到S1,S2,…,S2·N+1的最大值MAX与最小值MIN;c)计算以及第row行的参考值SCALErow=MAX-(row-1)·λ,row=1,2,…,2·N+1;d)对每一个元素Sc,c=1,2,…,2·N+1,找到和Sm最接近的参考值SCALEr,令M的第r行第c列元素值为1,即Mr,c=1;5.利用规整矩阵M构造两个与之完全相同的矩阵EM,XM;用EMp,q代表矩阵EM第p行第q列的元素,用XMp,q代表矩阵XM第p行第q列的元素;6.对EM进行扩展操作:对任意XMp,q,当XMp,q为1时,令EMp,q-1和EMp,q+1为1;7.将矩阵EM转换成无向图G=<V,E>,具体步骤如下:a)无向图G的顶点集V由EM中EMp,q=1的元素构成;b)无向图G的边集E由所有EMp,q=1和EMp-1,q=1的顶点对,EMp,q=1和EMp+1,q的顶点对,以及EMp,q=1和EMp,q+1的顶点对构成;c)把图G的顶点集分为2·N+1层,第q层记作Yq,由EM中所有EMp,q=1的元素构成;8.在图G中求解由第1层到2·N+1层的路径:若路径不存在,则需要将矩阵EM值赋给矩阵XM,并跳转到步骤6执行;若路径存在,则对规整矩阵M构造路径关联集合PS,具体构造步骤如下:a)在图G中找到包含该路径的连通分支PC;b)对连通分支PC中的任意元素EMp,q,如果Mp,q=1,则将Mp,q添加到集合PS中;9.统计PS中每一个元素Mp,q的p值,取出现次数最多的p值记为R,当多个p值出现次数均为最多时,R取最小的p值;把和第R行的参考值SCALER相差最小的音调值Sj作为当前音调值Ti的校准值,记作TWi=Sj;10.把i值增加1,当i<L-N时,重复步骤4~9,直到把输入的音调序列每个值都规整完毕;11.将音调校准值序列TW1,TW2,…,TWs赋给T1,T2,…,Ts;12.循环执行步骤3~11共N次,最终得到的输出值序列T1,T2,…,Ts即为最终的校准值序列。本发明与现有技术相比,具有以下明显优势和有益效果:1.对音调序列规整的目标结果符合实际情况,对声音音调值的提取也更加准确可靠;2.对音调序列规整的过程可控,通过自行设定相关参数可以让规整的过程更加灵活;3.在音调序列值分散较大的情况仍然会有很好的效果,具备很好的鲁棒性。附图说明图1是实验整体流程图。图2是音调提取流程图。图3是音频数字信号波形示例图。图4是中间函数波形示例图。图5是提取的原始音调序列示例图。图6是对矩阵横向扩展的操作示意图。图7是路径关联矩阵生成过程示意图。图8是对较为稳定的音调序列进行规整的实验结果图。图9是对轻微分散的音调序列进行规整的实验结果图。图10是对较为分散的音调序列进行规整的实验结果图。图11是对特别分散的音调序列进行规整的实验结果图。具体实施方式下面结合附图及具体实施案例对本发明作进一步的描述。应用在音频应用技术中准确提取音调的方法流程图。如图3所示。其特征在于包括以下步骤:1.对输入长度为t的音频数字信号x1,x2,…,xt提取原始音调序列,采样率为44.1kHZ,量化位数为16位:a)设置数字信号的帧长度L为1764,把信号划分为个不重叠的数据帧;b)对每一帧音频信号,利用短时平均幅度差函数、短时自相关函数、加权短时自相关函数等方法计算出与原始音频信号波形具有相同周期的中间函数波形;c)提取中间函数波形的极值点序列K1,K2,…,Ku,及相应的位置点序列P1,P2,…,Pu,u为极值点个数兼位置点个数;d)利用极值点序列计算中间函数波形的频率f,设定n的初值为2,具体步骤如下:i.按顺序取第1到n个极值点构成极值向量a,取第n+1到2·n个极值点构成极值向量b;ii.利用公式计算a,b之间的余弦相似度;iii.把n增加2,重复步骤i到iii直到n大于u/2;iv.把sim2,sim4,…,simn从大到小排列,取出所有simn大于Δ(1>Δ>0.80,实验中Δ取0.95)的n值,求这些n值两两之间的最大公约数d,取出现次数最多的公约数D,作为波形信号每个周期中最可能包含的极值点个数;v.根据公约数D、极值点序列K1,K2,…,Ku和位置点序列P1,P2,…,Pu,从P1开始计算包含D个极值点的时间区间,作为周期值period,并计算出频率f=1/period;e)利用频率值f和公式Semitone=log2(f/440)*12+69计算每一帧信号的音调值;f)将所有计算得到的音调值记为T1,T2,…,Ts,该序列就是原始音调序列;2.设置音调持续的最短时间阈值H(0.01秒<H<1.00秒,实验中H取0.08秒);利用音频采样率Q(实验中Q=44.1kHz),计算该时间阈值内音调值的个数N,具体计算公式是:实验中N值计算得2;3.输入需要校准规整的音调序列T1,T2,…,Ts,设置移位偏移量i初值为3;4.构造一个5×5的规整矩阵M,具体步骤如下:a)在T1,T2,…,Ts中以Ti为中心截取Ti及左右两边各2个音调值,组成序列S1,S2,S3,S4,S5,值为Ti-2,Ti-1,Ti,Ti+1,Ti+2,即S1=Ti-2,以此类推,例如S1,S2,S3,S4,S5为77,88,72,81,76,并置规整矩阵M为全0矩阵;b)找到S1,S2,…,S5的最大值MAX=88与最小值MIN=72;c)计算以及第row=1,2,3,4,5行的参考值SCALErow=MAX-(row-1)·λ,分别为SCALE1=88,SCALE2=84,SCALE3=80,SCALE4=76,SCALE5=72;d)对每一个元素Sc,c=1,2,…,5,找到和Sm最接近的参考值SCALEr,令M的第r行第c列元素值为1,即Mr,c=1;例如和S1最接近的行参考值是SCALE4,所以M4,1=1;和S2最接近的行参考值是SCALE1,所以M1,2=1等;5.利用规整矩阵M构造两个与之完全相同的矩阵EM,XM,对应图7中的扩展矩阵初始状态;用EMp,q代表矩阵EM第p行第q列的元素,用XMp,q代表矩阵XM第p行第q列的元素;6.对EM进行扩展操作:对任意XMp,q,当XMp,q为1时,令EMp,q-1和EMp,q+1为1;7.将矩阵EM转换成无向图G=<V,E>,具体步骤如下:a)无向图G的顶点集V由EM中EMp,q=1的元素构成;b)无向图G的边集E由所有EMp,q=1和EMp-1,q=1的顶点对,EMp,q=1和EMp+1,q的顶点对,以及EMp,q=1和EMp,q+1的顶点对构成;c)把图G的顶点集分为5层,第q层记作Yq,由EM中所有EMp,q=1的元素构成;本例中图G对应图7中的子图“扩展矩阵相应的图结构”8.在图G中求解由第1层到5层的路径:若路径不存在,则需要将矩阵EM值赋给矩阵XM,并跳转到步骤6执行;若路径存在,则对规整矩阵M构造路径关联集合PS,具体构造步骤如下:a)在图G中找到包含该路径的连通分支PC,对应图7中的子图“路径的连通分支”;b)对连通分支PC中的任意元素EMp,q,如果Mp,q=1,则将Mp,q添加到集合PS中,PS的最终状态是图7中的子图“路径关联集合”;9.统计PS中每一个元素Mp,q的p值,取出现次数最多的p值记为R,当多个p值出现次数均为最多时,R取最小的p值;在本例中,p=3出现一次、p=4出现2次、p=5出现1次,所以R取4;所以把和第4行的参考值SCALE4=76相差最小的音调值S5=76作为当前音调值Ti的校准值,即TWi=76;10.把i值增加1,当i<L-N时,重复步骤4~9,直到把输入的音调序列每个值都规整完毕;11.将音调校准值序列TW1,TW2,…,TWs赋给T1,T2,…,Ts;12.循环执行步骤3~11共2次,最终得到的输出值序列T1,T2,…,Ts即为最终的校准值序列。在对音频进行音调提取之后,一共利用本发明方法和中值平滑滤波方法进行了四组对比实验,分别选用了原始音调序列值较为稳定、轻微分散、较为分散以及特别分散的情况。较为稳定的音调序列实验结果对比图见附图8。轻微分散的音调序列实验结果对比图见附图9。较为分散的音调序列实验结果对比图见附图10。特别分散的音调序列实验结果对比图见附图11。从实验结果中可以看出:1.对于较为稳定的音调序列,该方法可以有效地过滤掉序列中的突变点,中值滤波平滑方法无法对渐变的突变点进行过滤;2.对于轻微分散的音调序列,该方法可以保持稳定值部分的同时,对分散区域值序列根据其左右的值分布情况进行自身值的调整,将含有分散值的部分调整为很平稳的值序列,中值滤波平滑方法对于连续的突变点无法准确的去除,相反还会增强误差;3.对于较为分散的音调序列,该方法可以有效的进行值的规整,将较为分散值序列中点的集中分布区域的值作为该分散序列的规整值,规整整个较为分散的序列并达到了很好稳定平滑效果,中值滤波平滑方法平滑后仍然有一定的波动;4.对于特别分散的音调序列,使用该方法进行值规整以后,可以使得整体的波形较为接近理想状态,但仍存在极少量容易辨别的误差点,而使用中值滤波平滑方法滤波后整体数据仍然比较分散,无法做到准确提取值。通过实验结果可以看出:1.音调序列规整的结果符合实际情况,对于声音音调值的提取更加准确可靠;2.音调序列规整的过程人为可控,使用起来更加灵活;3.在音调序列值分散较大的情况仍然有很好的效果,该发明方法有很好的鲁棒性。以上示例仅用以说明本发明,而并非限制本发明所描述的技术方案。因此,一切不脱离本发明的精神和范围的技术方案及其改进,均应涵盖在本发明的权利要求范围当中。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1