孫世若 王天琪 張淼
摘 要:智能行車守護(hù)系統(tǒng)具有疲勞駕駛監(jiān)測、酒駕預(yù)防和兒童安全防護(hù)三大功能,可全方位保障行車安全。疲勞駕駛監(jiān)測模塊基于主流的OpenCV計算機(jī)視覺庫開發(fā),采用基于Dlib機(jī)器學(xué)習(xí)庫的人臉檢測模塊,運用SVM特征分類方法,實現(xiàn)駕駛員駕駛狀態(tài)的精準(zhǔn)判別和疲勞駕駛的預(yù)警防范。酒駕預(yù)防模塊運用高靈敏度酒精傳感器對駕駛員酒精含量進(jìn)行精準(zhǔn)檢測,基于酒精含量檢測結(jié)果對汽車總線發(fā)出相應(yīng)的邏輯指令,通過總線控制汽車組件完成相應(yīng)操作,實現(xiàn)酒精含量的強(qiáng)制檢測和酒駕的事前預(yù)防。兒童安全防護(hù)模塊利用紅外傳感器判斷發(fā)動機(jī)關(guān)閉后車內(nèi)是否留人,車內(nèi)留人時,實時監(jiān)測車內(nèi)溫度、氧氣含量,實現(xiàn)車內(nèi)環(huán)境的綜合判斷,環(huán)境異常時,通過向汽車總線發(fā)送邏輯指令進(jìn)行報警和智能解救,消除兒童滯留車內(nèi)的隱患。作品以ARM開發(fā)板為硬件基礎(chǔ),采用基于Linux內(nèi)核的操作系統(tǒng),具有極高的車載應(yīng)用潛質(zhì),使用更加方便高效,彌補了當(dāng)前技術(shù)的不足,致力于為駕駛員營造更安全的駕駛環(huán)境。
關(guān)鍵詞:機(jī)器學(xué)習(xí);計算機(jī)視覺;Linux;ARM;多傳感器模塊;多進(jìn)程通信
1 作品簡介
“守衛(wèi)者”智能行車守護(hù)系統(tǒng)具有疲勞駕駛監(jiān)測、酒駕預(yù)防和兒童安全防護(hù)三大功能模塊,可多角度開展行車安全防護(hù),開創(chuàng)了安全行車系統(tǒng)的新模式。
團(tuán)隊選取ARM作為硬件基礎(chǔ),采用基于Linux內(nèi)核的操作系統(tǒng),使作品具有開源、可移植性強(qiáng)等特點,便于在車載平臺上推廣應(yīng)用。此外,系統(tǒng)操作簡單,便于使用。
2 方案設(shè)計及功能
2.1 疲勞駕駛監(jiān)測
疲勞駕駛監(jiān)測模塊用于實時監(jiān)測駕駛員的駕駛狀態(tài)。疲勞駕駛監(jiān)測模塊以主流的OpenCV計算機(jī)視覺庫進(jìn)行開發(fā),采用基于Dlib機(jī)器學(xué)習(xí)庫的人臉檢測模塊對人臉及檢測部位進(jìn)行精確捕獲,運用SVM特征分類方法,建立左右眼開闔庫,以精確判定駕駛員的駕駛狀態(tài)。當(dāng)系統(tǒng)判斷駕駛員進(jìn)入疲勞駕駛狀態(tài)時,通過向汽車總線發(fā)送邏輯指令,控制汽車相應(yīng)組件,進(jìn)行危險預(yù)警并采取相應(yīng)防范措施:首先通過語音提示告知駕駛員并提醒其盡快停止駕駛;語音提示一段時間后,若駕駛員并未采取制動措施,則通過喇叭報警、開啟雙閃燈等方式,對周邊車輛進(jìn)行預(yù)警,降低疲勞駕駛引發(fā)交通事故的概率。
目前,該模塊已實現(xiàn)疲勞駕駛狀態(tài)的精準(zhǔn)判別及語音提示功能,并可依據(jù)監(jiān)測結(jié)果向汽車總線發(fā)送相應(yīng)的邏輯指令;實現(xiàn)喇叭報警、開啟雙閃燈等操作需要將系統(tǒng)與實際汽車總線連接,涉及汽車總線的硬件改造,需與汽車廠商合作,依靠專業(yè)技術(shù)實現(xiàn)。
2.2 酒駕預(yù)防
酒駕預(yù)防模塊用于在發(fā)動汽車前對駕駛員進(jìn)行酒精含量的強(qiáng)制檢測并實現(xiàn)酒駕的事前預(yù)防。酒駕預(yù)防模塊通過嵌入高靈敏度酒精傳感器實現(xiàn)對駕駛員酒精含量的精準(zhǔn)檢測,并通過適當(dāng)?shù)母脑欤蛊嚳偩€控制點火開關(guān)。僅當(dāng)酒精檢測結(jié)果合格時,向汽車總線發(fā)送開啟的邏輯指令,使駕駛員可用鑰匙發(fā)動汽車。當(dāng)駕駛員未進(jìn)行酒精含量檢測或檢測結(jié)果超標(biāo)時,則無法使用鑰匙發(fā)動汽車。
目前,該模塊已實現(xiàn)酒精含量檢測及檢測結(jié)果分析功能,可依據(jù)檢測結(jié)果向汽車總線發(fā)送邏輯指令。開啟系統(tǒng)后的自動檢測功能還在研發(fā)調(diào)試階段,對于汽車發(fā)動的實際控制需要對汽車的點火開關(guān)進(jìn)行改造,同時涉及汽車總線的硬件改造,需與汽車廠商合作實現(xiàn)。
2.3 消除兒童滯留安全隱患
兒童安全防護(hù)模塊用于兒童滯留車內(nèi)時安全隱患的消除。在發(fā)動機(jī)關(guān)閉后,兒童安全防護(hù)模塊會利用紅外傳感器判斷發(fā)動機(jī)關(guān)閉時車內(nèi)是否留人,車內(nèi)留人時,通過車內(nèi)溫度、氧氣含量監(jiān)測實現(xiàn)車內(nèi)環(huán)境的實時綜合判斷,環(huán)境異常時,通過向汽車總線發(fā)送邏輯指令,控制喇叭、車窗等組件進(jìn)行報警和智能解救,消除兒童滯留車內(nèi)的潛在危險。
目前,該模塊已實現(xiàn)紅外探測和溫度檢測,并可依據(jù)傳感器檢測結(jié)果,向汽車總線發(fā)送相應(yīng)邏輯指令,實現(xiàn)對喇叭、車窗等汽車組件的邏輯控制;氧氣含量檢測目前還在調(diào)試階段,對汽車組件的實際控制涉及硬件改造,需與汽車廠商合作完成。
2.4 系統(tǒng)整體設(shè)計
本系統(tǒng)采用多模塊、多進(jìn)程同步處理方式,具有提高多核處理器利用率、方便程序調(diào)試和維護(hù)、提高系統(tǒng)穩(wěn)定性等優(yōu)點。父進(jìn)程負(fù)責(zé)維護(hù)子進(jìn)程,進(jìn)程間通信采用命名管道方式。
疲勞駕駛監(jiān)測模塊由疲勞駕駛監(jiān)測進(jìn)程執(zhí)行,一旦發(fā)現(xiàn)駕駛員處于疲勞駕駛狀態(tài)立即向日志記錄進(jìn)程發(fā)送信號(SIGUSR2)。日志記錄進(jìn)程在未接收到信號時處于阻塞狀態(tài),一旦接收到信號(SIGUSR2),便立即向本地日志文件寫入“drive fatigue”并記錄本地時間,同時向語音提示進(jìn)程發(fā)送信號(SIGUSR1)。語音提示進(jìn)程接收到信號(SIGUSR1)后播放疲勞駕駛警告語音。
酒駕預(yù)防模塊和兒童安全防護(hù)模塊由串口通信進(jìn)程處理。STM32單片機(jī)獲取各傳感器數(shù)據(jù)并由串口將數(shù)據(jù)發(fā)送到嵌入式系統(tǒng)。串口通信進(jìn)程負(fù)責(zé)接收和處理接收到的數(shù)據(jù),并將判定的邏輯結(jié)果通過文件系統(tǒng)輸出到相應(yīng)的文件中,同時向數(shù)據(jù)庫服務(wù)進(jìn)程發(fā)送信號(SIGUSR1)和數(shù)據(jù)。數(shù)據(jù)庫服務(wù)進(jìn)程接收到信號后讀取數(shù)據(jù),并將數(shù)據(jù)發(fā)送到本地或遠(yuǎn)程MySQL數(shù)據(jù)庫中。
3 可行性分析
疲勞駕駛模塊采用的處理器架構(gòu)為雙核ARM Coretx-A72+四核ARM Cortex A53,性能與移動端設(shè)備類似,能夠在保持一定幀率的情況下完成人眼開闔狀態(tài)的檢測。若在車載部分采用性能更好的處理器,則可進(jìn)一步提升模塊處理速度,縮短延遲時間,模塊性能還將有更大提升,開發(fā)潛力巨大。
疲勞駕駛模塊采用的機(jī)器學(xué)習(xí)算法在未來有廣闊的前景以及發(fā)展空間,并且可通過增加訓(xùn)練樣本、優(yōu)化算法來提高檢測準(zhǔn)確性。
利用開發(fā)板豐富的接口,可讀取酒精傳感器、溫度傳感器等數(shù)據(jù),同時,系統(tǒng)基于Linux內(nèi)核,便于開發(fā)、設(shè)計算法,對返回至系統(tǒng)的傳感器檢測結(jié)果進(jìn)行分析處理,設(shè)置酒精含量、車內(nèi)溫度、氧氣含量等安全閾值,進(jìn)行超閾值情況下的報警,實現(xiàn)酒駕預(yù)防和兒童安全防護(hù)功能。
4 性能優(yōu)勢
疲勞駕駛監(jiān)測模塊采用基于機(jī)器視覺的檢測方法,主要通過視頻圖像處理技術(shù)實時監(jiān)控駕駛員的眼睛變化情況,綜合判斷駕駛員是否處于疲勞駕駛狀態(tài)。相較于基于生理信號的檢測方法,此方法無需接觸駕駛員身體,不會影響駕駛;同時,隨著處理器性能的提升,模塊可以達(dá)到更高的檢測頻率,相較于基于駕駛行為的檢測方法,具有更低的誤判率,更具發(fā)展?jié)摿Α?/p>
酒駕預(yù)防模塊通過嵌入高靈敏度酒精檢測傳感器實現(xiàn)對駕駛員酒精含量的精準(zhǔn)檢測。當(dāng)駕駛員不進(jìn)行酒精檢測或酒精檢測結(jié)果超標(biāo)時,駕駛員無法發(fā)動汽車。通過酒精檢測結(jié)果對點火開關(guān)的控制,實現(xiàn)了酒駕的事前防范,從源頭制止酒駕行為,彌補了目前交警抽測的不足;此外,該模塊可實現(xiàn)酒精含量的強(qiáng)制檢測,有效防止目前車載酒精檢測儀人為棄用現(xiàn)象的發(fā)生,具有極高的推廣價值。
兒童安全防護(hù)模塊通過多種傳感器獲取數(shù)據(jù),對車內(nèi)環(huán)境進(jìn)行綜合判斷,通過汽車總線控制車內(nèi)必要的硬件設(shè)備,全方位消除兒童滯留時的潛在安全隱患。填補了目前市面上針對此問題的技術(shù)空缺。
5 創(chuàng)新點
5.1 基于機(jī)器學(xué)習(xí)的疲勞駕駛檢測
區(qū)別于傳統(tǒng)的生理信號檢測,疲勞駕駛模塊采用SVM特征分類方法,建立左右眼開闔庫,能夠更精確地判定駕駛員是否處于疲勞駕駛狀態(tài),彌補了目前疲勞駕駛檢測技術(shù)的不足。同時,疲勞駕駛模塊采用了基于Dlib機(jī)器學(xué)習(xí)庫的人臉檢測模塊,能夠有效對人臉及檢測部位進(jìn)行精確捕獲,可提高系統(tǒng)目標(biāo)識別的可靠性。
5.2 借助汽車總線實現(xiàn)對汽車組件的控制
系統(tǒng)基于各模塊數(shù)據(jù)分析結(jié)果,通過向汽車總線發(fā)送相關(guān)邏輯指令,控制車內(nèi)必要的硬件設(shè)備,實現(xiàn)危險駕駛狀態(tài)的報警、酒精含量的強(qiáng)制檢測、車內(nèi)環(huán)境異常時對兒童的智能解救等操作。
5.3 消除兒童滯留隱患
通過多種傳感器獲取數(shù)據(jù),對車內(nèi)環(huán)境進(jìn)行綜合判斷。通過CAN總線控制車內(nèi)必要的硬件設(shè)備,全方位消除兒童滯留時的潛在安全隱患,填補該領(lǐng)域的技術(shù)空白。
5.4 高效安全的系統(tǒng)平臺
基于Linux內(nèi)核的操作系統(tǒng)具有安全高效、可移植性強(qiáng)等特點,便于在PC端進(jìn)行程序開發(fā)。對用戶權(quán)限的控制機(jī)制可防止用戶隨意篡改系統(tǒng)預(yù)設(shè)功能及數(shù)據(jù)。
5.5 多模塊的硬件設(shè)計
系統(tǒng)硬件設(shè)計基于多模塊、多傳感器并行的思想,集成度高,通過設(shè)置檢測模式判定功能,對不同實際環(huán)境采用不同的檢測和處理方案,提高系統(tǒng)應(yīng)變能力并有效降低功耗。
6 市場前景
6.1 應(yīng)用前景
可與汽車廠商合作開發(fā)產(chǎn)品,由團(tuán)隊提供軟件技術(shù),汽車廠商完成汽車總線及相關(guān)組件的硬件改造,并完成系統(tǒng)的車載內(nèi)嵌,借助高性能芯片,進(jìn)一步提升系統(tǒng)處理速度,優(yōu)化系統(tǒng)性能。這一發(fā)展方向中,可尤其重視與長途運輸汽車廠商的合作,由于長途運輸行業(yè)的特殊性,使得本系統(tǒng)更具應(yīng)用和統(tǒng)一推廣價值。
當(dāng)產(chǎn)品具有一定的市場普及度和較高的行業(yè)認(rèn)可度后,可與交管部門合作,對某一地區(qū)的車輛進(jìn)行系統(tǒng)的統(tǒng)一安裝,通過聯(lián)網(wǎng)獲取車輛駕駛行為記錄,依據(jù)記錄對危險駕駛行為進(jìn)行懲處,實現(xiàn)疲勞駕駛、酒后駕駛的統(tǒng)一監(jiān)管。
6.2 技術(shù)發(fā)展前景
機(jī)器學(xué)習(xí)極具發(fā)展?jié)摿?。隨著技術(shù)的不斷革新,疲勞駕駛監(jiān)測模塊的性能也將獲得更大的提升空間,駕駛狀態(tài)的監(jiān)測和判別精度將進(jìn)一步提升,依據(jù)這一技術(shù)原理,也可開發(fā)更多智能功能,豐富系統(tǒng)模塊。
借助汽車總線實現(xiàn)對汽車組件的控制,可實現(xiàn)許多強(qiáng)制功能。隨著系統(tǒng)各模塊對汽車總線邏輯控制度的提升,系統(tǒng)可開發(fā)出更多基于檢測結(jié)果的相關(guān)控制功能。
與AI芯片廠商以及互聯(lián)網(wǎng)公司合作,使用專門針對機(jī)器學(xué)習(xí)、具備強(qiáng)大并行計算與浮點運算的電路,從硬件層面全方位提升運算速度,實現(xiàn)更高效率的疲勞駕駛檢測,使得整套系統(tǒng)性能大幅提升。
隨著數(shù)字圖像處理技術(shù)的發(fā)展及相關(guān)技術(shù)的融合,可研發(fā)基于面部信息或虹膜信息的身份識別技術(shù),為駕駛員建立面部ID,開發(fā)基于面部ID的防盜、智能啟動等功能模塊。