楊國(guó)卿 王義琳 李明汝 全星日
摘要:聲源定位技術(shù)是利用聲學(xué)與電子裝置接收聲波并確定聲源位置的一種技術(shù)。實(shí)時(shí)聲源定位系統(tǒng)使用兩個(gè)麥克風(fēng)實(shí)時(shí)采集聲音,借助LabVIEW平臺(tái),用CPSP算法估計(jì)聲源的方位角,并通過(guò)DAQ控制安裝有攝像頭的步進(jìn)電機(jī),捕捉說(shuō)話人的影像。該系統(tǒng)在噪音和混響都較小的普通教室里進(jìn)行了測(cè)試,實(shí)驗(yàn)結(jié)果表明系統(tǒng)實(shí)時(shí)性和重復(fù)性較好,運(yùn)行可靠、穩(wěn)定,聲源方位角估計(jì)誤差小與1度。
關(guān)鍵詞:LabVIEW;聲源定位;時(shí)延估計(jì);CPSP;虛擬儀器
中圖分類號(hào):TP912.3? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)02-0252-03
Abstract: Sound source localization technology is a technique that uses acoustic and electronic devices to receive sound waves and determine the position of the sound source. Using two microphones to collect sound in real time. With the LabVIEW platform, the CPSP algorithm is used to estimate the azimuth of the sound source, and the stepper motor with a camera is controlled by DAQ to capture the image of the speaker. The system has been tested in ordinary classrooms with low noise and small reverberation. The experimental results show that the real-time system is reliable and stable, and the error of estimated sound source azimuth is smaller than 1 degree.
Key words: LabVIEW; sound source localization; delay estimation; CPSP; virtual instrument
1 概述
聲源定位是利用麥克風(fēng)陣列同步采集的多通道聲音信號(hào)確定聲源方位角,可以廣泛應(yīng)用于智能機(jī)器人、安防監(jiān)控、可視電話、視頻會(huì)議等領(lǐng)域[1,2]。聲源定位算法很多,其中估計(jì)聲達(dá)時(shí)間差(Time Difference of Arrival, TDOA)的廣義互相關(guān)算法(Generalized Cross-correlation, GCC)比較簡(jiǎn)單、易于實(shí)現(xiàn)[3]。GCC算法通過(guò)引入加權(quán)函數(shù)優(yōu)化時(shí)延估計(jì)的性能,CPSP(Cross Power Spectral Phase)算法是GCC算法的一種,具有一定的抗噪聲和混響能力[4-6]。本文設(shè)計(jì)的聲源定位系統(tǒng)利用兩個(gè)麥克風(fēng)采集聲源信號(hào),用CPSP算法估計(jì)聲源方位角,轉(zhuǎn)動(dòng)步進(jìn)電機(jī),實(shí)時(shí)拍攝說(shuō)話人影像。
2 基本原理
2.1 聲源定位模型
假設(shè)聲源與麥克風(fēng)陣列之間有一定距離,聲波的傳播過(guò)程可近似處理為平面波,遠(yuǎn)場(chǎng)雙麥克風(fēng)聲源定位模型如圖1所示:
3 系統(tǒng)方案及硬件設(shè)計(jì)
本文設(shè)計(jì)的雙麥克風(fēng)實(shí)時(shí)聲源定位系統(tǒng)由麥克風(fēng)及前置放大器、PC機(jī)、DAQ(Data Acquisition)、步進(jìn)電機(jī)、校零裝置和攝像頭組成,如圖2所示。兩路麥克風(fēng)信號(hào)經(jīng)話筒前置放大后輸入到PC機(jī)Line In輸入端,用聲卡進(jìn)行AD轉(zhuǎn)換,接收雙通道麥克風(fēng)信號(hào)。PC機(jī)運(yùn)行LabVIEW程序,根據(jù)CPSP算法得到聲源方位角,并控制步進(jìn)電機(jī)旋轉(zhuǎn)攝像頭捕捉說(shuō)話人顯示到PC機(jī)上。CPSP估計(jì)誤差使電機(jī)旋轉(zhuǎn)角度偏離正確值,當(dāng)系統(tǒng)連續(xù)運(yùn)行時(shí)這種誤差會(huì)累積。為了消除累積誤差,在系統(tǒng)初始化、步進(jìn)電機(jī)通過(guò)零度方向或在一側(cè)連續(xù)運(yùn)行若干次之后進(jìn)行校零。
考慮到聲源距麥克風(fēng)比較遠(yuǎn),麥克風(fēng)采用靈敏度比較高的CM536電容式話筒,麥克風(fēng)前置放大器選用RME OuadMic II。PC機(jī)與外部裝置的通信通過(guò)DAQ實(shí)現(xiàn),DAQ選用亞為公司YAV USB 4AD Plus,DAQ的數(shù)字量輸出端分別連接至TB6560步進(jìn)電機(jī)驅(qū)動(dòng)器的脈沖信號(hào)CLK端和方向控制信號(hào)CW端。LabVIEW控制DAQ發(fā)送若干脈沖至TB6560的CLK端,并提供方向控制信號(hào),使步進(jìn)電機(jī)轉(zhuǎn)動(dòng)給定角度。步進(jìn)電機(jī)選用步距角為1.8度的42步進(jìn)電機(jī)。校零裝置用U型光電開(kāi)關(guān)實(shí)現(xiàn)。在步進(jìn)電機(jī)轉(zhuǎn)軸上固定一個(gè)帶有圓形小孔的轉(zhuǎn)盤,攝像頭朝小孔方向安置,將圓形小孔方向設(shè)為零度。U型光電開(kāi)關(guān)安裝在機(jī)座上,電機(jī)旋轉(zhuǎn)至小孔時(shí)U型光電開(kāi)關(guān)的受光三極管飽和,受光三極管集電極連接至DAQ的數(shù)字量輸入端口,LabVIEW檢測(cè)出零度方向。
4 軟件設(shè)計(jì)
4.1 主程序流程圖
雙麥克風(fēng)聲源定位主程序流程圖如圖3所示。首先對(duì)聲卡、攝像頭進(jìn)行初始化,啟動(dòng)校零子程序?qū)?zhǔn)零度方位角。對(duì)麥克風(fēng)信號(hào)進(jìn)行VAD(Voice Activity Detection)檢測(cè),輸入的信號(hào)能量大于門檻值則判斷為有信號(hào)輸入,門檻值通過(guò)實(shí)驗(yàn)來(lái)設(shè)定。當(dāng)有麥克風(fēng)信號(hào)輸入時(shí),運(yùn)行CPSP算法子程序估計(jì)聲達(dá)時(shí)間差[D],并計(jì)算出聲源方位角和步進(jìn)電機(jī)需轉(zhuǎn)動(dòng)的步數(shù),生成方波脈沖經(jīng)DAQ發(fā)送至步進(jìn)電機(jī)驅(qū)動(dòng)器的CLK端。當(dāng)方位角為正時(shí)通過(guò)DAQ提供低電平至步進(jìn)電機(jī)驅(qū)動(dòng)板的方向控制引腳CW端,反之提供高電平。步進(jìn)電機(jī)轉(zhuǎn)動(dòng)經(jīng)過(guò)零度方向或在一側(cè)連續(xù)運(yùn)行若干次之后啟動(dòng)校零程序消除累積誤差。
4.2 前面板設(shè)計(jì)
人機(jī)界面如圖4所示,左側(cè)為參數(shù)設(shè)定和CPSP計(jì)算結(jié)果,中間顯示攝像頭拍攝的圖像,用NI(National Instruments) IMAQ(Image Acquisition)工具箱獲取,右側(cè)顯示雙通道麥克風(fēng)時(shí)域信號(hào)和CPSP波形,波形最大值對(duì)應(yīng)的自變量即為聲達(dá)時(shí)間差[D] (單位:采樣點(diǎn)數(shù))。
當(dāng)有麥克風(fēng)信號(hào)輸入時(shí)攝像頭畫(huà)面右上角VAD指示燈亮,LabVIEW運(yùn)行CPSP算法進(jìn)行聲源定位。
4.3 CPSP算法子程序
CPSP算法子程序如圖5所示,對(duì)輸入的麥克風(fēng)信號(hào)先進(jìn)行FFT運(yùn)算,計(jì)算互功率譜,如式(5);計(jì)算CPSP加權(quán)函數(shù),如式(6),當(dāng)加權(quán)函數(shù)分母中有0時(shí)強(qiáng)制將其設(shè)為1防止加權(quán)函數(shù)趨于無(wú)窮大;互功率譜乘以加權(quán)函數(shù)之后進(jìn)行傅里葉反變換,得[R(τ)],如式(4);將[R(τ)]數(shù)據(jù)分成兩部分將左右調(diào)換并限定峰值檢測(cè)范圍,輸出波峰值和索引號(hào),該索引號(hào)就是聲達(dá)時(shí)間差[D](單位:采樣點(diǎn)數(shù))。
5 實(shí)驗(yàn)結(jié)果分析
本文設(shè)計(jì)的實(shí)時(shí)聲源定位系統(tǒng)設(shè)定采樣頻率為[44.1kHz],兩個(gè)麥克風(fēng)間距為[0.3m],幀長(zhǎng)[0.5s],在長(zhǎng)[7m]、寬[9m]、高[3.4m]的教室進(jìn)行了測(cè)試。教室內(nèi)噪音和回音都比較小,說(shuō)話人離定位系統(tǒng)[2.5m]遠(yuǎn),測(cè)試的方位角為+15度、+30度、+40度和+75度。
測(cè)得的實(shí)驗(yàn)數(shù)據(jù)如表1所示,聲源的方位角用量角器測(cè)量;聲達(dá)時(shí)間差是CPSP算法計(jì)算結(jié)果,單位是采樣點(diǎn)數(shù)(sample);CPSP估計(jì)的方位角由式(1)計(jì)算得出。進(jìn)行多次重復(fù)實(shí)驗(yàn),系統(tǒng)聲達(dá)時(shí)間差的估計(jì)比較穩(wěn)定,在一個(gè)位置說(shuō)話時(shí)沒(méi)有跳變的現(xiàn)象。
6 結(jié)論
基于LabVIEW平臺(tái)設(shè)計(jì)并調(diào)試了聲源定位系統(tǒng),使用兩個(gè)麥克風(fēng)對(duì)聲音信號(hào)進(jìn)行實(shí)時(shí)采集并利用CPSP算法進(jìn)行聲源定位,通過(guò)步進(jìn)電機(jī)將攝像頭旋轉(zhuǎn)至聲源方位并進(jìn)行顯示。該系統(tǒng)在噪聲和混響比較小的普通教室里進(jìn)行了測(cè)試,實(shí)驗(yàn)結(jié)果表明系統(tǒng)穩(wěn)定、可靠,重復(fù)性好,方位角估計(jì)誤差小于[±1]度,攝像頭能夠?qū)崟r(shí)捕捉說(shuō)話人。
參考文獻(xiàn):
[1] 程方曉,劉璐,姚清華,韓笑,宋曦.基于改進(jìn)時(shí)延估計(jì)的聲源定位算法[J].吉林大學(xué)學(xué)報(bào):理學(xué)版,2018,56(3):681-687.
[2] 李德寶,歸達(dá)舉,葉懋.基于TDOA麥克風(fēng)陣列聲源定位技術(shù)[J].科技資訊,2016,14(13):3-4.
[3] C. Knapp, G. Carter. The generalized correlation method for estimation of time delay[J]. in IEEE Transactions on Acoustics, Speech, and Signal Processing, 1976,24(4):320-327.
[4] 蔣相斌,白宗龍,孫金瑋,黃博妍.強(qiáng)混響條件下基于廣義互相關(guān)的聲源定位算法改進(jìn)[J].計(jì)測(cè)技術(shù),2018,38(1):43-47.
[5] 楊藝敏,劉濤.改進(jìn)的GCC算法在聲源定位中的研究[J].電子世界,2017(10):180,186.
[6] 李偉,時(shí)延估計(jì)的聲源定位算法研究[J].電腦知識(shí)與技術(shù),2018,14(7):220-222.
【通聯(lián)編輯:梁書(shū)】