郭若彤,羅茜,黃凌霄,徐維昌
汽車檢測技術的算法系統研究與實現*
郭若彤,羅茜,黃凌霄,徐維昌
(寧夏大學 信息工程學院,寧夏 銀川 750021)
隨著國家經濟發展,乘車出行在人們出行方式選擇中的占比越來越大,但是隨著車輛增多,也給人們的生活帶來了一定的麻煩,如由于車輛增多造成大量環境污染、交通擁堵等。由此,在智能交通領域,視頻運動目標的智能處理也變得越來越重要,其中常用的辦法是采取車輛檢測技術,以此可以有效地對交通狀況進行檢測;并將之使用于智能交通系統當中,對于智能交通的發展有著積極的意義。通過汽車檢測技術的算法系統的研究與實現,對比了光流法、幀間差分法、背景差分法的適用范圍及優缺點。
車輛檢測;光流法;背景差分法;幀間差分法
隨著中國經濟的快速發展以及人民生活水平的不斷改善和提高,各家各戶所擁有的車輛數量也在不斷增加,人們對汽車的需求量也越來越大。因此,交通擁堵、環境污染、交通事故等問題對人們的生活產生一定程度的影響。當前,世界上用于解決城市交通問題的方法大致共分為兩種類型:①增加對道路基礎設施的投資;②合理掌握道路運行狀況,運用科學管理技術合理利用道路資源,科學預測道路交通流量,構建智能交通系統。在土地資源固定的情況下,先進的智能交通系統的發展是國際公認的解決交通問題的方式,由于道路建設不能不受限制地進行投資,因此發展智能交通系統有很大的建設意義,由于這個原因,設計汽車檢測技術算法系統更能滿足當前人們的需求。
光流指圖像中模式運動的速度,它是一種二維瞬時速度場[1]。光流場是一種像素級運動,同時也是圖像灰度圖像模式中的表觀移動。光流方法是通過比較視頻圖像相鄰幀中每個像素的亮度值變化,以獲得光流場,然后獲得目標運動場。如果一個視頻圖像中存在運動著的對象,則可以判斷出運動物體與目標背景對象的速度矢量不同,所以可以通過目標和圖像背景的相對運動來定位運動對象,檢測運動對象的位置。如果圖像中沒有運動的物體,則整個過程中光流矢量在圖像區域都是連續變化的。
在使用光流法對道路上的汽車進行檢測時,首先讀取當前視頻的視頻幀,對視頻圖像進行預處理,將彩色圖像轉換為灰度圖像。傳統光流法基于亮度恒定,即被跟蹤部分的像素運動前后灰度保持不變[2],再計算光流場,得到光流場后,接下來對光流場的幅值進行閾值分割,分割后得到二值圖,根據二值圖可以判斷出幅值大的位置為汽車,幅值小的位置為背景,沒有汽車。接下來進行形態學濾波、形態學腐蝕和形態學關閉操作。再統計汽車對象的位置以及面積,判斷此時圖像的面積比,若面積比大,則認為該圖像塊所包含的圖像是汽車,并將檢測出的汽車圖像用方框圈出,否則,則認為未檢測到汽車,檢測到的物品可能為噪聲或其他雜物,接著繼續循環處理該視頻。
高斯模型通過精確的高斯概率密度函數(正態分布曲線)來量化事物,并將事物分解為由高斯概率密度函數組成的模型,是基于模型的聚類方法[3]。該算法首先建立混合高斯模型,來表現圖像中的像素點,在視頻圖像播放的同時不斷地獲取新圖像像素,以此來更新現有的高斯混合模型。高斯混合模型中,灰度直方圖表現了圖像中灰度值出現的頻次,將更新后的高斯混合模型與當前圖像的每個像素點進行匹配,如匹配成功,則表示該像素點為背景點;匹配不成功則表示該背景點為前景點。
在使用高斯混合模型算法對道路上的汽車進行檢測時,首先讀取當前視頻的視頻幀,對視頻圖像進行預處理,將彩色圖像轉換為灰度圖像。取連續的5幀進行背景檢測,并進行參數初始化,初始化標準差,在這個過程中,背景是不斷更新的。在攝像機拍攝道路車輛運動視頻時,由于攝像機為靜止的,可以假設背景像素點的特征在一段時間內的變化不大,可以認為在此時間段內圖像中的背景像素點是服從高斯分布的,因此使用多個高斯分布來對背景像素進行背景建模。對于圖像中的每一個像素點,都采用個高斯分布來表示圖像中的各個像素點的特征,一般取值為3~5,接下來進行前景檢測,將當前輸入幀圖像與背景圖像進行比較。之后對視頻進行后處理,采用數學形態學處理,在前景圖中檢測變化聯通圖像的區域面積,如檢測到的圖像塊的比例占整個變化區域的40%及以上,則將該圖像塊所包含的圖像認為是汽車,并將檢測出的汽車圖像用方框圈出;否則,則認為未檢測到汽車,繼續循環處理該視頻。
幀間差分法是通過相鄰幀之間相減來獲得運動對象的輪廓的一種檢測方法,通過操縱視頻圖像序列的幀,時時檢測圖像中的情況。當圖像發生運動時,相鄰兩幀或三幀圖像之間會存在明顯差異,對它們做差,可得到差分圖像,也可得到運動物體之間的亮度差,對亮度差取絕對值,確定它是否大于閾值。由于在一定的環境情況下,背景像素值的相應變化是小于預定閾值的,如果圖像區域中的像素值發生顯著變化,則說明存在著移動的物體。
在使用幀間差分法對道路上的汽車進行檢測時,首先讀取當前視頻的視頻幀,對視頻圖像進行預處理,將彩色圖像轉換為灰度圖像。取相鄰幀的圖像對應的像素值,將相鄰的圖像對應的像素點相減,經過幀間差分后像素點不為0的就說明該像素點發生了移動,由此可得到他們的差分圖像。將兩幀圖像對應像素點的灰度值進行相減,并取其絕對值,得到差分圖像,接下來對兩幀圖像做差得到的差分圖像進行二值化處理,得到二值圖像。根據得到的二值圖像的灰度值來判斷該背景是前景還是背景,規定灰度值為255的點即為前景(運動目標)點,灰度值為0的點即為背景點;對圖像進行連通性分析,最終可得到含有完整運動目標圖像。提取出運動區域后,圖像可能還存在著一些其他因素的影響,產生誤差,如噪聲等。由于視頻中運動的圖像的背景不斷更新,所以需要循環處理,直到視頻結束為止。二值化處理完畢后采用數學形態學處理,在前景圖中檢測變化聯通圖像的區域面積,如檢測到的圖像塊的比例占整個變化區域的40%及以上,則將該圖像塊所包含的圖像認為是汽車,并將檢測出的汽車圖像用方框圈出;否則,則認為未檢測到汽車,繼續循環處理該視頻。
汽車檢測技術算法系統的界面將光流算法、高斯混合背景模型算法和幀間差分法三種算法集合在一個界面上,使用者可以根據自己的需求來選擇想要使用的算法對視頻進行汽車檢測。
系統界面由三個模塊組成,分別是視頻顯示模塊、狀態顯示模塊和系統功能模塊。視頻顯示模塊用于顯示原始視頻以及經過算法處理后的視頻,共有四個顯示窗口。狀態顯示模塊用于顯示當前所處理的視頻信息,顯示當前視頻路徑、當前幀、運行算法、視頻寬、視頻高。系統功能模塊用于控制視頻播放,加載視頻、選擇算法、控制視頻播放或暫停、進行界面抓圖,可將當前界面截圖保存為bmp格式的圖片,并選擇想要保存的路徑,點擊系統退出按鈕控制系統退出 操作。
使用者在使用時首先點擊加載視頻按鈕,選擇要加載的視頻,狀態顯示模塊將會顯示出當前視頻路徑,點擊視頻播放按鈕,視頻將會按照所選的算法進行檢測播放,狀態顯示模塊顯示當前播放的視頻的幀數以及寬高等信息,可點擊視頻暫停按鈕使視頻暫停。
光流場算法、高斯混合背景算法、幀間差分法均可以對視頻中汽車進行檢測,且能夠檢測出汽車的數量。其中光流場算法和高斯混合背景算法能夠正確得到檢測結果,而幀間差分法存在著一些問題,檢測結果具有一定的誤差。
基于計算機圖像處理對道路汽車進行檢測,對人們的出行以及未來智能交通系統發展均有著很重要的意義。尤其在交通管理方面,隨著中國交通環境變得越來越復雜,交通參與者也越來越多樣,對道路交通的檢測不僅僅只局限于對車輛的檢測,對行人、非機動車等交通參與者均需要進行檢測,使用現代化的手段有效且高效地對道路狀況進行檢測和判斷,更為迫切。將智能車輛檢測系統應用于智能交通系統中,通過實時檢測各路段情況并將道路信息傳送給道路行駛者,可幫助道路行駛者規避擁堵,選擇更為合適的道路行駛。與此同時,在日后的發展中視頻檢測技術也將具有更高的穩定性,可以盡量減少受車輛行駛噪聲和背景變化等干擾,以此提高檢測的效率和準確性,智能車輛檢測系統還將有效地記錄道路交通事故等狀況,使得道路管理更為高效,同時節省人力物力,使此應用具有很好的應用前景。
[1]胡覺暉,李一民,潘曉露.改進的光流法用于車輛識別與跟蹤[J].科學技術與工程,2010,10(23):5814-5817.
[2]肖軍,朱世鵬,黃杭,等.基于光流法的運動目標檢測與跟蹤算法[J].東北大學學報(自然科學版),2016,37(6):770-774.
[3]程全,馬軍勇.基于改進高斯混合模型的運動目標檢測方法[J].計算機科學,2014,41(7):318-321.
U472
A
10.15913/j.cnki.kjycx.2020.18.026
2095-6835(2020)18-0071-02
2020年大學生創新創業訓練計劃區級項目“汽車檢測技術的算法系統研究與實現”(編號:Q2020107490087)
郭若彤(1999—),女,寧夏石嘴山人,本科在讀,研究方向為網絡工程。
〔編輯:嚴麗琴〕