作者 / 王宇威 雍洋 孫新 西安交通大學 信息與通信工程系(陝西 西安 710000)
本文引用地址:http://www.eepw.com.cn/article/201811/395037.htm*本項目獲得「2018年瑞薩杯」信息科技前沿專題邀請賽的最高獎「瑞薩杯」獎。
摘要:隨著科技的發展,聲源定位技術在越來越多的地方發揮著重要的作用,在多個領域有著廣泛的應用。聲源目標跟蹤技術可以應用在視頻錄製、安防監控、鳴笛抓拍等場景中,在這些場景中,針對目標對象的語音信號,可以應用陣列信號處理的知識,將麥克風按照特定陣列放置在空域中,利用空間不同位置點的聲源對麥克風陣列響應的時延相位誤差,對聲源進行測向,實現低成本的聲源定位跟蹤功能。
本作品便是基於麥克風陣列的聲源跟蹤系統,將6路麥克風按照線型排列,並接入瑞薩SK-S7G2單片機的6路ADC中,單片機將採樣值通過陣列信號處理中波達方向(DOA)估計等算法,獲得聲源的來波方向。然後用單片機去驅動雲臺,上面搭載攝像頭或者高指向性麥克風,可以實現用戶特定的跟蹤需求。
我們結合瑞薩單片機的性能與實際測試效果,選用了周期圖法進行角度估計,利用頻率採樣型的FIR濾波器實現了對人聲信號的切片,並對得到的角度結果進行低通濾波、設定閾值、非線性約束等處理,解決了環境噪聲、室內混響等因素帶來的問題。此外,我們將陣列置於雲臺上,進一步提高了跟蹤的精度,雲臺的驅動採用步進方式,實現了實時跟蹤。最後,我們將所有算法移植到瑞薩單片機上,製作了GUI界面,並添加了噪聲訓練功能,使之成為一個完整的系統。
0 引言
當今社會,人們對自動控制的需求越來越高,而其中一個重要的分支就是目標跟蹤技術。伴隨著人工智慧的熱潮,通過圖像識別來進行目標跟蹤是現在的主流做法,但是神經網絡算法的複雜度極高,不可能在普通的MCU上實現,只能藉助於一些高性能的晶片如FPGA,這樣就會需要較高的成本。其實在一些特定場合,可以通過或者只能通過聲源定位的方法進行目標跟蹤,而其中用到的陣列信號處理技術經過改進和優化之後,可以將算法移植到普通的MCU中進行實現,從而可以保證跟蹤效果的同時降低產品的成本。
現在隨著網絡的普及,網絡公開課越來越受歡迎,而網絡公開課的錄製就需要對講課的教師進行攝像跟蹤,在這種場景下,就可以利用陣列信號處理中的DOA技術對聲源進行估計,從而使雲臺轉動,跟蹤攝像目標。除此之外,現在的城市中,為了減少噪音汙染,有不少的禁止鳴笛區。在這些鳴笛區中,為了精確地抓拍到違章鳴笛的車輛,就必須要用到聲源定位,這裡就需要陣列麥克風進行波達方向估計,才能精確地找到違章車輛。在這些場景下使用DOA估計來實現目標跟蹤是完全可以滿足要求的,而且可以在單片機上實現,並且可以最大限度地節省計算資源。
1 作品設計與實現
1.1 系統方案
先用六陣元線陣的陣列麥克風進行拾音,然後使用Renesas(瑞薩)SK-S7G2單片機的ADC進行採樣,採樣率8000Hz,採樣結束之後對採樣數據進行DOA估計(波達方向估計),把估計出來的角度與當前雲臺的角度比較,來確定是否轉動雲臺以及轉動方向,從而使攝像頭或者高指向性麥克風對準聲源,實現聲源跟蹤的目的。
1.2 理論分析及計算
1.2.1 陣列信號處理基本模型
陣列信號處理(Array Signal Processing)作為信號處理的一個重要內容,其含義是指將一批傳感器按照特定陣列流型放置在空域中,對空域信號進行採樣,得到信源的空域採樣數據並進行處理。
在傳統的陣列信號處理中,主要處理的是窄帶信號,窄帶信號是指帶寬遠遠小於中心頻率的信號,並且假設信號源位於陣列的遠場,因此可以使用平面波傳播理論,認為信號平行入射,各陣元接收到的信號之間沒有幅度差異,只存在傳播延時造成的相位差異。最常用的是均勻線陣,其遠場模型如圖2所示。
其中θ為信號入射方向角,d為陣元間距。為「避免混疊」,陣元間距一般取入射信號的半波長。記信號波長為λ,陣元個數為N ,陣列等效孔徑為:
可以將麥克風陣列和單片機ADC結合起來看作進行空間採樣的裝置,陣列每接收一次數據就是在空間的一次採樣或者快拍(snapshot),陣列信號就是由快拍組成的向量序列。均勻線陣是在空間的一條直線上均勻採樣,它對應於時間序列的均勻採樣。由於陣元間距 為空間採樣間隔, 即為空間採樣頻率,而為陣列信號的空間頻率。與奈奎斯特採樣定理相似,為避免空域混疊,對空間採樣頻率有一定的要求:
(3)
12.2 頻率切片
傳統陣列信號處理的模型與算法都是建立在窄帶信號的條件下,可是語音信號的頻率範圍為300~3400 Hz,帶寬較大,所以不能對語音信號直接進行處理,要先通過頻率採樣型的FIR濾波器進行頻率切片,然後對切片之後的數據進行處理。頻率採樣濾波器由一個梳狀濾波器和一個諧振器組成。
頻率採樣型結構中諧振器的極點恰好各自抵消梳狀濾波器的零點,其係數就是濾波器在處的響應。為了防止濾波器不穩定,可以將梳狀濾波器的零點和諧振器的極點同時向圓內移一點,就可以保證濾波器的穩定,即:
(7)
頻率採樣型結構的作用就是一個「濾波器櫃」,想要濾出信號的某個頻率分量,只需在對應的那一路後面接抽頭,輸出即為該頻率分量的時域信號。所以只要把語音信號以200 Hz為間隔切片,得到各個頻率分量的窄帶信號,對窄帶信號進行處理之後再相加即可。
1.2.3 DOA(波達方向估計)
(1)DOA估計的基本模型
在前面模型的基礎上,在只有一個聲源的情況下,陣列麥克風各個陣元接收到的信號為:
實現DOA的算法有很多種,有周期圖法,Capon算法,Music算法等等,其中,周期圖法是在角度和頻率方向的二維搜索,相對穩健,即使在有混響的情況下也能找到方向,並且該算法可以移植到單片機中進行實現,而Music算法的仿真效果較好,其主瓣窄,旁瓣小,但算法複雜度較高,且極易受到混頻幹擾的影響。在進行了實際實驗驗證之後,綜合樓室內混響帶來的誤差,我們選擇了相對穩健的周期圖法,下面簡單介紹一下周期圖法。
(2)周期圖法
周期圖法是通過算出每個角度入射信號的功率,然後找出最大值所對應的角度,就是聲音信號入射的角度。做法是先對採集的N次快拍求平均估計自相關矩陣:
這種方法較為穩健,從仿真結果來看,雖然主瓣較寬,但在精度要求不是十分嚴格的情況下可以應用,尤其在有混頻幹擾的情況下,周期圖法也能較為準確地估計出角度。且該算法的複雜度較低,易於在單片機上實現,所以我們就選擇了周期圖法,並且選用了6陣元的線陣,由於聲速v=340 m/s,人聲頻率在300~3400 Hz之間,其中f=1700 Hz對應的半波長λ = 0.5*v/f = 0.1 m = 10 cm,陣元間距為10 cm。
1.3 系統優化
1.3.1 頻率切片
傳統陣列信號處理的模型與算法都是建立在窄帶信號的條件下,可是語音信號的頻率範圍為300 Hz-3400 Hz,帶寬較大,所以不能對語音信號直接進行處理,要先進行切片。但是各個頻率分量的功率有很大區別,如果對300 Hz~3400 Hz都進行切片的話會造成計算資源的浪費,我們在實驗過後發現正常人聲在600 Hz~1200 Hz內頻率分量的功率最大,所以我們在這個範圍內進行切片,以200 Hz為間隔,共切四片。
1.3.2 結果濾波
為了提高系統的穩定性和準確性,我們進行了結果濾波,分為兩個階段:適應噪聲和線性約束濾波。
(1)噪聲自適應
在開始進行DOA估計且雲臺跟蹤之前,需要先對電路噪聲及環境噪聲進行適應。進入噪聲適應模式之後,通過麥克風採集當前的電路及環境噪聲,計算其功率,然後設定一個合適的閾值。在之後的計算中,若功率大於閾值,則視為有用的聲音,否則視為噪聲,不計算角度。這樣可以有效地濾除底噪的幹擾,當人停止說話時,攝像頭不會因為噪聲的幹擾而隨意擺動。
(2)線性約束
為了提高系統的穩定性以及減小放射徑的影響,我們採用了線性約束的方法,這樣能有效地減小突變以及放射徑的影響,即:
最終角度=0.8 上次角度+0.2 當前計算角度
由於每一秒會計算出15次結果,所以難免會有一些計算出來的結果不太準確,這樣使用了線性約束之後,即使有一些角度不太準確也不會造成較大的影響,大大地提高了系統的穩定性。
1.3.3 雲臺目標跟蹤
雲臺的控制是通過單片機串口給解碼器發指令來完成的,並且採用了步進的方法控制。在雲臺和麥克風陣列擺放關係的問題上,我們採取的方案是陣列固定在雲臺上面,跟隨雲臺一起轉動,雲臺根據DOA的估計結果不斷向0°方向靠攏。
2 參賽感受
本次比賽我們的作品得到了不少評委老師的肯定與認可,並且摘得了本次比賽的最高獎瑞薩杯獎,我認為是因為我們作品的以下一些亮點:首先,我們的作品的處理器只使用了組委會提供的開發板,在我們的不斷改進與優化下,全部的算法與控制都在瑞薩單片機上實現,把單片機的計算資源、內存都運用到了極致。這樣就大大降低了成本,增加了把該作品變成產品推向市場的可能性。其次,我們的系統的穩定性很好,我們使用了噪聲自適應、線性約束、結果濾波等方法增加了系統的穩定性,並且在不同的環境下都進行了測試。還有一點,就是實際應用價值較高,現在的市場對聲源定位的需求越來越高,可以在網絡視頻自動錄製、鳴笛抓拍等場景中有廣泛的應用。
這次的比賽,我們收穫的不僅僅是瑞薩杯這個獎項,更多的是在比賽過程中能力的提升。在這個過程中,我們不僅在理論知識上得到了提高,動手能力也有了很大的進步,解決問題的能力也得到了很大的提升,意志力也得到了鍛鍊,在即將升入大四,開始更多地接觸科研任務之際,這次比賽也給了我們很多前行的動力和信心。
參考文獻:
[1]McCowan I A.,Robust Speech Recognition using Microphone Arrays[D]. Queensland University of Technology,Australia,2001.
[2]梁玉傑. 基於超格點DOA的室內無線傳感器網絡定位技術研究[D]. 上海:上海交通大學,2015-4-7.
[3]Jacob Benesty,Jingdong Chen,Yiteng Huang,Microphone Array Signal Processing[M]. 北京:國防工業出版社,2015.
[4]張小飛,陳華偉,仇小鋒. 陣列信號處理及MATLAB實現[M].北京:電子工業出版社,2014.
[5]姚天任. 數位訊號處理[M]. 北京:清華大學出版社,2011.
本文來源於《電子產品世界》2018年第12期第48頁,歡迎您寫論文時引用,並註明出處。