1 引言
21 世紀以來,汽車產(chǎn)業(yè)扮演了一個龍頭的角色,,與此同時,,電子設(shè)備在整車制造成本所占比例,由16%增至30%以上,,2010 年汽車搭載汽車電子的比例亦將達40%,,未來的汽車電子產(chǎn)品中,圍繞安全,、節(jié)能,、環(huán)保,、舒適和娛樂等方面的元器件及其周邊產(chǎn)品將發(fā)展更快。在此背景下,,本文設(shè)計開發(fā)了一個基于圖像處理技術(shù)的智能車載安全系統(tǒng),。
2 系統(tǒng)介紹
2.1 開發(fā)平臺
本系統(tǒng)以EC5-1719CLDNA 開發(fā)板為平臺,EC5-1719CLDNA 支持Intel CoreDuo/Celeron M 低功耗處理器,,由Intel945GM 芯片組集成圖形處理核心,,支持VGA、LVDS,,DVI,,TV-OUT 多種顯示及雙屏幕顯示, 有 1 個PCI-104,、1 個PCIE×4擴展總線,、4個USB2.0接口、2個SATA接口,。
開發(fā)板擴展了豐富的外圍硬件設(shè)備,,使用圖像處理開源代碼opencv 中強大的算法技術(shù),結(jié)合信號處理技術(shù),,充分發(fā)揮了此開發(fā)板高速的CPU 性能,。
2.2 系統(tǒng)框架
此系統(tǒng)功能劃分為三大方面:安全、通訊,、多媒體,。安全包括車牌測距、激光測距,、疲勞駕駛檢測,、全景環(huán)視系統(tǒng)(AVM)、酒精濃度檢測和溫度檢測,,通訊包括GPRS上網(wǎng),、GSM 通話、GPS 導航,,多媒體,,媒體播放器、包括車載娛樂系統(tǒng),、視頻采集,。
系統(tǒng)框圖如圖1。
2.3 基本功能
系統(tǒng)實現(xiàn)功能有激光測距,、疲勞檢測,、酒精濃度檢測、GPS 定位、全景環(huán)視功能,。
激光測距為測量汽車與其左右兩側(cè)可能存在的汽車之間的距離,,確定是否安全,不安全則發(fā)出警報提醒,。疲勞檢測為監(jiān)視人眼閉合時間,,超過一定時間認為駕駛員已疲勞,發(fā)出報警音,。酒精濃度檢測為測試空氣中的酒精濃度,,在酒精濃度超標的情況下,發(fā)出警報,。GPS 定位將GPS系統(tǒng)嵌入本系統(tǒng)內(nèi),,從而實現(xiàn)GPS 定位。
全景環(huán)視系統(tǒng)在車輛四周安裝4 個攝像頭,,通過四個攝像頭實時取景,,將四個攝像頭所采集的圖像組合在一起顯示在駕駛室的顯示屏上,司機可以一眼了解到本車周圍的全部情況,,提高汽車的綜合安全系數(shù),。
3 功能實現(xiàn)
3.1 激光測距的功能實現(xiàn)
原理圖如圖2,假設(shè)激光束與攝像頭的光軸完全平行,,激光束的中心落點在攝像頭視域中為最亮點,。當激光束照射到攝像頭視域中的跟蹤目標上時,攝像頭就可以捕捉到這個點,。
易推導得距離D:
其中:Num是從圖像中心到落點的像素個數(shù),,Rop 是每個像素的弧度值,Offet 是弧度誤差,。
算法流程為:首先,,啟動攝像頭,通過攝像頭采集視頻圖像,,截取圖像;通過亮點檢測程序?qū)ふ壹す馑镜牧咙c,,如果存在,,測量其距圖像中心的像素個數(shù)Num ;最后,,通過公式計算間距,,通過與設(shè)定的安全距離的比較,確定是否安全,,不安全則發(fā)出警報提醒,。
3.2 疲勞駕駛檢測功能實現(xiàn)
研究表明,人在發(fā)生困倦的時候,眨眼速度變慢,,眨眼持續(xù)時間變長,,本系統(tǒng)通過提取司機的閉眼持續(xù)時間的長短來判斷是否有疲勞發(fā)生。
通過檢測人臉范圍,,判斷人臉是否存在,,如果不存在,定時器清零,,返回,;如果檢測到人臉,定時器啟動,,開始計數(shù),;同時,通過面部特征識別,,來定位兩眼,;認為如果能在一定的時隙內(nèi)定位到兩眼,證明駕駛員并非出于疲勞駕駛狀態(tài),;此時定時器清零,,返回;如果在5S 內(nèi)無法定位到眼睛,,則認為處于疲勞駕駛,,此時發(fā)出警報提醒。
算法流圖見圖3,。
3.3 酒精濃度檢測功能的實現(xiàn)
本系統(tǒng)利用酒精傳感器NAP-66E 來實現(xiàn)酒精濃度的測量,。NAP-66E 具有良好的線性度,工作溫度范圍廣,,可在各種惡劣的環(huán)境下正常工作,,其輸出的最大電壓為10mV,因此為了獲取酒精度,,必須先把酒精傳感器的輸出模擬量通過兩級放大器放大到和A/D轉(zhuǎn)換器TLC2543 匹配的電壓值,,經(jīng)過A/D 轉(zhuǎn)換后,得到的數(shù)值在MCU 中進行適當?shù)奶幚?,最后通過串口線和PC 機進行通信,,把測得的數(shù)據(jù)實時傳輸給PC 機,利用PC 機實現(xiàn)顯示,、報警等功能,。應(yīng)用酒精檢測芯片,通過與單片機,、A/D 芯片,、運算放大器的硬件連接,構(gòu)成了酒精檢測模塊。設(shè)計電路如圖4 所示,。
3.4 GPS 定位功能的實現(xiàn)
本系統(tǒng)使用GARMIN 公司的GPS 接收機OEM 板— GPS 15H,,采用RS-232輸出,接口協(xié)議采用NMEA0183 版本2.00或3.00(可選)的ASCII 碼語句,,數(shù)據(jù)更新率為每秒一次,,串行傳輸參數(shù)為:波特律= 9600,數(shù)據(jù)位= 8 位,,停止位= 1位,,無奇偶校驗。
在實現(xiàn)GPS數(shù)據(jù)的讀入時系統(tǒng)使用串口來接收數(shù)據(jù),,軟件實現(xiàn)原理如下:
采用先初始化,,設(shè)置使用的串口,相應(yīng)的波特律為9600,,數(shù)據(jù)位為8 位,,停止位為1 位。在用戶點擊接收按鈕后,,采用查詢方式,,從讀入1 0 2 4 個字節(jié)尋找GPRMC( Global Position RecomendedMinimum Specific ) 之后的一些字符串,在GPRMC 中包括了程序中最關(guān)心的數(shù)據(jù)有效位,,緯度和經(jīng)度,,數(shù)據(jù)格式如下:
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>
<1> 當前位置的格林尼治時間,,格式為hhmmss
<2> 狀態(tài),, A 為有效位置, V 為非有效接收警告,,即當前天線視野上方的衛(wèi)星個數(shù)少于3 顆,。
<3> 緯度, 格式為 ddmm.mmmm
<4> 標明南北半球,, N 為北半球,、S為南半球
<5> 徑度,格式為dddmm.mmmm
<6> 標明東西半球,,E 為東半球,、W為西半球
<7> 地面上的速度,范圍為0.0 到999.9
<8> 以后的數(shù)據(jù)不使用,。
為了接收數(shù)據(jù)方便,用相應(yīng)的軟件屏蔽掉不需要的語句,,只剩下GPRMC 語句,。由于GPS 模塊上電后在露天的場合下大約90 秒左右得到有效數(shù)據(jù),所以在找到GPRMC 中的G 后的第13 位為數(shù)據(jù)有效位。
當判斷到‘A’時,,從數(shù)據(jù)段中的第17位起讀取后續(xù)9位作為緯度顯示,,再從第29位起讀取后續(xù)10 位作為經(jīng)度顯示。然后將接收到的GPS 經(jīng)緯度通過適當?shù)霓D(zhuǎn)換自動調(diào)用庫里的地圖,,并在地圖上用紅色點表示當前所在的位置,。
3.5 全景環(huán)視功能實現(xiàn)
全景環(huán)視系統(tǒng)在車輛的車頭前格柵、左右側(cè)面外后視鏡及尾門安裝了4 個攝像頭,。攝像頭帶有廣角鏡頭,,可進行實時廣角攝影。軟件上采用DirectShow 開發(fā)包進行開發(fā),,用Di rectShow 開發(fā)應(yīng)用程序,,可以很方便地從支持WDM驅(qū)動模型的采集卡上捕獲數(shù)據(jù),并且進行相應(yīng)的后期處理乃至存儲到文件中,。