本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種聲源的定位方法、裝置及系統(tǒng)。
背景技術(shù):
在會(huì)議電視進(jìn)行中,需要對(duì)發(fā)言人重點(diǎn)拍攝,以獲取其肢體語(yǔ)言和面部表情等重要信息。當(dāng)講話人不在攝像范圍內(nèi)時(shí),傳統(tǒng)的做法是通過(guò)人工使用遙控器來(lái)控制攝像頭旋轉(zhuǎn),使講話人在可攝像范圍內(nèi);尤其當(dāng)說(shuō)話人頻繁發(fā)生變更,這種手動(dòng)的方式非常不方便,而且由于延遲操作會(huì)帶來(lái)重要信息的丟失。自動(dòng)跟蹤講話人的攝像頭可以彌補(bǔ)以上不足,給參會(huì)雙方帶來(lái)更好的體驗(yàn)。
可跟蹤講話人的攝像頭采用了聲源定位技術(shù)。利用麥克風(fēng)陣列對(duì)聲源方位進(jìn)行計(jì)算是聲源定位的基本方法。麥克風(fēng)陣列的設(shè)計(jì)除了跟產(chǎn)品的需求屬性和成本考慮有關(guān)、還跟聲源定位算法密切相關(guān)。特別地,麥克風(fēng)陣列的拓?fù)浣Y(jié)構(gòu),尺寸,以及麥克風(fēng)的數(shù)量跟采用的聲源定位算法相關(guān),兩者是相輔相成,密不可分的關(guān)系。另外,聲源定位算法很大程度上決定了麥克風(fēng)陣列和攝像頭的位置關(guān)系??傊筛欀v話人的攝像頭裝置跟聲源定位算法密切相關(guān)。
在相關(guān)技術(shù)中,麥克風(fēng)陣列的聲源定位方法中的基于最大輸出功率的可控波束形成(可控功率響應(yīng))技術(shù),可控功率響應(yīng)技術(shù)必須從一組離散的波束形成角度中選取波達(dá)方向,這樣當(dāng)聲源的位置較遠(yuǎn)時(shí),其分辨率就會(huì)明顯下降。此外,波束形成方法是非線性優(yōu)化問(wèn)題,需要進(jìn)行全局搜索,因此運(yùn)算量大,不易實(shí)時(shí)實(shí)現(xiàn)。上述缺點(diǎn)限制了該方法的應(yīng)用。
針對(duì)相關(guān)技術(shù)中,可控功率響應(yīng)技術(shù)分辨率不高和運(yùn)算量大的問(wèn)題,目前還沒(méi)有有效的解決方案。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供了一種聲源的定位方法、裝置及系統(tǒng),以至少解決相關(guān)技術(shù)中可控功率響應(yīng)技術(shù)分辨率不高和運(yùn)算量大的問(wèn)題。
根據(jù)本發(fā)明的一個(gè)方面,提供了一種聲源的定位方法,包括:
獲取麥克風(fēng)陣列中各個(gè)麥克風(fēng)的信號(hào),其中,所述麥克風(fēng)陣列用于采集聲源的聲音;
依據(jù)所述信號(hào)的分幀,獲取所述各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng);
獲取所述多個(gè)麥克風(fēng)對(duì)的所述可控功率響應(yīng)之和,依據(jù)所述可控功率響應(yīng)之和的最大值確定所述聲源與所述麥克風(fēng)陣列的方向角;
依據(jù)所述方向角確定所述麥克風(fēng)陣列和所述聲源的相對(duì)位置關(guān)系。
進(jìn)一步的,依據(jù)所述信號(hào)的分幀,計(jì)算所述各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng)包括:
選取所述麥克風(fēng)陣列中一個(gè)麥克風(fēng)的信號(hào)中的語(yǔ)音幀作為語(yǔ)音活性檢測(cè)的參考信號(hào),依據(jù)所述參考信號(hào)計(jì)算所述各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng)。
進(jìn)一步的,所述麥克風(fēng)陣列包括:
在同一坐標(biāo)系平面內(nèi),所述坐標(biāo)系平面的橫坐標(biāo)軸向上的m個(gè)麥克風(fēng)和所述坐標(biāo)系平面的縱坐標(biāo)軸向上的n個(gè)麥克風(fēng)組成了一個(gè)l型拓?fù)浣Y(jié)構(gòu),所述m個(gè)麥克風(fēng)和所述n個(gè)麥克風(fēng)均等間隔排列;
所述麥克風(fēng)陣列的多個(gè)麥克風(fēng)對(duì)包括:所述m個(gè)麥克風(fēng)組成(m*(m-1))/2對(duì)麥克風(fēng);所述n個(gè)麥克風(fēng)組成(n*(n-1))/2對(duì)麥克風(fēng)。
進(jìn)一步的,計(jì)算所述多個(gè)麥克風(fēng)對(duì)的所述可控功率響應(yīng)之和,依據(jù)所述可控功率響應(yīng)之和的最大值確定所述聲源與所述麥克風(fēng)陣列的方向角包括:
依據(jù)所述麥克風(fēng)陣列建立三維坐標(biāo)系,所述三維坐標(biāo)系包括:x軸,y軸,z軸,原點(diǎn)o,以及聲源點(diǎn)p,其中,x軸為所述橫坐標(biāo)軸向上的m個(gè)麥克風(fēng),y軸為所述縱坐標(biāo)軸向上的n個(gè)麥克風(fēng);
計(jì)算所述多個(gè)麥克風(fēng)對(duì)的時(shí)延τ:
其中,d為麥克風(fēng)對(duì)在坐標(biāo)軸上的間隔,c為聲速,θ為從正z軸來(lái)看,自x軸按逆時(shí)針?lè)较蜣D(zhuǎn)到線段os所轉(zhuǎn)過(guò)的角,點(diǎn)s為聲源點(diǎn)p在x軸與y軸所屬xoy面上的投影,其中,所述線段os為原點(diǎn)o到點(diǎn)s的線段;
計(jì)算所述多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng)之和e:
p,q為所述麥克風(fēng)對(duì)的一對(duì)編號(hào),m為x軸上的麥克風(fēng)的數(shù)量,
為所述麥克風(fēng)對(duì)的可控功率;
獲取e取最大值的方向角θ:
θ=argmaxe(θ)。
進(jìn)一步的,依據(jù)所述方向角確定所述麥克風(fēng)陣列和所述聲源的相對(duì)位置關(guān)系包括:
所述方向角θ計(jì)算所述聲源在所述三維坐標(biāo)系的仰俯角γ;
γ=arctan(a)
λ為有向線段op與z軸正向的夾角,所述線段op為原點(diǎn)o到聲源點(diǎn)p的線段。
進(jìn)一步的,計(jì)算所述聲源在所述三維坐標(biāo)系的所述方向角θ和所述仰俯角γ包括:
以x軸或y軸的軸向的0度到180度角度分為h個(gè)區(qū)間,在所述分幀的預(yù)定幀數(shù)內(nèi),統(tǒng)計(jì)所述方向角θ和所述仰俯角γ落入所述區(qū)間的次數(shù),選取所述次數(shù)最大的區(qū)間,將所述次數(shù)最大的區(qū)間的所述方向角θ和所述仰俯角γ分別取平均值,分別得到所述聲源在所述三維坐標(biāo)系的所述方向角θ和所述仰俯角γ,其中,h為正整數(shù)。
根據(jù)本發(fā)明的另一個(gè)方面,還提供了一種聲源的定位裝置,包括:
第一獲取模塊,用于獲取麥克風(fēng)陣列中各個(gè)麥克風(fēng)的信號(hào),其中,所述麥克風(fēng)陣列用于采集聲源的聲音;
第二獲取模塊,用于依據(jù)所述信號(hào)的分幀,獲取所述各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng);
第三獲取模塊,用于獲取所述多個(gè)麥克風(fēng)對(duì)的所述可控功率響應(yīng)之和,依據(jù)所述可控功率響應(yīng)之和的最大值確定所述聲源與所述麥克風(fēng)陣列的方向角;
位置模塊,用于依據(jù)所述方向角確定所述麥克風(fēng)陣列和所述聲源的相對(duì)位置關(guān)系。
進(jìn)一步的,所述第二獲取模塊包括:
參考單元,用于選取所述麥克風(fēng)陣列中一個(gè)麥克風(fēng)的信號(hào)中的語(yǔ)音幀作為語(yǔ)音活性檢測(cè)的參考信號(hào),依據(jù)所述參考信號(hào)計(jì)算所述各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng)。
根據(jù)本發(fā)明的另一個(gè)方面,還提供了一種聲源的定位系統(tǒng),包括:
麥克風(fēng)陣列控制單元,以及攝像頭,其中,
所述麥克風(fēng)陣列控制單元,用于獲取麥克風(fēng)陣列中各個(gè)麥克風(fēng)的信號(hào),其中,所述麥克風(fēng)陣列用于采集聲源的聲音;依據(jù)所述信號(hào)的分幀,獲取所述各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng);獲取所述多個(gè)麥克風(fēng)對(duì)的所述可控功率響應(yīng)之和,依據(jù)所述可控功率響應(yīng)之和的最大值確定所述聲源與所述麥克風(fēng)陣列的方向角;依據(jù)所述方向角確定所述麥克風(fēng)陣列和所述聲源的相對(duì)位置關(guān)系;將所述相對(duì)位置關(guān)系發(fā)送給所述攝像頭;
所述攝像頭,用于依據(jù)所述相對(duì)位置關(guān)系調(diào)整所述攝像頭34的位置。
進(jìn)一步的,所述麥克風(fēng)陣列通過(guò)以下方式實(shí)現(xiàn):在同一坐標(biāo)系平面內(nèi),所述坐標(biāo)系平面的橫坐標(biāo)軸向上的m個(gè)麥克風(fēng)和所述坐標(biāo)系平面的縱坐標(biāo)軸向上的n個(gè)麥克風(fēng)組成了一個(gè)l型拓?fù)浣Y(jié)構(gòu),所述m個(gè)麥克風(fēng)和所述n個(gè)麥克風(fēng)均等間隔排列;
所述麥克風(fēng)陣列的多個(gè)麥克風(fēng)對(duì)包括:所述m個(gè)麥克風(fēng)組成(m*(m-1))/2對(duì)麥克風(fēng);所述n個(gè)麥克風(fēng)組成(n*(n-1))/2對(duì)麥克風(fēng)。
通過(guò)本發(fā)明,獲取麥克風(fēng)陣列中各個(gè)麥克風(fēng)的信號(hào),其中,該麥克風(fēng)陣列用于采集聲源的聲音,依據(jù)該信號(hào)的分幀,獲取該各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng),獲取該多個(gè)麥克風(fēng)對(duì)的該可控功率響應(yīng)之和,依據(jù)該可控功率響應(yīng)之和的最大值確定該聲源與該麥克風(fēng)陣列的方向角,依據(jù)該方向角確定該麥克風(fēng)陣列和該聲源的相對(duì)位置關(guān)系,解決了可控功率響應(yīng)技術(shù)分辨率不高和運(yùn)算量大的問(wèn)題,提高了聲源定位的實(shí)時(shí)性、穩(wěn)定性及精度。
附圖說(shuō)明
此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
圖1是根據(jù)本發(fā)明實(shí)施例的一種聲源的定位方法的流程圖;
圖2是根據(jù)本發(fā)明實(shí)施例的一種聲源的定位裝置的結(jié)構(gòu)框圖;
圖3是根據(jù)本發(fā)明實(shí)施例的一種聲源的定位系統(tǒng)的結(jié)構(gòu)框圖;
圖4是根據(jù)本發(fā)明優(yōu)選實(shí)施例的一種可跟蹤講話人攝像頭系統(tǒng)的示意圖;
圖5是根據(jù)本發(fā)明優(yōu)選實(shí)施例的聲源定位算法的流程示意圖;
圖6是根據(jù)本發(fā)明實(shí)施例的麥克風(fēng)陣列三維坐標(biāo)系模型的示意圖;
圖7是根據(jù)本發(fā)明優(yōu)選實(shí)施例的水平偏角和仰俯角的關(guān)系示意圖。
具體實(shí)施方式
下文中將參考附圖并結(jié)合實(shí)施例來(lái)詳細(xì)說(shuō)明本發(fā)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。
需要說(shuō)明的是,本發(fā)明的說(shuō)明書(shū)和權(quán)利要求書(shū)及上述附圖中的術(shù)語(yǔ)“第一”、“第二”等是用于區(qū)別類似的對(duì)象,而不必用于描述特定的順序或先后次序。
在本實(shí)施例中提供了一種聲源的定位方法,圖1是根據(jù)本發(fā)明實(shí)施例的一種聲源的定位方法的流程圖,如圖1所示,該流程包括如下步驟:
步驟s102,獲取麥克風(fēng)陣列中各個(gè)麥克風(fēng)的信號(hào),其中,該麥克風(fēng)陣列用于采集聲源的聲音;
步驟s104,依據(jù)該信號(hào)的分幀,獲取該各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng);
步驟s106,獲取該多個(gè)麥克風(fēng)對(duì)的該可控功率響應(yīng)之和,依據(jù)該可控功率響應(yīng)之和的最大值確定該聲源與該麥克風(fēng)陣列的方向角;
步驟s108,依據(jù)該方向角確定該麥克風(fēng)陣列和該聲源的相對(duì)位置關(guān)系。
通過(guò)上述步驟,獲取麥克風(fēng)陣列中各個(gè)麥克風(fēng)的信號(hào),其中,該麥克風(fēng)陣列用于采集聲源的聲音,依據(jù)該信號(hào)的分幀,獲取該各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng),獲取該多個(gè)麥克風(fēng)對(duì)的該可控功率響應(yīng)之和,依據(jù)該可控功率響應(yīng)之和的最大值確定該聲源與該麥克風(fēng)陣列的方向角,依據(jù)該方向角確定該麥克風(fēng)陣列和該聲源的相對(duì)位置關(guān)系,解決了可控功率響應(yīng)技術(shù)分辨率不高和運(yùn)算量大的問(wèn)題,提高了聲源定位的實(shí)時(shí)性、穩(wěn)定性及精度。
在本實(shí)施例中,依據(jù)該信號(hào)的分幀,計(jì)算該各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng)包括:
選取該麥克風(fēng)陣列中一個(gè)麥克風(fēng)的信號(hào)中的語(yǔ)音幀作為語(yǔ)音活性檢測(cè)的參考信號(hào),依據(jù)該參考信號(hào)計(jì)算該各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng)。
其中,該麥克風(fēng)陣列包括:
在同一坐標(biāo)系平面內(nèi),該坐標(biāo)系平面的橫坐標(biāo)軸向上的m個(gè)麥克風(fēng)和該坐標(biāo)系平面的縱坐標(biāo)軸向上的n個(gè)麥克風(fēng)組成了一個(gè)l型拓?fù)浣Y(jié)構(gòu),該m個(gè)麥克風(fēng)和該n個(gè)麥克風(fēng)均等間隔排列;
該麥克風(fēng)陣列的多個(gè)麥克風(fēng)對(duì)包括:該m個(gè)麥克風(fēng)組成(m*(m-1))/2對(duì)麥克風(fēng);該n個(gè)麥克風(fēng)組成(n*(n-1))/2對(duì)麥克風(fēng)。
在本實(shí)施例中,依據(jù)該麥克風(fēng)陣列建立三維坐標(biāo)系,該三維坐標(biāo)系包括:x軸,y軸,z軸,原點(diǎn)o,以及聲源點(diǎn)p,其中,x軸為該橫坐標(biāo)軸向上的m個(gè)麥克風(fēng),y軸為該縱坐標(biāo)軸向上的n個(gè)麥克風(fēng);
計(jì)算該多個(gè)麥克風(fēng)對(duì)的時(shí)延τ:
其中,d為麥克風(fēng)對(duì)在坐標(biāo)軸上的間隔,c為聲速,θ為從正z軸來(lái)看,自x軸按逆時(shí)針?lè)较蜣D(zhuǎn)到線段os所轉(zhuǎn)過(guò)的角,點(diǎn)s為聲源點(diǎn)p在x軸與y軸所屬xoy面上的投影,其中,該線段os為原點(diǎn)o到點(diǎn)s的線段;
計(jì)算該多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng)之和e:
p,q為該麥克風(fēng)對(duì)的一對(duì)編號(hào),m為x軸上的麥克風(fēng)的數(shù)量,
為該該麥克風(fēng)對(duì)的可控功率;
獲取e取最大值的方向角θ:
θ=argmaxe(θ)。
該方向角θ計(jì)算該聲源在該三維坐標(biāo)系的仰俯角γ;
γ=arctan(a)
λ為有向線段op與z軸正向的夾角,該線段op為原點(diǎn)o到聲源點(diǎn)p的線段。
在本實(shí)施例中,計(jì)算該聲源在該三維坐標(biāo)系的該方向角θ和該仰俯角γ包括:
以x軸或y軸的軸向的0度到180度角度分為h個(gè)區(qū)間,在該分幀的預(yù)定幀數(shù)內(nèi),統(tǒng)計(jì)該方向角θ和該仰俯角γ落入該區(qū)間的次數(shù),選取該次數(shù)最大的區(qū)間,將該次數(shù)最大的區(qū)間的該方向角θ和該仰俯角γ分別取平均值,分別得到該聲源在該三維坐標(biāo)系的該方向角θ和該仰俯角γ,其中,h為正整數(shù)。
在本實(shí)施例中還提供了一種聲源的定位裝置,該裝置用于實(shí)現(xiàn)上述實(shí)施例及優(yōu)選實(shí)施方式,已經(jīng)進(jìn)行過(guò)說(shuō)明的不再贅述。如以下所使用的,術(shù)語(yǔ)“模塊”可以實(shí)現(xiàn)預(yù)定功能的軟件和/或硬件的組合。盡管以下實(shí)施例所描述的裝置較佳地以軟件來(lái)實(shí)現(xiàn),但是硬件,或者軟件和硬件的組合的實(shí)現(xiàn)也是可能并被構(gòu)想的。
圖2是根據(jù)本發(fā)明實(shí)施例的一種聲源的定位裝置的結(jié)構(gòu)框圖,如圖2所示,該裝置包括:
第一獲取模塊22,用于獲取麥克風(fēng)陣列中各個(gè)麥克風(fēng)的信號(hào),其中,該麥克風(fēng)陣列用于采集聲源的聲音;
第二獲取模塊24,與第一獲取模塊22連接,用于依據(jù)該信號(hào)的分幀,獲取該各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng);
第三獲取模塊26,與第二獲取模塊24連接,用于獲取該多個(gè)麥克風(fēng)對(duì)的該可控功率響應(yīng)之和,依據(jù)該可控功率響應(yīng)之和的最大值確定該聲源與該麥克風(fēng)陣列的方向角;
位置模塊28,與第三獲取模塊26連接,用于依據(jù)該方向角確定該麥克風(fēng)陣列和該聲源的相對(duì)位置關(guān)系。
通過(guò)上述裝置,第一獲取模塊22獲取麥克風(fēng)陣列中各個(gè)麥克風(fēng)的信號(hào),其中,該麥克風(fēng)陣列用于采集聲源的聲音,第二獲取模塊24依據(jù)該信號(hào)的分幀,獲取該各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng),第三獲取模塊26獲取該多個(gè)麥克風(fēng)對(duì)的該可控功率響應(yīng)之和,依據(jù)該可控功率響應(yīng)之和的最大值確定該聲源與該麥克風(fēng)陣列的方向角,位置模塊28依據(jù)該方向角確定該麥克風(fēng)陣列和該聲源的相對(duì)位置關(guān)系,解決了可控功率響應(yīng)技術(shù)分辨率不高和運(yùn)算量大的問(wèn)題,提高了聲源定位的實(shí)時(shí)性、穩(wěn)定性及精度。
該第二獲取模塊24包括:
參考單元,用于選取該麥克風(fēng)陣列中一個(gè)麥克風(fēng)的信號(hào)中的語(yǔ)音幀作為語(yǔ)音活性檢測(cè)的參考信號(hào),依據(jù)該參考信號(hào)計(jì)算該各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng)。
圖3是根據(jù)本發(fā)明實(shí)施例的一種聲源的定位系統(tǒng)的結(jié)構(gòu)框圖,如圖3所示,該裝置包括:
麥克風(fēng)陣列控制單元32,以及攝像頭34,其中,
該麥克風(fēng)陣列控制單元32,用于獲取麥克風(fēng)陣列中各個(gè)麥克風(fēng)的信號(hào),其中,該麥克風(fēng)陣列用于采集聲源的聲音;依據(jù)該信號(hào)的分幀,獲取該各個(gè)麥克風(fēng)組成的多個(gè)麥克風(fēng)對(duì)的可控功率響應(yīng);獲取該多個(gè)麥克風(fēng)對(duì)的該可控功率響應(yīng)之和,依據(jù)該可控功率響應(yīng)之和的最大值確定該聲源與該麥克風(fēng)陣列的方向角;依據(jù)該方向角確定該麥克風(fēng)陣列和該聲源的相對(duì)位置關(guān)系;將該相對(duì)位置關(guān)系發(fā)送給該攝像頭34;
該攝像頭34,用于依據(jù)該相對(duì)位置關(guān)系調(diào)整該攝像頭34的位置。
進(jìn)一步的,該該麥克風(fēng)陣列通過(guò)以下方式實(shí)現(xiàn):在同一坐標(biāo)系平面內(nèi),該坐標(biāo)系平面的橫坐標(biāo)軸向上的m個(gè)麥克風(fēng)和該坐標(biāo)系平面的縱坐標(biāo)軸向上的n個(gè)麥克風(fēng)組成了一個(gè)l型拓?fù)浣Y(jié)構(gòu),該m個(gè)麥克風(fēng)和該n個(gè)麥克風(fēng)均等間隔排列;
該麥克風(fēng)陣列的多個(gè)麥克風(fēng)對(duì)包括:該m個(gè)麥克風(fēng)組成(m*(m-1))/2對(duì)麥克風(fēng);該n個(gè)麥克風(fēng)組成(n*(n-1))/2對(duì)麥克風(fēng)。
下面結(jié)合優(yōu)選實(shí)施例和實(shí)施方式對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。
本發(fā)明的優(yōu)選實(shí)施例提供一個(gè)簡(jiǎn)單實(shí)用可靠性高的跟蹤說(shuō)話人的攝像頭裝置,同時(shí)針對(duì)現(xiàn)有聲源定位算法的不足采取了一些改進(jìn)措施,提升了聲源定位的實(shí)時(shí)性、穩(wěn)定性及精度。
圖4是根據(jù)本發(fā)明優(yōu)選實(shí)施例的一種可跟蹤講話人攝像頭系統(tǒng)的示意圖,如圖4所示,該裝置包括:
全向麥克風(fēng)陣列42(相當(dāng)于該麥克風(fēng)陣列控制單元32);攝像頭44(相當(dāng)于攝像頭34);本發(fā)明的優(yōu)選實(shí)施例使用了多個(gè)高靈敏度的全向麥克風(fēng)陣列42,如圖4所示,全向麥克方陣列42且位于同一平面內(nèi)。橫排m個(gè)麥克風(fēng),豎排n個(gè)麥克風(fēng),橫豎排麥克風(fēng)組成了一個(gè)l型拓?fù)浣Y(jié)構(gòu)。橫豎排麥克風(fēng)分別等間隔排列。攝像頭44放置在橫排麥克風(fēng)陣列和豎排麥克風(fēng)陣列所構(gòu)成的90度角空間范圍內(nèi)。
本發(fā)明的優(yōu)選實(shí)施例使用橫排麥克風(fēng)采集的數(shù)據(jù)通過(guò)聲源定位算法來(lái)計(jì)算聲源的偏角,使用豎排麥克風(fēng)采集的數(shù)據(jù)并結(jié)合偏角來(lái)計(jì)算聲源的仰俯角。
聲源定位算法方面,本發(fā)明的優(yōu)選實(shí)施例使用了聲場(chǎng)的遠(yuǎn)場(chǎng)模型,提出了一種基于平面搜索的可控功率響應(yīng)(steeredresponsepower,簡(jiǎn)稱為spr)聲源定位技術(shù),相比普通的spr技術(shù),算法復(fù)雜度大幅度下降,準(zhǔn)確度也更高。該算法包括如下步驟:
步驟一、在三維坐標(biāo)系中建立麥克風(fēng)陣列模型,確定各麥克風(fēng)在坐標(biāo)中的位置。本發(fā)明中橫坐標(biāo)軸有m個(gè)麥克風(fēng),組成m*(m-1)/2對(duì)麥克風(fēng);縱坐標(biāo)軸有n個(gè)麥克風(fēng),組成n*(n-1)/2對(duì)麥克風(fēng);m和n均為大于1的整數(shù)。
步驟二、對(duì)各麥克風(fēng)接收到的信號(hào)進(jìn)行采樣,得到數(shù)字信號(hào),分幀計(jì)算。
步驟三、選取一個(gè)麥克風(fēng)的數(shù)據(jù)作語(yǔ)音活性檢測(cè)(voiceactivitydetection,簡(jiǎn)稱為vad),區(qū)分語(yǔ)音幀和噪聲幀,以后的步驟只處理語(yǔ)音幀。這一步可以極大地增加算法的準(zhǔn)確性。
步驟四、對(duì)各麥克風(fēng)的語(yǔ)音幀混疊加窗,本發(fā)明采用漢明窗,窗長(zhǎng)為1024,并做快速傅里葉變換dft變換。
步驟五、計(jì)算麥克風(fēng)對(duì)的可控功率響應(yīng)。
(501)、假設(shè)聲源s(n)到達(dá)麥克風(fēng)p和麥克風(fēng)q的時(shí)間分別為τ和τq,計(jì)算麥克風(fēng)p和麥克風(fēng)q延時(shí)補(bǔ)償后的信號(hào)的功率:
其中,
(502)、為了減少環(huán)境噪聲和混響對(duì)可控功率響應(yīng)的影響,在頻域上對(duì)幅度作歸一化處理(phat加權(quán)),只保留相位信息,于是得到下面的表達(dá)式:
步驟六、可控功率響應(yīng)插值計(jì)算。
在遠(yuǎn)場(chǎng)模型中,麥克風(fēng)的間隔比較短,較高的采樣率可以提高方向角估計(jì)的精度;為了進(jìn)一步提升精度,需要對(duì)互相關(guān)函數(shù)進(jìn)行插值計(jì)算。選取麥克風(fēng)對(duì)最大時(shí)延范圍內(nèi)的互相關(guān)函數(shù)值進(jìn)行十倍的插值。
步驟七、在半圓范圍內(nèi)搜索最大可控功率響應(yīng),具體如下:
(701)、計(jì)算麥克風(fēng)對(duì)的時(shí)延
d為麥克風(fēng)對(duì)在坐標(biāo)軸上的間隔,c為聲速。
(702)、求所有麥克風(fēng)對(duì)可控功率響應(yīng)之和
(703)、求使得e取最大值的方向角θ
θ=argmaxe(θ)
步驟八、通過(guò)步驟五到步驟七可求得聲源的水平偏角θ和op'與oz的夾角λ,可以得到聲源的仰俯角:
γ=arctan(a)
步驟九、計(jì)算θ和γ的統(tǒng)計(jì)平均值
把角度從0度到180度平均分為h個(gè)區(qū)間,統(tǒng)計(jì)30幀情況θ和γ落在各區(qū)間的次數(shù),選取次數(shù)最多的區(qū)間求平均值,所得即為聲源的偏角和仰俯角。
如圖4所示,在本發(fā)明實(shí)施例中的可跟蹤講話人攝像頭系統(tǒng)的示意圖中。示意圖中橫豎排麥克風(fēng)陣列組成l型拓?fù)浣Y(jié)構(gòu),所有麥克風(fēng)同向放置,且位于同一平面內(nèi),橫排五個(gè)麥克風(fēng),豎排四個(gè)麥克風(fēng),相鄰麥克風(fēng)之間的間隔為8cm。本發(fā)明的麥克風(fēng)間隔不限于本實(shí)施例中給出的8cm,其他長(zhǎng)度可作為本發(fā)明的備選,根據(jù)具體實(shí)施需求進(jìn)行選擇。示意圖中攝像頭位于2號(hào)麥克風(fēng)mic2正上方,橫排麥克風(fēng)陣列和豎排麥克風(fēng)陣列所構(gòu)成的90度角空間范圍內(nèi)的任一位置都可作為本發(fā)明的備選。
圖5是根據(jù)本發(fā)明優(yōu)選實(shí)施例的聲源定位算法的流程示意圖,如圖5所示,本發(fā)明的優(yōu)選實(shí)施例提出的聲源定位算法包括如下步驟:
步驟s501、圖6是根據(jù)本發(fā)明實(shí)施例的麥克風(fēng)陣列三維坐標(biāo)系模型的示意圖,如圖6所示,在三維坐標(biāo)系中建立麥克風(fēng)陣列模型,確定各麥克風(fēng)在坐標(biāo)系中的位置。實(shí)施例中橫坐標(biāo)軸有5個(gè)麥克風(fēng),組成10對(duì)麥克風(fēng);縱坐標(biāo)軸有4個(gè)麥克風(fēng),組成6對(duì)麥克風(fēng)。
步驟s502、對(duì)各麥克風(fēng)接收到的信號(hào)進(jìn)行采樣,采用的采樣率為48000hz,得到數(shù)字信號(hào),分幀計(jì)算,幀長(zhǎng)為20ms。事實(shí)上,幀長(zhǎng)更長(zhǎng)些有更高的估計(jì)精度,但運(yùn)算量會(huì)顯著增加,故把幀長(zhǎng)限制為20ms。
步驟s503、選取一個(gè)麥克風(fēng)的數(shù)據(jù)作語(yǔ)音活性檢測(cè)(vad),區(qū)分語(yǔ)音幀和噪聲幀,以后的步驟只處理語(yǔ)音幀。由于噪聲會(huì)惡化算法的性能,所以只選擇語(yǔ)音幀來(lái)處理,這一步可以極大地提升算法的魯棒性。
步驟s504、對(duì)各麥克風(fēng)的語(yǔ)音幀混疊加窗,本發(fā)明采用漢明窗,窗長(zhǎng)為1024,并做dft變換:
dft是本算法中運(yùn)算量最大的部分,為此特別采用了高效的分裂基fft快速算法來(lái)等效實(shí)現(xiàn)它,大大減少了運(yùn)算量。
步驟s505、計(jì)算麥克風(fēng)對(duì)的可控功率響應(yīng)。
(5051)、假設(shè)聲源s(n)到達(dá)麥克風(fēng)p和麥克風(fēng)q的時(shí)間分別為τp和τq,計(jì)算麥克風(fēng)p和麥克風(fēng)q時(shí)域?qū)R后的信號(hào)的功率:
其中,
xp(n)xq(k)*是xp(n)和xq(n)的互功率譜。
(5052)、為了減少環(huán)境噪聲和混響對(duì)可控功率響應(yīng)的影響,在頻域上對(duì)幅度作歸一化處理(phat加權(quán)),只保留相位信息,于是得到下面的表達(dá)式:
忽略噪聲時(shí),xp(n)=s(n-τp)。進(jìn)行fft變換,得:
所以,
步驟s506、可控功率響應(yīng)插值計(jì)算。
在遠(yuǎn)場(chǎng)模型中,麥克風(fēng)的間隔比較短,較高的采樣率可以提高方向角估計(jì)的精度;為了進(jìn)一步提升精度,需要對(duì)互相關(guān)函數(shù)進(jìn)行插值計(jì)算。選取麥克風(fēng)對(duì)最大時(shí)延范圍內(nèi)的互相關(guān)函數(shù)值進(jìn)行十倍的插值。
步驟s507、在半圓范圍內(nèi)搜索最大可控功率響應(yīng),具體如下:
(5071)、計(jì)算各麥克風(fēng)對(duì)的時(shí)延
d為麥克風(fēng)對(duì)在坐標(biāo)軸上的間隔,c為聲速。
(5072)、求所有麥克風(fēng)對(duì)可控功率響應(yīng)之和
(5073)、求使得e取最大值的方向角θ
θ=argmax(e(θ))
步驟s508、圖7是根據(jù)本發(fā)明優(yōu)選實(shí)施例的水平偏角和仰俯角的關(guān)系示意圖,如圖7所示,通過(guò)步驟s505到步驟s507可求得聲源的水平偏角θ和op'與oz的夾角λ,可以通過(guò)如下推理得到聲源的仰俯角:
聲源p的坐標(biāo)用極坐標(biāo)表示為:
又由于
則我們所求的仰俯角為:
γ=arctan(a)
步驟s509、計(jì)算θ和γ的統(tǒng)計(jì)平均值。
把角度從0度到180度平均分為h個(gè)區(qū)間,統(tǒng)計(jì)30幀情況θ和γ落在各區(qū)間的次數(shù),選取次數(shù)最多的區(qū)間求平均值,所得即為聲源的偏角和仰俯角。未滿30幀時(shí),當(dāng)前幀輸出上一次統(tǒng)計(jì)的結(jié)果,直至滿30幀才輸出新統(tǒng)計(jì)出的角度。這一步可以減少外界干擾,減少攝像頭旋轉(zhuǎn)的次數(shù)。
本發(fā)明優(yōu)選實(shí)施例提出的聲源定位算法能有效提升噪聲和混響環(huán)境下聲源定位的準(zhǔn)確性和穩(wěn)定性,基于該算法的麥克風(fēng)陣列攝像頭裝置能實(shí)時(shí)準(zhǔn)確地跟蹤講話人,具有良好的穩(wěn)定性。
通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到根據(jù)上述實(shí)施例的方法可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如rom/ram、磁碟、光盤(pán))中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
需要說(shuō)明的是,上述各個(gè)模塊是可以通過(guò)軟件或硬件來(lái)實(shí)現(xiàn)的,對(duì)于后者,可以通過(guò)以下方式實(shí)現(xiàn),但不限于此:上述模塊均位于同一處理器中;或者,上述模塊分別位于多個(gè)處理器中。
本發(fā)明的實(shí)施例還提供了一種存儲(chǔ)介質(zhì)??蛇x地,在本實(shí)施例中,上述存儲(chǔ)介質(zhì)可以被設(shè)置為存儲(chǔ)用于執(zhí)行上述實(shí)施例的方法步驟的程序代碼:
可選地,存儲(chǔ)介質(zhì)還被設(shè)置為存儲(chǔ)用于執(zhí)行上述實(shí)施例的方法步驟的程序代碼:
可選地,在本實(shí)施例中,上述存儲(chǔ)介質(zhì)可以包括但不限于:u盤(pán)、只讀存儲(chǔ)器(rom,read-onlymemory)、隨機(jī)存取存儲(chǔ)器(ram,randomaccessmemory)、移動(dòng)硬盤(pán)、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。
可選地,在本實(shí)施例中,處理器根據(jù)存儲(chǔ)介質(zhì)中已存儲(chǔ)的程序代碼執(zhí)行上述實(shí)施例的方法步驟。
可選地,本實(shí)施例中的具體示例可以參考上述實(shí)施例及可選實(shí)施方式中所描述的示例,本實(shí)施例在此不再贅述。
顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來(lái)實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來(lái)實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來(lái)執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來(lái)實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。