发明名称 一组用于语音、音乐、噪音自动分类的信号特征提取方法
摘要 本发明属于声音信号处理技术领域,具体是一组用于声音信号自动分类的信号特征提取方法,在所发明的信号特征提取方法的基础上可以构造一个声音信号自动分类系统用于识别一段声音信号是语音、音乐、还是噪音,语音、音乐、噪音自动分类的应用领域包括数字通信系统的声音活动检测和助听器的环境声音识别。本发明提出了三种基于分形度量的声音信号特征提取方法。
申请公布号 CN101515454A 申请公布日期 2009.08.26
申请号 CN200810033779.1 申请日期 2008.02.22
申请人 杨夙 发明人 杨夙
分类号 G10L11/00(2006.01)I;G10L11/02(2006.01)I;G10L19/00(2006.01)I;H04R25/00(2006.01)I 主分类号 G10L11/00(2006.01)I
代理机构 代理人
主权项 1、一组用于语音、音乐、噪音自动分类的信号特征提取方法,其特征在于,至少包括以下方法之一:(一)采集一段声音,对这段声音采样,得到时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>],根据分形布朗运动模型计算时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>]的特征,具体步骤为:(1)计算差分统计量<maths num="0001"><![CDATA[<math><mrow><msub><mi>&sigma;</mi><mi>k</mi></msub><mo>=</mo><msqrt><mfrac><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mi>k</mi></mrow></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mrow><mi>N</mi><mo>-</mo><mi>k</mi></mrow></munderover><mo>[</mo><msub><mi>s</mi><mrow><mi>i</mi><mo>+</mo><mi>k</mi></mrow></msub><mo>-</mo><msub><mi>s</mi><mi>i</mi></msub><mo>-</mo><mfrac><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mi>k</mi></mrow></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mrow><mi>N</mi><mo>-</mo><mi>k</mi></mrow></munderover><msup><mrow><mrow><mo>(</mo><msub><mi>s</mi><mrow><mi>j</mi><mo>+</mo><mi>k</mi></mrow></msub><mo>-</mo><msub><mi>s</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>]</mo></mrow><mn>2</mn></msup></msqrt><mo>,</mo></mrow></math>]]></maths>这里k=1,2,...,N-2;(2)把{σ<sub>1</sub>,σ<sub>2</sub>,...,σ<sub>N-2</sub>}作为时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>]的基本特征,对{σ<sub>1</sub>,σ<sub>2</sub>,...,σ<sub>N-2</sub>}进行变换,得到f(σ<sub>1</sub>,σ<sub>2</sub>,...,σ<sub>N-2</sub>),f(σ<sub>1</sub>,σ<sub>2</sub>,...,σ<sub>N-2</sub>)是以(σ<sub>1</sub>,σ<sub>2</sub>,...,σ<sub>N-2</sub>)为输入的任何一种计算方法产生的输出,把f(σ<sub>1</sub>,σ<sub>2</sub>,...,σ<sub>N-2</sub>)作为用于对时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>]进行分类的特征;(二)采集一段声音,对这段声音采样,得到时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>],根据分形理论中计算毯子覆盖维数的原理计算时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>]的特征,具体步骤为:(1)令<maths num="0002"><![CDATA[<math><mrow><msubsup><mi>U</mi><mi>i</mi><mn>0</mn></msubsup><mo>=</mo><msubsup><mi>L</mi><mi>i</mi><mn>0</mn></msubsup><mo>=</mo><msub><mi>s</mi><mi>i</mi></msub><mi>C</mi><mo>,</mo></mrow></math>]]></maths>C是一个系数且满足|s<sub>i</sub>C|≥1,这里i=1,2,...,N;(2)计算<maths num="0003"><![CDATA[<math><mrow><msubsup><mi>U</mi><mi>i</mi><mi>r</mi></msubsup><mo>=</mo><mi>max</mi><mo>{</mo><msubsup><mi>U</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mrow><mi>r</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>,</mo><msubsup><mi>U</mi><mi>i</mi><mrow><mi>r</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>+</mo><mn>1</mn><mo>,</mo><msubsup><mi>U</mi><mrow><mi>i</mi><mo>+</mo><mn>1</mn></mrow><mrow><mi>r</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>}</mo></mrow></math>]]></maths>和<maths num="0004"><![CDATA[<math><mrow><msubsup><mi>L</mi><mi>i</mi><mi>r</mi></msubsup><mo>=</mo><mi>min</mi><mo>{</mo><msubsup><mi>L</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mrow><mi>r</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>,</mo><msubsup><mi>L</mi><mi>i</mi><mrow><mi>r</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>-</mo><mn>1</mn><mo>,</mo><msubsup><mi>L</mi><mrow><mi>i</mi><mo>+</mo><mn>1</mn></mrow><mrow><mi>r</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mo>}</mo><mo>,</mo></mrow></math>]]></maths>这里r=1,2,...,R且i=2,3,...,N-1;(3)计算<maths num="0005"><![CDATA[<math><mrow><msub><mi>M</mi><mi>r</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>2</mn></mrow><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></munderover><mfrac><mrow><msubsup><mi>U</mi><mi>i</mi><mi>r</mi></msubsup><mo>-</mo><msubsup><mi>L</mi><mi>i</mi><mi>r</mi></msubsup></mrow><mrow><mn>2</mn><mi>r</mi></mrow></mfrac><mo>,</mo></mrow></math>]]></maths>这里r=1,2,...,R;(4)把点序列[(logr,logM<sub>r</sub>):r=1,2,...,R]分割为T段,1≤T≤10,对第i段点序列,求出使得<img file="A2008100337790002C6.GIF" wi="556" he="101" />最小的K<sub>i</sub>和E<sub>i</sub>,这里i=1,2,...,T;(5)把{K<sub>i</sub>|i=1,2,...,T}作为时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>]的基本特征,对{K<sub>i</sub>|i=1,2,...,T}进行变换,得到g(K<sub>1</sub>,K<sub>2</sub>,...,K<sub>T</sub>),g(K<sub>1</sub>,K<sub>2</sub>,...,K<sub>T</sub>)是以(K<sub>1</sub>,K<sub>2</sub>,...,K<sub>T</sub>)为输入的任何一种计算方法产生的输出,把g(K<sub>1</sub>,K<sub>2</sub>,...,K<sub>T</sub>)作为用于对时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>]进行分类的特征;(三)采集一段声音,对这段声音采样,得到时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>],根据分形理论中计算广义盒子维数的原理计算时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>]的特征,具体步骤为:(1)给定常数X<sub>1</sub>、X<sub>2</sub>、Y<sub>1</sub>、Y<sub>2</sub>、A、B、C、D,使得X<sub>1</sub>=min{x<sub>i</sub>|i=1,2,...,N}、X<sub>2</sub>=max{x<sub>i</sub>|i=1,2,...,N}、Y<sub>1</sub>=min{y<sub>i</sub>|i=1,2,...,N}、Y<sub>2</sub>=max{y<sub>i</sub>|i=1,2,...,N},这里<maths num="0006"><![CDATA[<math><mrow><mo>{</mo><mrow><mo>(</mo><msub><mi>x</mi><mi>i</mi></msub><mo>,</mo><msub><mi>y</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><mfrac><mrow><mi>i</mi><mo>-</mo><mi>A</mi></mrow><mi>C</mi></mfrac><mo>,</mo><mfrac><mrow><msub><mi>s</mi><mi>i</mi></msub><mo>-</mo><mi>B</mi></mrow><mi>D</mi></mfrac><mo>)</mo></mrow><mo>|</mo><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>N</mi><mo>}</mo><mo>;</mo></mrow></math>]]></maths>(2)设定J个常数{r<sub>j</sub>|j=1,2,...,J},r<sub>1</sub>,r<sub>2</sub>,...,r<sub>J</sub>的取值范围满足0<r<sub>1</sub><r<sub>2</sub><...<r<sub>J</sub>≤max{X<sub>2</sub>-X<sub>1</sub>,Y<sub>2</sub>-Y<sub>1</sub>};(3)对于j等于1到J的循环,完成以下计算:将包含{(x<sub>i</sub>,y<sub>i</sub>)|i=1,2,...,N}的矩形区域[X<sub>1</sub>,X<sub>2</sub>]×[Y<sub>1</sub>,Y<sub>2</sub>]划分为边长为r<sub>j</sub>的网格,计算{(x<sub>i</sub>,y<sub>i</sub>)|i=1,2,...,N}中的点落入各个网格的个数,设有K(j)个网格,则落入各个网格的点的个数记作<maths num="0007"><![CDATA[<math><mrow><mo>{</mo><msubsup><mi>M</mi><mi>i</mi><mi>j</mi></msubsup><mo>|</mo><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>K</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow><mo>}</mo><mo>;</mo></mrow></math>]]></maths>(4)把<maths num="0008"><![CDATA[<math><mrow><mo>{</mo><msubsup><mi>M</mi><mi>i</mi><mi>j</mi></msubsup><mo>|</mo><mi>j</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>J</mi><mo>;</mo><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>K</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow><mo>}</mo></mrow></math>]]></maths>作为时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>]的基本特征,对<maths num="0009"><![CDATA[<math><mrow><mo>{</mo><msubsup><mi>M</mi><mi>i</mi><mi>j</mi></msubsup><mo>|</mo><mi>j</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>J</mi><mo>;</mo><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>K</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow><mo>}</mo></mrow></math>]]></maths>进行变换,得到h(M<sub>1</sub><sup>1</sup>,M<sub>2</sub><sup>1</sup>,...,M<sub>K(1)</sub><sup>1</sup>,M<sub>1</sub><sup>2</sup>,M<sub>2</sub><sup>2</sup>,...,M<sub>K(2)</sub><sup>2</sup>,...,M<sub>1</sub><sup>J</sup>,M<sub>2</sub><sup>J</sup>,...,M<sub>K(J)</sub><sup>J</sup>),h(M<sub>1</sub><sup>1</sup>,M<sub>2</sub><sup>1</sup>,...,M<sub>K(1)</sub><sup>1</sup>,M<sub>1</sub><sup>2</sup>,M<sub>2</sub><sup>2</sup>,...,M<sub>K(2)</sub><sup>2</sup>,...,M<sub>1</sub><sup>J</sup>,M<sub>2</sub><sup>J</sup>,...,M<sub>K(J)</sub><sup>J</sup>)是以(M<sub>1</sub><sup>1</sup>,M<sub>2</sub><sup>1</sup>,...,M<sub>K(1)</sub><sup>1</sup>,M<sub>1</sub><sup>2</sup>,M<sub>2</sub><sup>2</sup>,...,M<sub>K(2)</sub><sup>2</sup>,...,M<sub>1</sub><sup>J</sup>,M<sub>2</sub><sup>J</sup>,...,M<sub>K(J)</sub><sup>J</sup>)为输入的任何一种计算方法产生的输出,把h(M<sub>1</sub><sup>1</sup>,M<sub>2</sub><sup>1</sup>,...,M<sub>K(1)</sub><sup>1</sup>,M<sub>1</sub><sup>2</sup>,M<sub>2</sub><sup>2</sup>,...,M<sub>K(2)</sub><sup>2</sup>,...,M<sub>1</sub><sup>J</sup>,M<sub>2</sub><sup>J</sup>,...,M<sub>K(J)</sub><sup>J</sup>)作为用于对时间序列[s<sub>1</sub>,s<sub>2</sub>,...,s<sub>N</sub>]进行分类的特征。
地址 200433上海市杨浦区国定路408号2号楼308室