閱讀文章前辛苦您點下「關注」,方便討論和分享,為了回饋您的支持,我將每日更新優質內容
文|九鵬舉
編輯|九鵬舉
機器視覺在近幾年得到了充分的發展,例如相機、深度感測器和激光雷達在各類機器人和無人駕駛車輛中得到了廣泛應用,能滿足大部分場景下的使用需求。
傳統視覺感測器以光線為基礎,利用感光元件捕獲光線,從而實現對周圍環境信息的提取。
當前SLAM方法中應用最為普遍的激光測距方式,以約600r/min的轉速由電機帶動激光發射與接收器連續旋轉,對機器人外圍環境距離進行掃描。
旋轉機構增加了激光SLAM裝置質量與功耗,長時間運轉的電機與軸承限制了SLAM裝置的連續工作時間與壽命。
同時,激光測距方式遇到環境中的玻璃等透光物質時會無法工作,環境中的溫度變化、煙霧、懸浮顆粒物等會嚴重影響檢測準確性,激光器件的安全等級難以應用於油站、礦井等環境中。
此外,激光器件的高成本限制了激光SLAM方法在家庭、娛樂等領域服務機器人中的更多應用。
可見,當前的SLAM方法難以應用於許多實際環境,特別是需要機器人發揮作用的野外、礦井、水下環境,以及地震、火災、燃爆等事故現場,難以應對服務機器人的快速發展需求。
但是,機器人技術的不斷進步和機器人應用場景的不斷拓展,對空間目標搜索和避障提出了新的要求。
因此,探尋新的障礙物識別方法,對於拓展服務型機器人的應用場景,完善機器人的使用功能,有著十分重要的現實意義。
雖然聲吶系統的研發思路來源於蝙蝠、海豚等使用超聲波的生物,但現有聲吶系統與蝙蝠和海豚在自然界中的表現相比顯得極為落後。
蝙蝠自身的聲吶系統只包含兩隻耳朵和發聲裝置,達到毫米級的定位精度要通過各個器官的配合。
與蝙蝠的生物聲吶系統相比,現在的聲吶定位系統在體積、靈敏度、抗干擾能力、重量和精度方面,都存在著巨大的差距。
如何從蝙蝠定位系統和方法中獲得靈感,並將其整合到當今的聲學定位系統中,是一個值得研究的課題。
通過對蝙蝠超聲的研究,有助於開拓在弱光環境下機器人的應用,在黑暗礦井下或者粉塵大的場合,超聲定位將比視覺系統有更好的表現。
隨著服務型機器人的不斷研發,越來越多的機器人出現在人們的身邊,例如在現代辦公樓中,機器人工作環境多為室內或者小空間環境。
在實際應用中不難發現,玻璃幕牆在寫字樓中的使用越來越多,由於玻璃的高透光性,現在常用的激光雷達在對玻璃的識別上表現得相當差。
超聲聽覺則可以很好地彌補這個短板,如今,在追求機器人結構輕便化、靈巧化的背景下,結構簡單、工作可靠的雙耳定位裝置將給開發機器人在各個環境下的工作提供極大的便利。
相比於傳統的聲吶系統,雙耳超聲系統具有體積小、輕便及成本低等優點,因此,根據仿生學的原理,模仿蝙蝠進行雙耳超聲系統的開發具有重要的理論意義與工程價值。
技術路線
本文的情緒識別機器人技術主要包括四部分,分別是回波定位模型及裝置的構建、回波頻譜的方向相關特性的分析、回波信號特徵提取和空間中物體的定位,具體如圖1所示。
了解超聲波在空氣中的傳播特點,蝙蝠喉嚨中的發聲器官被簡化為球形聲源,喉嚨中發聲器官發出的聲音信號以聲波的形式在空氣中傳播,被測障礙物使用剛性球體,考慮到測量距離,建立超聲定位系統的遠場模型。
學習超聲採集模塊的使用,模塊驅動板使用32位ARM主控制MCU,所連接麥克風陣列MIC座板使用MEMS數字麥克風采集回波信號。
採集模塊安裝在一個二自由度雲台上,用於控制接收裝置與小球之間的相對位置,超聲發射的觸發信號及雲台的控制均由STM32系統板實現,使用KEIL進行程序調試。
對採集到的超聲回波信號進行預處理,對採集到的超聲信號進行帶通濾波操作,濾除頻段外的其他干擾信號,通過基於短時能量和短時平均過零率(ZCR)的雙門限演算法進行信號端點檢測,截取正確的回波信號。
研究對每條輸入信號進行分幀加窗,將每幀回波信號進行快速傅里葉變換,獲得頻域信息,接著通過頻譜轉換及計算DCT倒譜,分別計算Mel倒譜係數及Gammatone倒譜係數,並從中提取MFCC參數及GFCC參數,共同組成混合參數,作為神經網路學習的特徵向量。
研究學習深度學習及神經網路建模方法,利用前面得到的特徵向量,構建空間位置識別模型,構建LSTM神經網路。
首先,混合特徵向量被用作LSTM網路的輸入,網路中只有一層LSTM層,足以顯示數據之間的連接,太多的層會使網路培訓時間更長。
LSTM層激活函數使用tanh函數,優化器使用Adam優化器,最後將訓練樣本集的音頻特徵序列用作輸入層,並將其替換到網路中進行訓練,訓練結束後,將測試樣本的音頻特徵序列輸入網路以驗證結果。
立體聲學定位研究
超聲通過波的方式在空氣中傳播,本質也是一種機械波,頻率一般大於20kHz,通常以縱波的形式在彈性介質中傳播,縱波是能量傳播的一種形式。
通常,聲波的特徵由波長、聲速、周期和頻率等參數表示,波長是指波在一段時間內沿傳播方向傳播的距離;聲速表示聲波在介質中的傳播速度;頻率表示1s內通過特定點的聲波數量,三者之間的關係為:
考慮超聲波在空氣中的衰減等因素,為了獲得更高的信噪比和方向性,本文選擇的超聲模塊發射頻率為40kHz的超聲波,在空氣中聲速為340m/s,可計算出其波長為8.5mm。
一般情況下,聲波的強弱由聲壓、聲強等參量來表示,聲壓由作用在單位面積物體上的聲壓差表示,單位為帕(Pa),通常,聲壓的對數用於比較聲音的強度,稱為聲壓級,單位為分貝(dB)。
將超聲發出到接收的整個過程看做簡化的模型:即超聲模塊通過換能器發出超聲信號,信號在空中傳輸後,被障礙物反射,最終到達麥克風由麥克風接收,近/遠場的分界距離為0.425m。近場遠場判別示意見圖4。
本文預濾波使用高通濾波器,通過設置合適的截止頻率,以有效排除特殊頻段外的雜訊,從而降低雜訊信號對後續數據分析的影響。
可聽聲聲音頻率範圍為20Hz~20kHz,實驗使用的超聲測距模塊發射的超聲波頻率為40kHz,故選擇下截止頻率為20kHz,上截止頻率為60kHz,選擇巴特沃斯型帶通濾波器,濾波器濾波效果如圖5所示。
從濾波後波形可以明顯看出,通過帶通濾波後,採集到的信號變得更為平滑,由於換能器距離麥克風較近,故通過雙門限法截取的回波信號中,既包括了發射信號,也包括了麥克風接收到的返回的回波信號,通過時延估計的方法進行回波信號的截取。
即通過雙門限法確定信號端點後,根據被測物體與換能器的距離,計算回波信號所在位置,並截取回波信號。
截取片段中最大幅值所在點作為發射波所在位置S1,計算髮射波所在位置S2,為了獲得較為準確的距離估算結果,採用互相關分析法進行距離判斷。
t+Δt互相關函數表示兩個信號在t時刻和Δt時刻的相關性的度量,在通過雙門限截取出的信號中,即包括發射波信號,又包括回波信號。
但是由於回波信號是發射波信號經目標物反射後再由麥克風接收,即使回波信號存在空氣中的衰減及環境雜訊的干擾,也不影響回波信號與發射波信號之間的高度相關性。
因此,可截取發射信號,並將其與截取出的信號做互相關運算。
由於截取片段中不僅包含與發射信號完全相同的部分,還包含了和發射信號具有高度相關性的回波信號,因此會在發射波信號處與回波信號處取得較大值,互相關運算結果見圖6。
得到回波信號位置S2後,以S2為中點,向兩邊拓展發射波持續時間,計算出回波信號的起點S3與終點S4。
為了保證回波信號截取的完整性,在計算終點時可適當加長信號持續時間,即:
Gammatone濾波器(GammatoneFrequencyCepstrumCoefficient,GFCC)是一種用於模擬人類耳蝸對聲音頻率的分解特性的濾波器,其時域表達式為:
式中:i-第i個Gammatone濾波器,共有N個濾波器;n-濾波器階數;A-濾波器的增益;φi-相位偏移(為簡化模型,本文將φi設為0);fi-濾波器的中心頻率;U(t)-階躍函數,bi是濾波器的衰減因子。
bEBR(fi)是等效矩形帶寬,其計算公式為:
提取GFCC參數的步驟與MFCC參數類似,提取過程見圖8。
求解出的GFCC特徵參數維數較高,含有大量的冗餘成分,直接使用計算得到的GFCC特徵參數作為特徵向量進行學習,所需計算量大,故採用PCA方法對所有子帶提出的特徵參數進行降維處理。
從降維結果可以看出,前7維貢獻度總和超過了99%,故取前7維作為GFCC特徵向量,與MFCC特徵拼接後進行後續深度學習,GFCC譜圖見圖9。
本文採用的LSTM結構如圖10所示,圖中包含1個輸入層、2個隱層和1個輸出層,輸入層採用線性激勵函數,包含300個神經元,2個隱層中每個隱層都包含200個神經元,輸出層仍採用Softmax回歸模型。
本文研究的是聲源定位角度範圍為水平角-15°~+15°,俯仰角-15°~+15°區域,間隔為3°,共121個位置點,因此,最後一層的輸出層中有121個神經元,每個神經元的輸入權重對應一個θ參數,如圖11所示。
模型搭建完成後,將採集到的現有數據按7∶2∶1進行劃分,對模型進行訓練,並用劃分出的測試集進行初步測試,準確率如圖12所示。
為解決傳統SLAM方法和現有聲吶設備等的不足,文中提出通過了解超聲波在空氣中的傳播特點,建立超聲定位系統的遠場模型,採集模塊安裝在一個二自由度雲台上,用於控制接收裝置與小球之間的相對位置。
對採集到的超聲回波信號進行預處理和帶通濾波操作,對每條輸入信號進行分幀加窗,將每幀回波信號進行快速傅里葉變換,獲得頻域信息,學習深度學習及神經網路建模方法,利用前面得到的特徵向量,構建空間位置識別模型。