发明名称 三维空间声源定位方法
摘要 三维空间声源定位方法,是采用可移动小型麦克风阵列和基于时延估计的声源定位技术进行三维空间声源定位方法,用小型麦克风阵列采集一段时间的目标声源信号,使用互相关的算法计算其中各个麦克风之间的时间差,把该时间差代入方位角度和仰角的计算公式得出目标声源的方位角度和仰角,然后将该小型麦克风阵列沿着一定的方位角度移动一段距离,重复上述操作,得出此时目标声源的方位角度和仰角,通过对目标声源的两次的方位角和仰角的测量,计算出声源目标的距离。本发明方法所采用的测量声源目标的方法为被动法,测量过程中小型麦克风阵列进行了移动,克服了现有技术的测量声源目标距离精度低和采用主动法来测量声源目标距离成本高并不安全的缺点。
申请公布号 CN103064061B 申请公布日期 2014.06.11
申请号 CN201310001460.1 申请日期 2013.01.05
申请人 河北工业大学 发明人 杨鹏;徐勤奇;孙昊;祖丽楠;郑昀;尹哲;吴秀谦
分类号 G01S5/30(2006.01)I 主分类号 G01S5/30(2006.01)I
代理机构 天津翰林知识产权代理事务所(普通合伙) 12210 代理人 胡安朋
主权项 1.三维空间声源定位方法,其特征在于:是采用可移动小型麦克风阵列和基于时延估计的声源定位技术进行三维空间声源定位方法,A.该方法所用的装置包括小型麦克风阵列、供电调理设备、数据采集卡和上位机,其中小型麦克风阵列由四个独立且特性相同的麦克风分别位于正四面体的四个顶点构成,上位机中包括时延计算模型、方位角计算模型、仰角计算模型以及距离计算模型;每个麦克风和供电调理设备需要一条BNC接头的数据线相连接,供电调理设备通过4条BNC接头的数据线和整个麦克风阵列相连接以为后者供电,供电调理设备还通过4条BNC接头的数据线和数据采集卡相连接,数据采集卡和上位机通过一条usb数据线连接;B.用上述装置进行三维空间声源定位方法的步骤是:三维空间声源定位包括确定声源目标的方位角B、仰角F、声源目标离麦克风阵列底面的中心点的水平距离d<sub>2</sub>和声源目标到小型麦克风阵列底面的中心点的距离D,第一步,测定声源目标在小型麦克风阵列移动前的方位角A和在小型麦克风阵列移动前的仰角E小型麦克风阵列为正四面体,设正四面体底面的中心为坐标原点O,坐标原点O正前方位置的麦克风为S1,坐标原点O右边位置的麦克风为S2,坐标原点O左边位置的麦克风为S3,坐标原点O上方位置的麦克风为S4,(1)由上位机中的时延计算模型进行小型麦克风阵列中各个麦克风相对的时延估计在一个根据测定环境条件选定的位置,用小型麦克风阵列采集一段时间为10ms~30ms的目标声音信号,声音信号通过数据采集卡传到上位机,上位机首先计算出声音信号到达分别位于正四面体的四个顶点的四个麦克风之间的相对时间差,即声音信号到达麦克风S2、麦克风S3和麦克风S4的时刻与声音信号到达麦克风S1的时刻之间的时延值,具体方法如下:假设两个麦克风接收声音信号的离散事件信号模型的坐标为:x<sub>1</sub>(t)=a<sub>1</sub>s(t)+n<sub>1</sub>(t),x<sub>2</sub>(t)=a<sub>2</sub>s(t-τ<sub>12</sub>)+n<sub>2</sub>(t)   (1)上式中,α<sub>i</sub>为声源信号的衰减系数,s(t)为声源目标信号,x<sub>i</sub>(t)为麦克风采集的声音信号,n<sub>i</sub>(t)为声源附加的噪声信号,τ<sub>12</sub>为两个麦克风拾取声音信号的延迟时间,即时延,将采集的声音信号x<sub>i</sub>(t),i=1,2通过傅里叶变换,由时域转化成频域信号X<sub>i</sub>(ω),其互功率谱函数为:<maths num="0001"><![CDATA[<math><mrow><msub><mi>G</mi><mrow><msub><mi>X</mi><mn>1</mn></msub><msub><mi>X</mi><mn>2</mn></msub></mrow></msub><mrow><mo>(</mo><mi>&omega;</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>X</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>&omega;</mi><mo>)</mo></mrow><msup><msub><mi>X</mi><mn>2</mn></msub><mo>*</mo></msup><mrow><mo>(</mo><mi>&omega;</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow></math>]]></maths>其互相关函数为:<maths num="0002"><![CDATA[<math><mrow><msub><mi>R</mi><mrow><msub><mi>x</mi><mn>1</mn></msub><msub><mi>x</mi><mn>2</mn></msub></mrow></msub><mrow><mo>(</mo><mi>&tau;</mi><mo>)</mo></mrow><mo>=</mo><munderover><mo>&Integral;</mo><mn>0</mn><mi>&pi;</mi></munderover><msub><mi>G</mi><mrow><msub><mi>X</mi><mn>1</mn></msub><msub><mi>X</mi><mn>2</mn></msub></mrow></msub><mrow><mo>(</mo><mi>&omega;</mi><mo>)</mo></mrow><msup><mi>e</mi><mi>j&omega;&tau;</mi></msup><mi>d&omega;</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow></math>]]></maths>最后进行峰值检测,互相关函数的峰值对应的横坐标的点就是时延值t<sub>21</sub>,用同样的方法可以计算出时延值t<sub>31</sub>和t<sub>41</sub>,最终得出麦克风S2、麦克风S3和麦克风S4与麦克风S1之间的时延值分别为:t<sub>21</sub>、t<sub>31</sub>、t<sub>41</sub>;(2)由上位机中的方位角计算模型和仰角计算模型进行计算声源目标在小型麦克风阵列移动前的方位角A和在小型麦克风阵列移动前的仰角E设Q为声源目标点,坐标为Q(x,y,z),坐标原点O到声源目标点Q的距离为r,OQ在XOY平面的投影为OQ′,定义OQ′与X轴的夹角为α,OQ与Z轴的夹角为β,假设S1到坐标原点O的距离为a,则四个麦克风的坐标分别为:S<sub>1</sub>=(a,0,0)、<maths num="0003"><![CDATA[<math><mrow><msub><mi>S</mi><mn>2</mn></msub><mo>=</mo><mrow><mo>(</mo><mo>-</mo><mi>a</mi><mo>/</mo><mn>2</mn><mo>,</mo><msqrt><mn>3</mn></msqrt><mi>a</mi><mo>/</mo><mn>2,0</mn><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths><maths num="0004"><![CDATA[<math><mrow><msub><mi>S</mi><mn>3</mn></msub><mo>=</mo><mrow><mo>(</mo><mo>-</mo><mi>a</mi><mo>/</mo><mn>2</mn><mo>,</mo><mo>-</mo><msqrt><mn>3</mn></msqrt><mi>a</mi><mo>/</mo><mn>2,0</mn><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths><maths num="0005"><![CDATA[<math><mrow><msub><mi>S</mi><mn>4</mn></msub><mo>=</mo><mrow><mo>(</mo><mn>0,0</mn><mo>,</mo><msqrt><mn>2</mn></msqrt><mi>a</mi><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>从上述(1)得到声音信号到达麦克风S2、麦克风S3和麦克风S4的时刻与声音信号到达麦克风S1的时刻之间的时延值分别为:t<sub>21</sub>、t<sub>31</sub>、t<sub>41</sub>,这时得出声源的方位角公式为:<maths num="0006"><![CDATA[<math><mrow><mi>&alpha;</mi><mo>&ap;</mo><mi>arctan</mi><msqrt><mn>3</mn></msqrt><mfrac><mrow><msub><mi>t</mi><mn>31</mn></msub><mo>-</mo><msub><mi>t</mi><mn>21</mn></msub></mrow><mrow><msub><mi>t</mi><mn>21</mn></msub><mo>+</mo><msub><mi>t</mi><mn>31</mn></msub></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow></math>]]></maths>上述公式(4)计算得出的α的角度不一定在规定方位角范围内,是因为象限的问题,公式(4)Arctan计算的结果范围为-90度到90度,而所需要的规定方位角结果范围为-180度到180度,这就需要进行分象限处理,经由如下的方位角象限处理过程,得出第一次测定声源目标在小型麦克风阵列移动前的方位角A为:当计算结果α>0时,并且t<sub>31</sub>&gt;0时,方位角A=α,当计算结果α>0时,并且t<sub>31</sub>&lt;0时,方位角A=-180+α,当计算结果α<0时,并且t<sub>21</sub>&gt;0时,方位角A=α,当计算结果α<0时,并且t<sub>21</sub>&lt;0时,方位角A=180+α,这时得出声源的仰角公式为:<maths num="0007"><![CDATA[<math><mrow><mi>&beta;</mi><mo>&ap;</mo><mi>arccot</mi><mfrac><mrow><msub><mi>t</mi><mn>21</mn></msub><mo>+</mo><msub><mi>t</mi><mn>31</mn></msub><mo>-</mo><msub><mrow><mn>3</mn><mi>t</mi></mrow><mn>41</mn></msub></mrow><mrow><mn>2</mn><msqrt><mn>2</mn></msqrt><msqrt><msubsup><mi>t</mi><mn>21</mn><mn>2</mn></msubsup><mo>+</mo><msubsup><mi>t</mi><mn>31</mn><mn>2</mn></msubsup><mo>-</mo><msub><mi>t</mi><mn>21</mn></msub><msub><mi>t</mi><mn>31</mn></msub></msqrt></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>上述公式(5)计算得出β的角度不一定在规定仰角范围内,是因为象限的问题,公式(5)Arccot计算的结果范围为-90度到90度,而需要的规定仰角结果范围为0度到180度,根据计算的几何模型,这里进行分象限处理,经由如下的仰角象限处理过程,得出第一次测定声源目标在小型麦克风阵列移动前的仰角E为:当计算结果β>0时,仰角E=β,当计算结果β<0时,仰角E=180+β,第二步,移动小型麦克风阵列在第一步完成之后,通过移动机器人原地顺时针转动χ-A度实现将小型麦克风阵列顺时针转动χ-A度,0度<χ<180度,再将小型麦克风阵列沿阵列方位角度0度方向也即移动机器人正前方向前移动距离L;第三步,测定声源目标在小型麦克风阵列移动后的方位角B和在小型麦克风阵列移动后的仰角F在第二步操作完成后,在小型麦克风阵列移动后到达的位置上,重复同第一步的操作和计算,结果是,(1)由上位机中的时延计算模型进行小型麦克风阵列中各个麦克风相对的时延估计最终得出麦克风S2、麦克风S3和麦克风S4与麦克风S1之间的时延值分别为:t<sub>21</sub>、t<sub>31</sub>、t<sub>41</sub>;(2)由上位机中的方位角计算模型和仰角计算模型进行计算声源目标在小型麦克风阵列移动后的方位角B和在小型麦克风阵列移动后的仰角F得出第二次测定声源目标在小型麦克风阵列移动后的方位角B为:当计算结果α>0时,并且t<sub>31</sub>&gt;0时,方位角B=α,当计算结果α>0时,并且t<sub>31</sub>&lt;0时,方位角B=-180+α,当计算结果α<0时,并且t<sub>21</sub>&gt;0时,方位角B=α,当计算结果α<0时,并且t<sub>21</sub>&lt;0时,方位角B=180+α,得出第二次测定声源目标在小型麦克风阵列移动后的仰角F为:当计算结果β>0时,仰角F=β,当计算结果β<0时,仰角F=180+β,第四步,计算出声源目标到麦克风阵列底面的中心点的水平距离由上位机中的距离计算模型计算出声源目标到麦克风阵列底面的中心点的水平距离,计算公式为:d<sub>2</sub>=L*sin(χ)/sin(180-χ-δ)   (6)d<sub>2</sub>为声源目标到麦克风阵列底面的中心点的水平距离,小型麦克风阵列2的移动方向的反方向O<sub>2</sub>O<sub>1</sub>和小型麦克风阵列2移动后的声源目标3的方向O<sub>2</sub>Z的夹角为δ,也即δ=180-B;第五步,计算出声源目标到小型麦克风阵列底面的中心点的距离由上位机中的距离计算模型计算出声源目标到小型麦克风阵列底面的中心点的距离,计算公式为:D=d<sub>2</sub>/sin(F)   (7)D为声源目标到小型麦克风阵列底面的中心点的距离;第六步,三维空间声源定位数据的显示输出通过计算机的外设,即显示器显示或者通过网卡输出到别的电脑上显示输出声源目标的方位角B、声源目标的仰角F、声源目标到麦克风阵列底面的中心点的水平距离d<sub>2</sub>和声源目标到小型麦克风阵列底面的中心点的距离D,由此完成三维空间声源定位。
地址 300401 天津市北辰区西平道5340号河北工业大学