• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于計算機視覺的車道識別及駕駛狀態(tài)監(jiān)測方法

      2022-04-29 19:43:34賈文洋王鵬舉吳文祥劉朋
      計算機應用文摘 2022年12期
      關鍵詞:計算機視覺

      賈文洋 王鵬舉 吳文祥 劉朋

      關鍵詞 計算機視覺 車道識別 駕駛狀態(tài)監(jiān)測

      1引言

      近年來,隨著社會經(jīng)濟的不斷發(fā)展,人們生活水平不斷提高,越來越多的家庭擁有了汽車。自動駕駛技術的不斷發(fā)展,使得越來越多的汽車開始裝備駕駛輔助系統(tǒng)。

      采用計算機視覺進行道路識別和駕駛輔助具有成本低、部署快速、效率高等特點。使用OpenCV 對攝像頭傳回的數(shù)據(jù)進行實時處理。使用Canny 邊緣檢測技術和霍夫變換以實現(xiàn)圖像的實時處理,Canny 邊緣檢測采用了高斯模糊來加強對數(shù)據(jù)處理的精準性,首先進行圖像的降噪,然后計算圖像梯度,隨后進行非極大值抑制和閾值篩選,使用霍夫(Hough)變換尋找直線,最后標記出道路供駕駛員參考或為自動駕駛設置界限。

      在OpenCV 的基礎上,引入Tensorflow API 和已訓練數(shù)據(jù)集進行目標識別[1] 。根據(jù)已經(jīng)訓練好的模型,在車輛行駛中進行目標識別,如行人、車輛、紅綠燈等。同時,針對已有系統(tǒng)無法對駕駛員進行監(jiān)控和駕駛輔助問題,我們采用車載雙攝像頭的方式對車外道路信息和車內(nèi)駕駛員駕駛狀態(tài)進行實時采集來解決。車外攝像頭采集圖像,使用OpenCV 進行實時的圖像處理,識別車道并幫助駕駛員進行行車路線的保持;車內(nèi)攝像頭通過對駕駛者一定時間內(nèi)的眨眼次數(shù)進行統(tǒng)計,以判斷駕駛員的駕駛狀態(tài)。

      2車道識別步驟及算法實現(xiàn)

      車道線檢測和識別模塊主要流程如圖1 所示。

      2.1ROI 區(qū)域劃分算法實現(xiàn)

      收集實時圖像時,圖像中會出現(xiàn)對數(shù)據(jù)處理結(jié)果產(chǎn)生干擾的區(qū)域,如路邊的電線桿、大石塊等。這些因素的出現(xiàn)會導致數(shù)據(jù)處理速度變慢甚至影響準確性。為了排除非必要數(shù)據(jù)所帶來的干擾,通過圖像ROI 來解決這個問題。ROI 通過在圖像上選擇或使用諸如設定閾值以及從其他文件轉(zhuǎn)換獲得等方法生成。ROI 區(qū)域可以是點、線、面、不規(guī)則的形狀,通常用來作為圖像分類的樣本、掩膜、裁剪區(qū)。根據(jù)實際情況和模擬場景所提取到的數(shù)據(jù)來看,車道線的信息一般位于圖像中間靠下部分,因此需要對圖像進行裁剪,從而減少計算時間、提高檢測精度[2] 。

      2.2圖像灰度處理算法實現(xiàn)

      為了減小后續(xù)圖像處理的計算量,提高系統(tǒng)的實時性能,需要將車外攝像頭采集到的實時彩色圖像轉(zhuǎn)變成灰度圖像(圖2)?;叶葓D像將反映圖像局部和全體的色度與亮度階度的分布特征,并且灰度圖像消耗的內(nèi)存空間小。

      2.3Canny 邊緣檢測算法實現(xiàn)

      可以在精準提取圖像邊緣的前提下,盡可能降低噪聲所產(chǎn)生的影響,并且將圖像中弱邊緣和強邊緣識別出來。對于路面磨損、不清晰等情況,Canny邊緣檢測的魯棒性強,能夠綜合強弱邊緣的位置關系,計算出圖像整體邊緣信息。Canny 邊緣檢測算法如下。

      使用高斯模糊對圖像進行處理,保留邊緣信息,使用3×3 高斯濾波器:

      采取非極大值抑制,比較圖像像素和梯度強度與正負兩個方向上的兩個像素,若當前像素梯度強度大于其他兩個梯度時,設置該點為邊緣點,反之則該點將會被抑制。

      檢測強邊緣和弱邊緣。設置兩個值為閾值。將檢測到的邊緣點梯度值與雙閾值進行比較。若邊緣點梯度值大于較小閾值且小于較大閾值,則該點為弱邊緣;若該點梯度值小于小閾值,則刪除該點。

      在進行灰度處理后,系統(tǒng)將采用高斯濾波對圖像在傳輸過程中因為各種因素所干擾而產(chǎn)生的噪聲干擾進行去除。通過高斯函數(shù)離散化處理,以離散點的高斯函數(shù)值為權重對圖像灰度矩陣的每個像素進行加權平均,最后輸出結(jié)果(圖3)。

      2.4霍夫變換對直線進行檢測算法實現(xiàn)

      為了在車道檢測的過程中將區(qū)域中的直線繪制出來(圖4),實現(xiàn)ROI 區(qū)域像素從笛卡爾x?y 坐標系到霍夫k?b 坐標系的轉(zhuǎn)換,使用了概率霍夫變換,其算法如下:(1)檢測直線上的所有像素點,找到符合y=kx+b 的所有點坐標(x,y);(2)將y=kx+b 轉(zhuǎn)換為b=-kx+y 的形式。y=kx+b 直線上的點在b=-kx+y 上都體現(xiàn)出經(jīng)過(k,b)點,將這些點轉(zhuǎn)換為直線;(3)圖像中所有b=-kx+y 的點都表示各種直線。若找到了直線的交點,那么就找到了y=kx+b 坐標中的直線。

      2.5圖像實時回傳的處理方法

      使用OpenCV 獲取實時畫面,并將畫面以窗口化方式呈現(xiàn)在車載電腦屏幕上。對實時屏幕畫面進行典型處理,對傳回的圖像進行灰度處理和canny 邊緣檢測,最終可以達到每秒20 幀左右的畫面實時處理速度。如圖5 所示。

      2.6提高邊緣檢測下直線精度的處理方法

      將傳回的圖像直接進行邊緣檢測處理時,存在識別線條精度問題:一些線條出現(xiàn)短線、斷層,這對車道的精準識別產(chǎn)生影響。傳回邊緣檢測所產(chǎn)生的線條時,以坐標形式進行函數(shù)劃分,在斷層處畫線連接,使用高斯模糊對圖像進行邊緣化處理。

      3使用Tensorflow API 中的部分方法實現(xiàn)目標識別和碰撞預警

      使用OpenCV 的目標識別函數(shù)進行動態(tài)物體的識別,會導致識別效率低下[3] 。為了更好的解決上述問題,選擇使用Tensorflow API 與已經(jīng)訓練好的模型相結(jié)合,進行實時識別并標注車輛、行人、紅綠燈位置,還可以進行距離碰撞預警(圖6)。主要方法如下。

      4駕駛員駕駛狀態(tài)識別及算法實現(xiàn)

      駕駛員駕駛狀態(tài)識別模塊主要流程如圖7 所示。

      4.1使用OpenCV 進行人臉識別的算法實現(xiàn)

      通過OpenCV 調(diào)用攝像頭,使用基于dlib 的68 個特征點檢測模型進行人臉識別、眼間距以及眨眼次數(shù)的統(tǒng)計。主要算法如下。

      4.2Yolov5 進行物品識別的算法實現(xiàn)

      在前期進行模型的訓練,使系統(tǒng)具有識別手機、水杯的功能,并進行系統(tǒng)自動標注( 圖8)。使用yoloV5 python 接口(detect.py)處理圖片并創(chuàng)建Flask服務,主要算法如下。

      4.3駕駛員駕駛疲勞判斷的算法實現(xiàn)

      檢測駕駛員的瞳孔直徑,計算注目凝視、眼球轉(zhuǎn)動、眉眼掃視、眼睛閉合的時長,確定駕駛員疲勞的程度。根據(jù)Perclos 算法檢測出駕駛員存在疲勞駕駛狀態(tài),系統(tǒng)就會發(fā)出預警信號。主要算法如下。

      5總結(jié)

      本文通過基于OpenCV 實現(xiàn)了攝像頭的視頻流處理,識別出當前道路直線情況。同時,調(diào)用TensorflowAPI 實現(xiàn)了行車障礙的識別和碰撞距離的預警;對于車內(nèi)駕駛員,通過OpenCV 和Yolov5 實現(xiàn)了對駕駛員駕駛狀態(tài)的檢測和特定物品識別,將大大增加駕駛安全性。本系統(tǒng)尚有不足之處,如對道路識別的準確性、對特定物品識別的速度和精準度等都有待提高,未來將逐漸完善此項工作,不斷提高系統(tǒng)的穩(wěn)定性和魯棒性。

      猜你喜歡
      計算機視覺
      基于光流技術的障礙物檢測方法
      軟件(2016年4期)2017-01-20 09:48:18
      無人駕駛小車定點追蹤系統(tǒng)的設計與實現(xiàn)
      軟件工程(2016年11期)2017-01-17 19:50:08
      基于深度卷積神經(jīng)網(wǎng)絡的物體識別算法
      雙目攝像頭在識別物體大小方面的應用
      機器視覺技術發(fā)展及其工業(yè)應用
      危險氣體罐車液位計算機視覺監(jiān)控識別報警系統(tǒng)設計
      計算機視覺在交通領域的應用
      基于計算機視覺的細小顆粒團重量測量的研究
      對于計算機視覺商業(yè)化方向的研究
      基于Matlab的人臉檢測實驗設計
      海盐县| 河北省| 灌阳县| 略阳县| 和林格尔县| 宾阳县| 榆林市| 台湾省| 格尔木市| 隆尧县| 大庆市| 南丰县| 普宁市| 都匀市| 白河县| 玉屏| 阿巴嘎旗| 敖汉旗| 如东县| 芦溪县| 华安县| 莱芜市| 菏泽市| 宁阳县| 清流县| 永清县| 皋兰县| 屏东县| 湟中县| 美姑县| 天峨县| 孝昌县| 黄浦区| 灵台县| 钟山县| 海南省| 汝州市| 长治县| 玉林市| 襄垣县| 临海市|