吳琦 王超 竇華珊
摘 要:介紹了解決無(wú)人駕駛汽車碰撞的安全和識(shí)別障礙物屬性的問(wèn)題的實(shí)際有效方法,本無(wú)人自動(dòng)駕駛障礙識(shí)別防撞系統(tǒng)硬件部分主要由兩大部分構(gòu)成:自動(dòng)形式的無(wú)人小車和識(shí)別裝置兩大塊。小車平臺(tái)采用模擬小汽車的四輪驅(qū)動(dòng)設(shè)計(jì),電機(jī)驅(qū)動(dòng)使用TB6612,這款芯片可以驅(qū)動(dòng)兩個(gè)電機(jī),同時(shí)體積小巧,直接將其集成到了電路板上,使得設(shè)計(jì)外觀簡(jiǎn)潔明了。識(shí)別平臺(tái)處理器選用樹莓派,體積小且廉價(jià)。使用CSI接口的攝像頭模塊專為樹莓派設(shè)計(jì),與樹莓派兼容性較好,驅(qū)動(dòng)程序完善,市面上提供的攝像頭模塊各種參數(shù)型號(hào)都較為齊全,在同等價(jià)錢的前提下,性能更優(yōu)。識(shí)別部分通過(guò)使用人臉特征分類器實(shí)現(xiàn)基于OpenCV的人體特征檢測(cè)。以上設(shè)計(jì)可以有效解決無(wú)人車運(yùn)行過(guò)程遇到的相關(guān)問(wèn)題。
引 言
發(fā)達(dá)國(guó)家從20世紀(jì)70年代開始進(jìn)行無(wú)人駕駛汽車研究,目前在可行性和實(shí)用化方面,美國(guó)和德國(guó)走在前列。然而,由于技術(shù)上的局限和預(yù)期目標(biāo)過(guò)于復(fù)雜,到20世紀(jì)80年代末90年代初,各國(guó)都將研究的重點(diǎn)逐步轉(zhuǎn)移到問(wèn)題相對(duì)簡(jiǎn)單的高速公路上的民用車輛的輔助駕駛項(xiàng)目上。國(guó)內(nèi)在此領(lǐng)域相對(duì)英美等國(guó)家起步較晚,目前仍處于初級(jí)階段,各種處理芯片和驅(qū)動(dòng)電機(jī)的問(wèn)世推動(dòng)了反展,而無(wú)人車的自動(dòng)障礙識(shí)別并躲避是其中的關(guān)鍵技術(shù)問(wèn)題,如何實(shí)現(xiàn)高效安全還需要做進(jìn)一步研究。
本文提供一種自動(dòng)避障系統(tǒng),旨在解決無(wú)人駕駛汽車碰撞的安全和識(shí)別障礙物屬性的問(wèn)題。使用各傳感器保證車輛直線行駛,識(shí)別障礙物距離的前提下利用攝像頭圖像識(shí)別算法識(shí)別障礙物屬性,屬性分為人于物體,然后決策無(wú)人駕駛小車下一步行為。距離識(shí)別主要依靠無(wú)人駕駛平臺(tái)的車載激光和超聲波,障礙物屬性識(shí)別主要依靠攝像頭的圖像識(shí)別算法,和人體傳感器來(lái)實(shí)現(xiàn)。使用攝像頭來(lái)識(shí)別物體特征屬性,從而在編程上區(qū)分了物體與人。本文還加入了人體傳感器,因?yàn)橐恍┓抡婺P鸵矔?huì)導(dǎo)致攝像頭的誤判,加入了人體傳感器之后大大減少了攝像頭誤判的可能性。[1]本系統(tǒng)總體流程圖如圖一所示。
1驅(qū)動(dòng)模塊
本文涉及的自動(dòng)駕駛小車平臺(tái)采用的主控芯片是STM32F4系列的芯片,擁有多個(gè)定時(shí)器PWM輸出、ADC等功能外設(shè),采用模擬小汽車的設(shè)計(jì)四輪,需要驅(qū)動(dòng)四個(gè)車輪前進(jìn),整個(gè)車的電源不能使用普通小電源,因?yàn)殡姍C(jī)滿轉(zhuǎn)驅(qū)動(dòng)電流較大,可能會(huì)燒壞電源。電機(jī)驅(qū)動(dòng)使用TB6612,這款芯片可以驅(qū)動(dòng)兩個(gè)電機(jī),同時(shí)體積小巧,本文在設(shè)計(jì)的時(shí)候直接將其集成到了電路板上,使得設(shè)計(jì)外觀簡(jiǎn)潔明了。另外由于四個(gè)車輪完全是獨(dú)立控制,不是實(shí)際汽車的機(jī)械就來(lái)保證走直線,所以必須使用一定策略來(lái)使得車輛走直線。本文使用了電機(jī)編碼器,編碼器可以輸出數(shù)量固定的脈沖數(shù),通過(guò)主控芯片的定時(shí)器捕獲這些脈沖就可以得到每個(gè)車輪轉(zhuǎn)過(guò)的角度,車輛行走距離。在車輛不打滑的情況小這一點(diǎn)問(wèn)題都沒(méi)有,但是當(dāng)車輛在行駛過(guò)程中發(fā)生了打滑情況時(shí),車輪的情況就不能完全反應(yīng)車輛的實(shí)際運(yùn)動(dòng)情況了,所以本實(shí)用新型在車輛上加了MPU9250傳感器,這個(gè)傳感器是九州陀螺儀和加速度計(jì)的集合,還集成了地磁儀,可以精確知道車輛當(dāng)前角度位置,這樣就可以精度控制小車走直線了。
2搭建檢測(cè)系統(tǒng)
2.1攝像頭數(shù)據(jù)采集模塊原理介紹
本文所涉及的攝像頭參數(shù)如表一所示。樹莓派支持市面上大部分的攝像頭模塊,樹莓派支持兩種與攝像頭的圖像傳輸方式:1.通過(guò)USB協(xié)議連接2.通過(guò)攝像頭專用接口CSI接口連接。市面上的USB攝像頭大多是成熟產(chǎn)品,產(chǎn)品參數(shù)選擇余地較小且一般體型較大,不適宜作為產(chǎn)品開發(fā)使用。使用CSI接口的攝像頭模塊專為樹莓派設(shè)計(jì),與樹莓派兼容性較好,驅(qū)動(dòng)程序完善,市面上提供的攝像頭模塊各種參數(shù)型號(hào)都較為齊全,在同等價(jià)格的前提下,性能更優(yōu)。在經(jīng)過(guò)比較后選擇了一款CSI接口攝像頭模塊。表一所示是本設(shè)計(jì)中選用的攝像頭模塊的參數(shù)。[2]
2.2識(shí)別平臺(tái)處理器構(gòu)建
樹莓派(RaspberryPi)是一款開源硬件,通過(guò)裝載相應(yīng)的Linux系統(tǒng)和相應(yīng)的應(yīng)用程序,實(shí)現(xiàn)其強(qiáng)大的功能,同時(shí)體積小又廉價(jià)是它的又一優(yōu)勢(shì)。樹莓派是一個(gè)小型基于ARM的PC主板,以MicroSD卡位內(nèi)存儲(chǔ)硬盤,擁有USB接口、HDMI視頻接口、CSI攝像頭接口、音頻接口、藍(lán)牙、WIFI、網(wǎng)口等外設(shè)。上述所有外設(shè)集合起來(lái)放在一個(gè)比信用卡稍大的電路板上,只需連接鍵盤、鼠標(biāo)、顯示器等外設(shè)便可以實(shí)現(xiàn)PC的全部功能。樹莓派分為A、B兩種型號(hào),主要區(qū)別:A型:1個(gè)USB口、無(wú)線網(wǎng)絡(luò)連接、功率2.5W,500mA;B型:2個(gè)USB、支持有線網(wǎng)絡(luò)、功率3.5W,700mA。本實(shí)用新型實(shí)施例中需要對(duì)圖像進(jìn)行大量運(yùn)算處理,需要性能較強(qiáng)的工控機(jī),為便于開發(fā)需選擇擁有較多I/O口,擁有網(wǎng)口與WIFI等外設(shè)的單板電腦??紤]到要做到盡量縮小體積最終選擇樹莓派3B這款單板電腦。其主要優(yōu)勢(shì)如下:
1.搭載1.2GHz的64位處理器(ARMCortex-A53內(nèi)核)性能更強(qiáng)勁
2.增加802.11b/g/n無(wú)線網(wǎng)卡
3.增加低功耗藍(lán)牙4.1適配器
4.最大驅(qū)動(dòng)電流增至2.5A
2.3圖像識(shí)別算法
如何識(shí)別前方障礙物屬性,圖像識(shí)別算法是本實(shí)用新型的重點(diǎn),好的識(shí)別算法應(yīng)對(duì)識(shí)別區(qū)域背景、有無(wú)物體遮擋。本文涉及的識(shí)別任務(wù)分為三部分:第一要識(shí)別前方是否有障礙物,一旦有障礙物就需要停車減速,這個(gè)主要通過(guò)超聲波來(lái)實(shí)現(xiàn),目前已經(jīng)實(shí)現(xiàn)10米左右距離的物體檢測(cè)。第二是識(shí)別障礙物屬性,屬性分為人、物體、動(dòng)物三種,首先區(qū)分物體,這很容易,只要利用物體與人最大區(qū)別,用紅外探測(cè)就可以實(shí)現(xiàn)。第三即人與動(dòng)物的區(qū)別,目前做法是利用攝像頭識(shí)別人體輪廓,或者識(shí)別人的特征部位如眼睛、耳朵、臉等。如果識(shí)別到有,就可以判斷為是人體存在,否則反之??傮w流程如圖二所示。人體輪廓識(shí)別的實(shí)現(xiàn)基于OpenCV的人體特征檢測(cè),共分兩步。第一步就是訓(xùn)練人臉特征分類器,第二步就是利用訓(xùn)練好的分類器進(jìn)行人臉檢測(cè)。目標(biāo)分類器檢測(cè)方法最初由PaulViola提出,并由RainerLienhart對(duì)這一方法進(jìn)行了改善.首先,利用樣本(大約幾百幅樣本圖片)的harr特征進(jìn)行分類器訓(xùn)練,得到一個(gè)級(jí)聯(lián)的boosted分類器。訓(xùn)練樣本分為正例樣本和反例樣本,其中正例樣本是指待檢目標(biāo)樣本(例如人臉或汽車等),反例樣本指其它任意圖片,所有的樣本圖片都被歸一化為同樣的尺寸大?。ɡ?,20x20)。分類器訓(xùn)練完以后,就可以應(yīng)用于輸入圖像中的感興趣區(qū)域(與訓(xùn)練樣本相同的尺寸)的檢測(cè)。檢測(cè)到目標(biāo)區(qū)域(汽車或人臉)分類器輸出為1,否則輸出為0。為了檢測(cè)整副圖像,可以在圖像中移動(dòng)搜索窗口,檢測(cè)每一個(gè)位置來(lái)確定可能的目標(biāo)。為了搜索不同大小的目標(biāo)物體,分類器被設(shè)計(jì)為可以進(jìn)行尺寸改變,這樣比改變待檢圖像的尺寸大小更為有效。所以,為了在圖像中檢測(cè)未知大小的目標(biāo)物體,掃描程序通常需要用不同比例大小的搜索窗口對(duì)圖片進(jìn)行幾次掃描。分類器中的“級(jí)聯(lián)”是指最終的分類器是由幾個(gè)簡(jiǎn)單分類器級(jí)聯(lián)組成。在圖像檢測(cè)中,被檢窗口依次通過(guò)每一級(jí)分類器,這樣在前面幾層的檢測(cè)中大部分的候選區(qū)域就被排除了,全部通過(guò)每一級(jí)分類器檢測(cè)的區(qū)域即為目標(biāo)區(qū)域。目前支持這種分類器的boosting技術(shù)有四種:DiscreteAdaboost、RealAdaboost、GentleAdaboostandLogitboost。"boosted"即指級(jí)聯(lián)分類器的每一層都可以從中選取一個(gè)boosting算法(權(quán)重投票),并利用基礎(chǔ)分類器的自我訓(xùn)練得到?;A(chǔ)分類器是至少有兩個(gè)葉結(jié)點(diǎn)的決策樹分類器。Haar特征是基礎(chǔ)分類器的輸入。使用分類器之前需對(duì)圖像進(jìn)行預(yù)處理操作,大致為以下幾步。首先將彩色圖像轉(zhuǎn)變?yōu)榛叶葓D像并進(jìn)行濾波操作去除噪點(diǎn)信息。然后對(duì)圖像進(jìn)行直方圖均衡化操作使圖像對(duì)比度增強(qiáng)。對(duì)于分類器的使用大致要經(jīng)過(guò)三個(gè)階段,從文件中加載分類器、利用分類器進(jìn)行檢測(cè)、檢測(cè)完成后釋放分類器。這三個(gè)階段對(duì)應(yīng)三個(gè)函數(shù):cvLoadHaarClassifierCascade、cvHaarDetectObjects、cvReleaseHaarClassifierCascade。[3]
3結(jié)論
STM32F4系列的芯片配合樹莓派搭建的小車系統(tǒng),進(jìn)一步提高了測(cè)量系統(tǒng)的精確度,降低了誤差。經(jīng)過(guò)測(cè)試此種識(shí)別方法可以完成絕大多數(shù)場(chǎng)景下的人體識(shí)別,效果較好,便于無(wú)人自動(dòng)駕駛裝置識(shí)別躲避障礙。
參考文獻(xiàn)
[1] 魯維佳,劉毅,潘玉恒主編.AltiumDesigner6.x電路設(shè)計(jì)實(shí)用教程[M].北京:北京郵電大學(xué)出版社.2014.
[2] 陳海宴編著.51單片機(jī)原理及應(yīng)用于KeilC與Proteus[M].北京:北京航空航天大學(xué)出版社.2013.
[3] 陳卓等編著.嵌入式系統(tǒng)開發(fā)[M].北京:電子工業(yè)出版社.2009.