发明名称 一种基于联合抑制的麦克风阵列语音增强方法
摘要 一种基于联合抑制的麦克风阵列语音增强方法,包括:构建麦克风阵列、以接收外界信号;分析信号,获取目标声源相对麦克风阵列中不同阵元信号相对基准阵元信号的时延;根据时延,分别对与两个麦克风所对应的数字信号进行时延补偿,获得补偿后的信号;对补偿后的阵列信号分别进行子带分解,然后再每个子带上进行固定波束形成;同时分别在每个子带上使用阻塞矩阵获取每个子带上的噪音参考信号;然后在每个子带上分别通过自适应滤波处理算法,将相应子带上固定波速形成器中的与目标语音无关的噪音去除并进行子带合并,从而形成初步增益信号;同时利用前面补偿后的任意两个阵元信号,通过递推互功率谱密度获得抑制与目标语音相关噪音信号的滤波器,进而结合初步增益信号得到最终的目标语音信号。
申请公布号 CN102509552B 申请公布日期 2013.09.11
申请号 CN201110324746.4 申请日期 2011.10.21
申请人 浙江大学 发明人 钱沄涛;杨立春
分类号 G10L21/0208(2013.01)I;H04R3/04(2006.01)I 主分类号 G10L21/0208(2013.01)I
代理机构 杭州天正专利事务所有限公司 33201 代理人 黄美娟;王兵
主权项 1.一种基于联合抑制的麦克风阵列语音增强方法,包括以下步骤:步骤1,构建麦克风阵列、以接收外界模拟信号,由两个以上全指向性麦克风组成线性、圆形或球形阵列;将接收到的模拟信号转换为待处理的数字信号;步骤2,分析所述的数字信号,获取目标语音相对阵列中每个阵元的相对时延;根据时延,以阵列中某个阵元接收的语音信号作为参考,对其他阵元接收到的数字信号进行时延补偿,获得补偿后的信号;利用子带分解分别将每个阵元的时延补偿信号分解成若干个子带信号,然后分别对每个子带信号进行固定波束形成,以获得每个频带范围内目标声源方向的初步增益;包括以下子步骤:2.1,分别获取目标声源到达基准麦克风和其他麦克风的相对时延,第i个麦克风接受的信号相对基准麦克风1的信号时延,其时延值通过公式1来估计:<maths num="0001"><![CDATA[<math><mrow><msub><mi>R</mi><mrow><msub><mi>x</mi><mn>1</mn></msub><msub><mi>x</mi><mi>i</mi></msub></mrow></msub><mo>=</mo><mfrac><mn>1</mn><mrow><mi>T</mi><mo>-</mo><mi>&tau;</mi></mrow></mfrac><msubsup><mo>&Integral;</mo><mi>&tau;</mi><mi>T</mi></msubsup><mi>x</mi><msub><mi>b</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mi>x</mi><msub><mi>b</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mi>&tau;</mi><mo>)</mo></mrow><mi>dt</mi></mrow></math>]]></maths>……公式1其中:T为麦克风阵列采集语音信号的实际时间,xb<sub>1</sub>(t),xb<sub>i</sub>(t)分别对应的是t时刻第一麦克风,即基准麦克风,第i麦克风所对应的数字信号,<img file="FDA00003289979300012.GIF" wi="91" he="76" />表示xb<sub>1</sub>(t),xb<sub>i</sub>(t)的互相关函数,其最大值对应的τ就是两个麦克风相对时延值;2.2,分别对xb<sub>2</sub>(t),…,xb<sub>n</sub>(t)进行时延校正,获得xb<sub>2</sub>(t)的校正后信号x<sub>2</sub>(t),依次类推,xb<sub>n</sub>(t)的校正后信号x<sub>n</sub>(t);为了统一书写格式,把基准麦克风信号xb<sub>1</sub>(t)以x<sub>1</sub>(t)代替;2.3,利用子带分解方法分别把上述时延补偿后的信号分解成k个子带:x<sub>1</sub>(t)分解成x-1<sub>sub-1</sub>(t),x-1<sub>sub-2</sub>(t),……,x-1<sub>sub-k</sub>(t);x<sub>2</sub>(t)到x<sub>n</sub>(t)依次类推;2.4,对每个子带分别进行固定波束形成,第i个子带的固定波束形成获得的信号yb<sub>sub-i</sub>(t)由公式2计算:<maths num="0002"><![CDATA[<math><mrow><msub><mi>yb</mi><mrow><mi>sub</mi><mo>-</mo><mi>i</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mi>n</mi></mfrac><munderover><mi>&Sigma;</mi><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msub><mrow><mi>x</mi><mo>-</mo><mi>m</mi></mrow><mrow><mi>sub</mi><mo>-</mo><mi>i</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow></mrow></math>]]></maths>……公式2步骤3,利用阻塞矩阵分别获得每个子带内的噪音参考信号;步骤4,利用变步长归一化LMS算法对步骤2的每个子带进行自适应滤波处理,处理结束后进行子带合并处理,获得输出信号e;步骤5,利用阵列中两个阵元补偿后的信号进行递推噪音互功率谱密度估计(Iterative noise Cross Power Spectral Density,ICPSD)算法,获得去除相关噪音的滤波器H,结合步骤4获得的增强信号e,进而获得最终的目标语音输出y;包括以下子步骤:5.1、对步骤2中得到的信号x<sub>1</sub>(t),x<sub>n</sub>(t)分别进行短时傅里叶变换并进行分帧和加窗操作得到X<sub>1</sub>(f,l),X<sub>n</sub>(f,l),其中f表示频率因子,l代表第几帧;用<img file="FDA00003289979300022.GIF" wi="95" he="63" />和<img file="FDA00003289979300023.GIF" wi="94" he="65" />分别表示为第1和第n两个阵元接收信号的互功率谱密度(Cross Power Spectral Density,CPSD)以及两个阵元接收信号的估计噪音的互功率谱密度;<img file="FDA00003289979300025.GIF" wi="92" he="69" />和<img file="FDA00003289979300024.GIF" wi="101" he="67" />分别为这两个阵元信号的功率谱密度(Power Spectral Density,PSD);则滤波器H(f,l)可由公式3计算:<maths num="0003"><![CDATA[<math><mrow><mi>H</mi><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mfrac><mrow><mo>|</mo><msub><mi>P</mi><mrow><msub><mi>X</mi><mn>1</mn></msub><msub><mi>X</mi><mi>n</mi></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>|</mo></mrow><msqrt><msub><mi>P</mi><mrow><msub><mi>X</mi><mn>1</mn></msub><msub><mi>X</mi><mn>1</mn></msub></mrow></msub><mo>.</mo><mo>*</mo><msub><mi>P</mi><mrow><msub><mi>X</mi><mi>n</mi></msub><msub><mi>X</mi><mi>n</mi></msub></mrow></msub></msqrt></mfrac><mo>.</mo><mo>*</mo><mfrac><mrow><mi>R</mi><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow></mrow><mrow><mi>R</mi><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>+</mo><mn>1</mn></mrow></mfrac></mrow></math>]]></maths>……公式35.2、公式3中的R(f,l)由公式4定义:<maths num="0004"><![CDATA[<math><mrow><mi>R</mi><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>&lambda;</mi><mi>d</mi></msub><mi>H</mi><msup><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mn>2</mn></msup><mo>.</mo><mo>*</mo><mfrac><mrow><mo>|</mo><msub><mi>X</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>.</mo><mo>*</mo><msub><mi>X</mi><mi>n</mi></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>*</mo><mo>|</mo></mrow><mrow><mo>|</mo><msub><mi>P</mi><mrow><msub><mi>N</mi><mn>1</mn></msub><msub><mi>N</mi><mi>n</mi></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>|</mo></mrow></mfrac><mo>+</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>&lambda;</mi><mi>d</mi></msub><mo>)</mo></mrow><msub><mi>R</mi><mi>p</mi></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow></mrow></math>]]></maths>…公式45.3、公式4中的R<sub>p</sub>(f,l)由公式5定义:<maths num="0005"><![CDATA[<math><mrow><msub><mi>R</mi><mi>p</mi></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><mfrac><mrow><mo>|</mo><msub><mi>X</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>.</mo><mo>*</mo><msub><mi>X</mi><mi>n</mi></msub><msup><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>*</mo></msup></mrow><mrow><mo>|</mo><msub><mi>P</mi><mrow><msub><mi>N</mi><mn>1</mn></msub><msub><mi>N</mi><mi>n</mi></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>|</mo></mrow></mfrac><mo>-</mo><mn>1,0</mn><mo>)</mo></mrow></mrow></math>]]></maths>……公式55.4、估计噪音互功率谱密度由公式6计算:<maths num="0006"><![CDATA[<math><mrow><msub><mi>P</mi><mrow><msub><mi>N</mi><mn>1</mn></msub><msub><mi>N</mi><mi>n</mi></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>&lambda;</mi><mi>n</mi></msub><msub><mi>P</mi><mrow><msub><mi>N</mi><mn>1</mn></msub><msub><mi>N</mi><mi>n</mi></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>&lambda;</mi><mi>n</mi></msub><mo>)</mo></mrow><mo>|</mo><msub><mi>X</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>.</mo><mo>*</mo><msub><mi>X</mi><mi>n</mi></msub><msup><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>*</mo></msup><mo>|</mo><mo>.</mo><mo>*</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>H</mi><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn><mi></mi><mo>)</mo></mrow><mo>)</mo></mrow></mrow></math>]]></maths>……公式6上面各式中的λ<sub>n</sub>,λ<sub>d</sub>为标量,其值为接近1的小数,这两个标量的目的是使噪音功率谱跟踪速度变慢,防止在语音段噪音错误的跟踪到语音值,同时在噪音段也能正确估计出噪音谱;(·)<sup>*</sup>为复共轭;|·|表示取模运算;.*表示点乘运算;max(·)表示取最大值运算;5.5、语音功率谱密度<img file="FDA00003289979300035.GIF" wi="262" he="79" />和互功率谱密度<img file="FDA00003289979300036.GIF" wi="100" he="78" />分别通过下式求得:<maths num="0007"><![CDATA[<math><mrow><msub><mi>P</mi><mrow><msub><mi>X</mi><mn>1</mn></msub><msub><mi>X</mi><mn>1</mn></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>&lambda;</mi><mi>x</mi></msub><msub><mi>P</mi><mrow><msub><mi>X</mi><mn>1</mn></msub><msub><mi>X</mi><mn>1</mn></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>&lambda;</mi><mi>X</mi></msub><mo>)</mo></mrow><mo>|</mo><msub><mi>X</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>.</mo><mo>*</mo><msub><mi>X</mi><mn>1</mn></msub><msup><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>*</mo></msup><mo>|</mo></mrow></math>]]></maths>……公式7<maths num="0008"><![CDATA[<math><mrow><msub><mi>P</mi><mrow><msub><mi>X</mi><mi>n</mi></msub><msub><mi>X</mi><mi>n</mi></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>&lambda;</mi><mi>x</mi></msub><msub><mi>P</mi><mrow><msub><mi>X</mi><mi>n</mi></msub><msub><mi>X</mi><mi>n</mi></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>&lambda;</mi><mi>X</mi></msub><mo>)</mo></mrow><mo>|</mo><msub><mi>X</mi><mi>n</mi></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>.</mo><mo>*</mo><msub><mi>X</mi><mi>n</mi></msub><msup><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>*</mo></msup><mo>|</mo></mrow></math>]]></maths>……公式8<maths num="0009"><![CDATA[<math><mrow><msub><mi>P</mi><mrow><msub><mi>X</mi><mn>1</mn></msub><msub><mi>X</mi><mi>n</mi></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>&lambda;</mi><mi>x</mi></msub><msub><mi>P</mi><mrow><msub><mi>X</mi><mn>1</mn></msub><msub><mi>X</mi><mi>n</mi></msub></mrow></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>&lambda;</mi><mi>X</mi></msub><mo>)</mo></mrow><mo>|</mo><msub><mi>X</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>.</mo><mo>*</mo><msub><mi>X</mi><mi>n</mi></msub><msup><mrow><mo>(</mo><mi>f</mi><mo>,</mo><mi>l</mi><mo>)</mo></mrow><mo>*</mo></msup><mo>|</mo></mrow></math>]]></maths>……公式9为了能让语音互功率谱能在语音段迅速跟踪到真实语音信息,上式中标量λ<sub>x</sub>∈[0.6,0.7];5.6、将步骤4获得的增强信号e(t)进行短时傅里叶变换得到E(f,l),则获得最终的语音增强频域信号Y(f,l)由公式10计算得到:Y(f,l)=E(f,l).*H(f,l)……公式105.7、公式10计算得到的Y(f,l)进行短时反傅里叶变换得到最终的语音增强信号y(t)。
地址 310027 浙江省杭州市西湖区浙大路38号