賴樹(shù)旺
摘 要:TensorFlow是Google開(kāi)發(fā)的一個(gè)端到端開(kāi)源機(jī)器學(xué)習(xí)平臺(tái),可以讓開(kāi)發(fā)者輕松地構(gòu)建和部署由機(jī)器學(xué)習(xí)提供支持的應(yīng)用。本文通過(guò)在Raspberry Pi上部署TensorFlow應(yīng)用,針對(duì)駕駛員在照明良好的道路上非法使用遠(yuǎn)光燈影響到他人正常行駛問(wèn)題,利用TensorFlow深度學(xué)習(xí)框架和OpenCV對(duì)具體對(duì)象進(jìn)行Object detection實(shí)現(xiàn)遠(yuǎn)近光燈適應(yīng)行駛環(huán)境自動(dòng)切換,從而實(shí)現(xiàn)基于TensorFlow前照燈系統(tǒng)應(yīng)用。
關(guān)鍵詞:TensorFlow;Raspberry Pi;深度學(xué)習(xí);OpenCV;Object detection
1研究現(xiàn)狀
目前現(xiàn)有的智能燈光系統(tǒng)最為典型的有:自適應(yīng)前照燈系統(tǒng)(AFS)、自適應(yīng)遠(yuǎn)光燈系統(tǒng)(ADB)以及其他針對(duì)遠(yuǎn)近光切換的技術(shù)。
ADB系統(tǒng)是利用了自動(dòng)調(diào)整遠(yuǎn)光光束分布,在前方車輛和對(duì)向來(lái)車的周圍形成陰影區(qū)域來(lái)減少遠(yuǎn)光燈造成道路使用者目眩的技術(shù)。通過(guò)研究表明,配備有自適應(yīng)遠(yuǎn)光燈系統(tǒng)的汽車,在系統(tǒng)傳感器檢測(cè)到行車道路前方或?qū)ο蛴熊囕v時(shí),汽車會(huì)自動(dòng)將遠(yuǎn)光光束調(diào)整為“L”型,實(shí)現(xiàn)在正常遠(yuǎn)光照明區(qū)域內(nèi)形成一個(gè)暗區(qū),從而能夠提高駕駛員的視線距離,幫助駕駛員看清道路環(huán)境,并且減少給其他道路使用者造成眩目、不適和注意力分散等情況。
2前照燈系統(tǒng)設(shè)計(jì)
2.1系統(tǒng)工作原理
前照燈系統(tǒng)有三層結(jié)構(gòu):感知層、處理層、決策層。通過(guò)搭建汽車模型,模擬行車狀態(tài)。其中處理層的中央處理器采用了基于ARM的單板計(jì)算機(jī)——Raspberry Pi作為中央處理器,再結(jié)合攝像頭、光敏傳感器,構(gòu)成路測(cè)裝置。系統(tǒng)通過(guò)對(duì)駕駛環(huán)境的光線強(qiáng)度、有無(wú)障礙物等指標(biāo)進(jìn)行實(shí)時(shí)狀態(tài)監(jiān)測(cè),采集監(jiān)測(cè)數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行判斷,建立監(jiān)測(cè)數(shù)據(jù)庫(kù)。由TensorFlow和OpenCV作為算法編程支撐。實(shí)時(shí)監(jiān)測(cè)攝像頭與光敏傳感器接收到的數(shù)據(jù)作為判斷依據(jù)。
感知層由攝像頭、光敏傳感器組成,實(shí)時(shí)接收外界環(huán)境信息。處理層由Raspberry Pi與TensorFlow、OpenCV組成,實(shí)時(shí)接收由攝像頭與光敏傳感器傳來(lái)的數(shù)據(jù)信息,對(duì)傳來(lái)的數(shù)據(jù)信息進(jìn)行處理,得到處理結(jié)果傳給決策層做出一系列反應(yīng)。決策層由兩個(gè)LED燈組成,根據(jù)處理層傳來(lái)的處理結(jié)果做出反應(yīng)。
2.2核心算法
TensorFlow是用數(shù)據(jù)流圖做計(jì)算的。首先數(shù)據(jù)進(jìn)行輸入,經(jīng)過(guò)塑形后,一層一層進(jìn)行前向傳播運(yùn)算。在輸出前會(huì)使用Relu層用激活函數(shù)做非線性處理,然后進(jìn)入Logit層(輸出層),學(xué)習(xí)兩個(gè)權(quán)重和偏置,用Softmax來(lái)計(jì)算輸出結(jié)果中各個(gè)類別的概率分布。用交叉熵來(lái)度量?jī)蓚€(gè)概率分布(源樣本的概率分布和輸出結(jié)果的概率分布)之間的相似性。然后開(kāi)始計(jì)算梯度,以及交叉熵后的結(jié)果。隨后進(jìn)入SGD訓(xùn)練,也就是反向傳播的過(guò)程,從上往下計(jì)算每一層的參數(shù),依次進(jìn)行更新。其中激活函數(shù)做非線性處理也就是運(yùn)行時(shí)激活神經(jīng)網(wǎng)絡(luò)中某一部分神經(jīng)元,將激活信息向后傳入下一層的神經(jīng)網(wǎng)絡(luò)。這一部分是我們訓(xùn)練得到目標(biāo)對(duì)象的過(guò)程,也就是用來(lái)標(biāo)識(shí)識(shí)別哪個(gè)物體是車或者是人。
Object Detection是在靜止圖像或視頻中查找真實(shí)世界對(duì)象實(shí)例(如汽車,自行車,電視,鮮花和人類)的過(guò)程。它允許識(shí)別,定位和檢測(cè)圖像中的多個(gè)對(duì)象,這使我們能夠更好地理解整個(gè)圖像。算法的實(shí)現(xiàn)流程為:首先從手上的輸入圖像中提取特征,并使用這些特征來(lái)確定圖像的類別,構(gòu)建神經(jīng)網(wǎng)絡(luò),創(chuàng)建一組軟件“神經(jīng)元”并將它們連接在一起,允許它們相互發(fā)送消息。接下來(lái),要求網(wǎng)絡(luò)解決一個(gè)問(wèn)題,它試圖反復(fù)嘗試,每次加強(qiáng)導(dǎo)致成功的連接并減少導(dǎo)致失敗的連接。從而進(jìn)行模型的訓(xùn)練,提高正確識(shí)別率。這一部分是我們檢測(cè)物體是否為我們訓(xùn)練得到的目標(biāo)對(duì)象。也就是通過(guò)攝像頭上獲取的實(shí)時(shí)影像中是否包含了車或者人。
3前照燈系統(tǒng)功能
3.1遠(yuǎn)近光燈自動(dòng)切換
通過(guò)攝像頭實(shí)時(shí)監(jiān)測(cè)駕駛視野,當(dāng)駕駛視野中有其他道路使用者時(shí)(如跟車、會(huì)車、行人),系統(tǒng)會(huì)自動(dòng)捕捉其他道路使用者的位置是否處于讓其致盲區(qū),若處于該區(qū)域時(shí)會(huì)將遠(yuǎn)光自動(dòng)調(diào)為近光燈,避免對(duì)其他道路使用者造成眩目,保證駕駛安全性。
光敏電阻實(shí)時(shí)監(jiān)測(cè)行駛環(huán)境的光強(qiáng)強(qiáng)度,當(dāng)系統(tǒng)檢測(cè)到環(huán)境光照較強(qiáng)時(shí),按照道路交通法是不允許開(kāi)啟遠(yuǎn)光燈,如當(dāng)前前照燈是屬于遠(yuǎn)光燈的話就自動(dòng)切換為近光燈行駛。
4實(shí)驗(yàn)測(cè)試與驗(yàn)證
4.1測(cè)試數(shù)據(jù)集的精準(zhǔn)度
經(jīng)過(guò)多次道路訓(xùn)練實(shí)驗(yàn)后,得到的精準(zhǔn)度數(shù)據(jù)為:正確檢測(cè)率:80.05%,錯(cuò)誤檢測(cè)率:43.1%,漏檢率:21.2%。
4.2驗(yàn)證實(shí)驗(yàn)結(jié)果
根據(jù)實(shí)驗(yàn)驗(yàn)證,攝像頭實(shí)時(shí)監(jiān)測(cè)道路信息,當(dāng)車或者人處于讓其致盲區(qū)時(shí),將處理結(jié)果迅速的返回給決策層,關(guān)閉遠(yuǎn)光燈開(kāi)啟近光燈。
5總結(jié)
自動(dòng)化、智能化是汽車產(chǎn)業(yè)未來(lái)的發(fā)展趨勢(shì),深度學(xué)習(xí)順應(yīng)時(shí)代熱點(diǎn),本文設(shè)計(jì)的前照燈系統(tǒng)可以降低不正確使用遠(yuǎn)光燈造成車禍的概率,很好的輔助了駕駛員,讓駕駛員把注意力放在安全駕駛上,減少駕駛員關(guān)閉遠(yuǎn)光燈的反應(yīng)時(shí)間,具有很好的應(yīng)用前景。
參考文獻(xiàn):
[1] 汪茂盛. 機(jī)動(dòng)車駕駛光污染及視力防護(hù)[J]. 中國(guó)眼鏡科技雜志, 2012(9):132-134.
[2]方路平,何杭江,周國(guó)民.目標(biāo)檢測(cè)算法研究綜述[J].計(jì)算機(jī)工程與應(yīng)用,2018,54(13):11-18.
[3] 尚巖巍, 趙利波. 汽車AFS照明系統(tǒng)淺析[J]. 華東科技:學(xué)術(shù)版, 2015(5):404-404.
[4] 劉然, 陳積先, 武華堂, et al. 自適應(yīng)遠(yuǎn)光(ADB)相關(guān)法規(guī)研究[J]. 光源與照明, 2017(1).