趙永濤,陳慶奎,方玉玲,趙德玉,姬麗娜
(1.上海理工大學 光電信息與計算機工程學院,上海 200093; 2.上海理工大學 管理學院,上海 200093)
(*通信作者電子郵箱zhaoyt_sh@163.com)
基于CUDA的行車安全預(yù)警方法
趙永濤1*,陳慶奎1,2,方玉玲2,趙德玉2,姬麗娜1
(1.上海理工大學 光電信息與計算機工程學院,上海 200093; 2.上海理工大學 管理學院,上海 200093)
(*通信作者電子郵箱zhaoyt_sh@163.com)
為了提高機動車駕駛時的安全性,提出了基于計算機視覺的行車安全中車距估計與超車檢測方法。首先,使用車輛陰影檢測方法確定車輛位置,根據(jù)陰影位置和視覺中心點的距離建立車距估計函數(shù);其次,對超車情況使用背景光流建模的方法建立光流估計方程,通過估計光流將行駛中的正常物體與非正常物體分開,從而辨識駕駛途中的超車現(xiàn)象。根據(jù)車距和超車情況的檢測及時提醒駕駛員注意行車中可能存在的安全隱患。實驗結(jié)果表明該方法可以較為準確地估計車距、檢測超車情況。在統(tǒng)一設(shè)備架構(gòu)(CUDA)下使用圖形處理器(GPU)NVIDIA GeForce GTX680顯卡對算法進行加速,可以達到48.9ms/幀的處理速率,基本滿足了實時處理的要求。
行車安全;車距估計;超車檢測;行車監(jiān)控;安全預(yù)警;統(tǒng)一設(shè)備架構(gòu)
汽車輔助駕駛系統(tǒng)方面的研究近年來正在迅速推進[1],基于實時監(jiān)控分析的行車安全變得越來越重要。配備有輔助駕駛系統(tǒng)的車輛正在逐步取代傳統(tǒng)的車輛,輔助駕駛系統(tǒng)也對減少交通事故做出了很大貢獻。輔助駕駛系統(tǒng)是指行車中以圖像、聲音等形式告知駕駛員車身周圍的障礙物或危險因素的輔助系統(tǒng),常見的有:基于傳感技術(shù)的距離預(yù)警系統(tǒng),其對車輛間橫向和縱向距離過近的情況有很好的提示作用;基于圖像識別的車道保持和前方車輛預(yù)警系統(tǒng),也能夠在一定程度上提供給駕駛員有用的行車信息;其他還有基于特定情況的輔助駕駛系統(tǒng)。近年來隨著深度學習的發(fā)展,其在行車中行人和物體識別方面的應(yīng)用也在迅速推進。
處于行車監(jiān)控中的車輛通過檢測車輛陰影、角點或邊特征來進行檢測與定位,可以較為準確地確定車輛相對于本車輛的位置。通過速度、車道信息的變化可以獲得感興趣的行車特征。
光流法[2]在運動目標提取、識別和跟蹤方面有著重要應(yīng)用,其在行車監(jiān)控分析上的應(yīng)用較少,主要因為光流法處理的多是靜態(tài)背景下的動態(tài)目標,通過求解光流來提取運動目標,而車載監(jiān)控畫面的背景時刻都在變化,背景和移動物體都會產(chǎn)生光流,因此很難將之區(qū)分開來。另外一個方面是因為光流場的求解一般較為耗時,特別是精確光流的計算方法[3]用時更長,不適合應(yīng)用于實時處理系統(tǒng)。
本文將行車監(jiān)控的視頻進行分析,首先提出視覺中心點的概念及選取方法,并根據(jù)車輛位置與視覺中心點的距離來估計車距;然后根據(jù)光流是基于視覺中心點向外發(fā)散的特征,提出一種背景光流估計方法,可以檢測并定位出行車途中因超車產(chǎn)生的異常光流。
關(guān)于輔助駕駛的研究方興未艾,目前多數(shù)輔助駕駛技術(shù)專注于使用傳感器來獲取車身周圍狀況信息。近些年來隨著計算機視覺的進一步發(fā)展,基于圖像和視頻的行車分析正在逐步興起。McCall等[4]采用方向可控的邊緣濾波器來識別和估計道路上的交通標線;徐翠[5]介紹了一種基于貝葉斯網(wǎng)絡(luò)的駕駛員疲勞狀態(tài)估計;Zhou等[6]采用激光雷達和線性支持向量機(Support Vector Machine, SVM)來進行交通標志的識別;孫曉艷等[7]利用車尾燈的高亮特征使用分割閾值的方法檢測前方車輛,該方法也可用于預(yù)警前方急剎車等危險情況;Rezaei等[8]使用Haar-like特征來檢測車輛,通過鳥瞰視圖計算前方車輛距畫面底部的位置,從而估計出兩車車距;Han等[9]通過檢測得到前方車輛寬度,使用寬度構(gòu)造了一個距離測量模型,由于車輛種類的不同,該方法的區(qū)分度尚待提高;Fang等[10]根據(jù)真實的車輛距離數(shù)據(jù)構(gòu)造了帶參數(shù)的指數(shù)方程來估計車距,采用的參數(shù)和Rezaei等[8]所提出的相同;Kim等[11]則結(jié)合了車輛寬度和位置信息來估計車距,同樣受車輛寬度影響,并且在道路不平的路況下計算失準概率較高,不具有通用性。在超車檢測方面,Garcia等[12]使用LK(Lucas-Kanade)光流法檢測與行車方向相反的光流,數(shù)量超過一定閾值則認為存在超車現(xiàn)象,但容易出現(xiàn)一車多框的現(xiàn)象。
最近,NVIDIA公司在CES2014上推出的DRIVE PX車載系統(tǒng)[13],該系統(tǒng)采用深度學習的方法對道路上的行人、車輛和交通標識等進行識別和預(yù)警。這些研究都為智能輔助駕駛做出了一定貢獻,能夠一定程度上重構(gòu)路況,及時提醒駕駛員一些道路信息和警示安全信息。
本文提出了視覺中心點的概念及選擇方法,根據(jù)視覺中心點與車輛陰影的距離來估計車距;再根據(jù)行車光流方向與中心點發(fā)散方向的差異性區(qū)分出超車事件產(chǎn)生的異常前景光流。
2.1 視覺中心點的選擇
行車監(jiān)控中得到的視頻流沒有固定的背景,但在正常行車情況下,其產(chǎn)生的光流并非雜亂無規(guī)律,而是以監(jiān)控畫面的某一點為中心向四周發(fā)散的,因而認為該點為視覺中心點。
圖1為采用箭頭方式表示光流矢量。同幾何中心點不同,監(jiān)控內(nèi)所有的正常光流理論上均以視覺中心點為中心向外發(fā)散。

圖1 行車光流
1)行值的選擇。該點所在像素行的所有像素的光流一般是水平的,因此本文提出一種基于統(tǒng)計的方法。首先以行為單位計算該行所有像素中方向為水平的光流數(shù)量,該數(shù)量在行上大致滿足高斯分布。
圖2為水平光流數(shù)量的分布情況,取期望值μ或最大值作為中心點所在的行值。

圖2 水平光流在圖像縱向上的分布
2)列值的選擇。設(shè)行值選擇為R,列值C同樣適用統(tǒng)計的方法來確定。假設(shè)圖片是一個以左下角為原點的二維平面坐標系,其行數(shù)和列數(shù)代表了x軸和y軸,每一個像素點的光流可以看作是經(jīng)過坐標系中該點的一條直線,通過坐標(x,y)可以確定直線方程。以列為單位統(tǒng)計所有直線中與直線y=R的交點在該列的數(shù)量,該數(shù)量大致滿足高斯分布。
如圖3為各列交點數(shù)量的分布情況,取期望值μ或最大值作為中心點所在列值,行值和列值確定一個中心點。為了使中心點的選擇具有適應(yīng)環(huán)境變化的能力,而且不會過度對環(huán)境變化敏感,使用高斯模型對中心點進行建模,使其具有抗突變、適應(yīng)環(huán)境的能力。

圖3 交點水平分布
2.2 車距估計
在車距估計階段,首先使用文獻[10]中的車輛檢測算法檢測車輛尾部陰影以定位車輛,然后分析文獻[10]中的帶參數(shù)指數(shù)估計函數(shù)并提出新的車距估計方法。
圖4為使用車輛陰影檢測算法檢測出的車輛底部特征,車輛底部可以反映出車輛的位置信息。在文獻[10]中,距離估計的指數(shù)函數(shù)為:
D=αexp(βd)
其中α,β為可調(diào)整的參數(shù),不同的監(jiān)控場景下該參數(shù)也不同,d為陰影底部到視頻幀底部的像素數(shù)(如圖5中d1′和d2′)。在監(jiān)控攝像頭角度發(fā)生變化時,原有的參數(shù)不能夠自動調(diào)整,則距離的估計必然失準。

圖4 陰影檢測
從圖6可知,車輛陰影距視覺中心點的距離d和車輛的實際位置之間存在如下關(guān)系:
(1)
由式(1)可知D=d1H/d,即車距同d呈冪函數(shù)關(guān)系,在攝像頭高度一定的情況下,D∝1/d。

圖5 陰影距離改進
因此可設(shè)實際車距函數(shù)為:D=α/d,本文在車載攝像頭高度為115 cm、視頻幀分辨率為1 280×720的情況下人工進行測量,得到α的值為2.69×104。因為α=d1H,所以使用不同焦距的攝像頭以及安裝高度不同,該值也會有所變化。由于視覺中心點會隨著光流的計算改變,因此使用本文所提出的中心點到陰影底部的距離具有更好的適應(yīng)能力。

圖6 車輛位置與圖像成像
2.3 超車預(yù)警
針對超車情況進行分析,提出基于行車監(jiān)控的背景光流模型。該模型是以視覺中心點為中心,計算圖像光流場中各個位置的理想光流方法。某一點的光流可以理解為一個向量,行車監(jiān)控中無威脅物體產(chǎn)生的光流向量的方向應(yīng)與中心點到該點的方向一致。
如圖7所示,把光流場看作一個平面,在平面上建立二維坐標系。假設(shè)圖像視覺中心點O的坐標為(x0,y0),光流場上一點p的坐標為(x1,y1),其光流大小Fp為(dx,dy)。記中心點到點p的向量為P,光流向量為Fp,則點p處的實際光流與理想光流的角度偏差為:
(2)

因現(xiàn)實路況的復(fù)雜性和光流算法的誤差,在監(jiān)控中存在一些偽前景光流點集。對于光流計算誤差產(chǎn)生的偽前景光流點,本文首先使用若干次腐蝕以去除噪聲,然后再進行膨脹恢復(fù)、連接斷裂的前景區(qū)域。對于道路顛簸造成的偽前景光流,本文采用前后幀間光流緩沖池來進行判斷與消除。具體做法為:為每一個光流點記錄最近3次的光流判斷值,0代表背景光流點,1為前景光流點;新的光流點首先用自身判斷值更新緩沖池,然后前景光流點根據(jù)緩沖池中值是否全為1判斷自身狀態(tài);若某連通體中包含判斷為偽前景的點,則該連通體視為偽前景。

圖7 各點理想光流方向
在車輛和其他光流異常的物體標定中,使用連通體標記算法對前景光流進行標記,并去除小的連通體,最后進行框定以突出顯示來提示行車異常事件。在實際應(yīng)用中,處于監(jiān)控畫面上面部分的光流可以不作考慮,因為該區(qū)域光流是樹木、路標、樓房等造成的,對行車沒有影響。
為驗證本文提出的車距估計和超車檢測算法的有效性,選取三段網(wǎng)絡(luò)上真實路段的監(jiān)控視頻樣本進行測試,測試樣本涵蓋城市公路和高速公路,城市公路中又有畫面良好和有一定噪聲的監(jiān)控。
采用實驗環(huán)境為:Windows7 64bit,IntelCorei5處理器,8GB內(nèi)存,顯卡采用NVIDIAGeForceGTX680,頻率為1 006MHz。使用Farneb?ck[14]的光流計算方法的GPU實現(xiàn)對光流的計算進行加速,使用CUDA對陰影檢測進行加速和對異常光流區(qū)域進行二值化和連通體標記。圖8為不同路段的監(jiān)控中車距估計結(jié)果和超車事件的檢測結(jié)果,并用白色框體進行框定。實驗證明該模型能夠較準確地對車距進行估計,較好地區(qū)分行車途中的超車現(xiàn)象,并對車輛進行標記,提示車距,對橫向來車和兩側(cè)超車的情況能夠正確地進行預(yù)警。

圖8 實驗結(jié)果
因現(xiàn)實路況復(fù)雜和受監(jiān)控畫面的畫質(zhì)影響,在監(jiān)控中依然存在一些誤警和漏警的事件。圖8(b)中誤判是因為車輛快速行駛時左側(cè)護欄由于高速運動導(dǎo)致光流計算不準確;圖8(e)中出現(xiàn)的漏警情況是由于車內(nèi)物體反光導(dǎo)致監(jiān)控畫面受到影響。
3.1 車距估計準確性對比
將本文提出的車距估計方法同文獻[10]中的帶參數(shù)指數(shù)函數(shù)估計方法進行了比較。
圖9(a)中橫坐標為車輛底部距監(jiān)控視頻底部的距離,圖9(b)中橫坐標為車輛底部距視覺中心點的距離,縱坐標均為前車距本車的車距。
由圖9可以看出,使用對數(shù)函數(shù)對車距曲線并不能很好地擬合,而使用本文指數(shù)函數(shù)的形式能夠較好地擬合車距曲線,從而證明2.2節(jié)中車距D與陰影底部到視覺中心點的距離d的倒數(shù)是線性相關(guān)的。
3.2 超車檢測對比
將本文算法同Garcia等[12]使用的超車檢測算法進行對比,考察了漏檢率和誤檢率指標的差異。
表1中:漏檢率為超車期間連續(xù)視頻幀中檢測出的有效超車數(shù)目占總超車數(shù)目的百分比;誤檢率為無效超車數(shù)目占總超車數(shù)目的百分比。可以看出,使用本文算法檢測的漏檢率同已有算法差別不大,主要因為本文使用了前后幀間光流緩沖池來判斷超車異常,有一定的滯后性。誤檢率大大低于已有算法,因為LK光流法計算得到的光流含有大量噪聲,容易產(chǎn)生誤警的情況;而本文采用Farneb?ck光流法得到的噪聲較少,便于異常光流的分析。
表1 超車檢測漏檢率和誤檢率 %
Tab.1Failuredetectionrateandfalsedetectionrateofovertakingdetection%

算法漏檢率1104×622672×378552×311誤檢率1104×622672×378552×311Garcia等算法[12]2.74.52.238.547.024.2本文算法2.14.91.818.329.411.6
3.3 CUDA加速對比
由于行車安全至關(guān)重要,及時有效地進行預(yù)警是輔助駕駛系統(tǒng)的重中之重。由于車輛陰影檢測和光流提取,連通體標記過程中算法計算量較大,使用CPU難以滿足實時處理的要求。本文對陰影檢測、光流的計算、中心點的計算和連通體標記均使用了GPU進行加速,其中光流計算使用了OpenCV中的GPU模塊進行加速,陰影檢測、中心點的計算和連通體標記過程使用CUDA進行并行化。本文在GeForceGTX680顯卡上對算法進行測試并與基于CPU的串行算法作了對比。
由于光流的計算時間較長,在分辨率較高的圖像中耗時更為嚴重,因此串行算法在處理速度上存在嚴重不足。由表2可知,并行算法在處理速度上較串行算法有5.8~7.4倍的提升。在552×311大小的監(jiān)控視頻處理中基于GPU的算法可以得到48.9ms/幀的處理速度,能夠及時對視頻進行處理和預(yù)警,滿足實時監(jiān)控的需求。
表2 串行與并行算法每幀處理時間對比ms
Tab.2Processingtimecomparisonofserialandparallelalgorithmsforeachframems

平臺視頻尺寸1104×622672×378552×311CPU2318.2386.6283.5GPU310.656.348.9
本文研究了行車安全中車距估計與超車事件檢測方法。針對行車監(jiān)控畫面的特點,提出了視覺中心點的概念,并在此基礎(chǔ)上分析設(shè)計了基于指數(shù)函數(shù)的車距估計函數(shù),建立了用于檢測超車現(xiàn)象的背景光流模型。為實現(xiàn)監(jiān)控視頻的實時處理,使用GPU對算法進行加速,基本滿足了實時處理要求。實驗表明,本文中車距估計函數(shù)能夠較準確地擬合實際車距,背景光流模型能夠有效預(yù)警超車現(xiàn)象,對汽車輔助駕駛系統(tǒng)方面的研究有著一定的意義。因行車監(jiān)控場景的復(fù)雜性,該模型也存在一些錯誤預(yù)警和遺漏預(yù)警的情況,車輛識別的精確度有待進一步提高,并行算法的處理速度難以滿足幀率較高的監(jiān)控,將會在未來的工作中繼續(xù)研究改進方法。
)
[1]SIVARAMANS,TRIVEDIMM.Lookingatvehiclesontheroad:asurveyofvision-basedvehicledetection,tracking,andbehavioranalysis[J].IEEETransactionsonIntelligentTransportationSystems, 2013, 14(4): 1773-1795.
[2]BARRONJL,FLEETDJ,BEAUCHEMINSS.Performanceofopticalflowtechniques[J].InternationalJournalofComputerVision, 1994, 12(1): 43-77.
[3]TAOM,BAIJ,KOHLIP,etal.SimpleFlow:anon-iterative,sublinearopticalflowalgorithm[EB/OL].[2016-03-20].http://graphics.berkeley.edu/papers/Tao-SAN-2012-05/Tao-SAN-2012-05.pdf.
[4]MCCALLJC,TRIVEDIMM.Video-basedlaneestimationandtrackingfordriverassistance:survey,system,andevaluation[J].IEEETransactionsonIntelligentTransportationSystems, 2006, 7(1): 20-37.
[5] 徐翠.基于計算機視覺的汽車安全輔助駕駛?cè)舾申P(guān)鍵問題研究[D].合肥:中國科學技術(shù)大學,2009:59-66.(XUC.Researchonkeyissuesinvehiclesafetydrivingassistanttechniquesoncomputervision[D].Hefei:UniversityofScienceandTechnologyofChina, 2009: 59-66.)
[6]ZHOUL,DENGZ.LIDARandvision-basedreal-timetrafficsigndetectionandrecognitionalgorithmforintelligentvehicle[C]//ProceedingsofIEEE17thInternationalConferenceonIntelligentTransportationSystems.Piscataway,NJ:IEEE, 2014: 578-583.
[7] 孫曉艷,王健,王建強,等.基于亮度累加直方圖的夜間車輛檢測算法[J].計算機工程,2013,39(6):239-243.(SUNXY,WANGJ,WANGJQ,etal.Nighttimevehicledetectionalgorithmbasedonbrightnesscumulativehistogram[J].ComputerEngineering, 2013, 39(6): 239-243.)
[8]REZAEIM,TERAUCHIM,KLETTER.Robustvehicledetectionanddistanceestimationunderchallenginglightingconditions[J].IEEETransactionsonIntelligentTransportationSystems, 2015, 16(5): 2723-2743.
[9]HANJ,HEOO,PARKM,etal.Vehicledistanceestimationusingamono-cameraforFCW/AEBsystems[J].InternationalJournalofAutomotiveTechnology, 2016, 17(3): 483-491.
[10] FANG C Y, LIANG J H, LO C S, et al.A real-time visual-based front-mounted vehicle collision warning system [C]// Proceedings of the 2013 IEEE Symposium on Computational Intelligence in Vehicles and Transportation Systems.Piscataway, NJ: IEEE, 2013: 1-8.
[11] KIM G, CHO J S.Vision-based vehicle detection and inter-vehicle distance estimation [C]// Proceedings of the 12th International Conference on Control, Automation and Systems.Piscataway, NJ: IEEE, 2012: 625-629.
[12] GARCIA F, CERRI P, BROGGI A, et al.Data fusion for overtaking vehicle detection based on radar and optical flow [C]// Proceedings of the 2012 IEEE Intelligent Vehicles Symposium.Piscataway, NJ: IEEE, 2012: 494-499.
[13] NVIDIA.“NVIDIA DRIVE PX” 2015.[EB/OL].(2015-01-13) [2015-09-25].http://images.nvidia.com/content/tegra/automotive/images/2016/solutions/pdf/end-to-end-dl-using-px.pdf.
This work is partially supported by the National Natural Science Foundation of China (61572325, 60970012), Shanghai Key Science and Technology Project (14511107902), Shanghai Engineering Research Center Project (GCZX14014), Shanghai Leading Academic Discipline Project (XTKX2012).
ZHAO Yongtao, born in 1991, M.S.Candidate.His research interests include pattern recognition, computer vision, parallel computing.
CHEN Qingkui, born in 1966, Ph.D., professor.His research interests include network computing, parallel computing, Internet of things.
FANG Yuling, born in 1990, Ph.D.candidate.Her research interests include parallel computing, low overhead optimization.
ZHAO Deyu, born in 1978, Ph.D.candidate.His research interests include large scale crowd motion analysis, video privacy protection.
JI Lina, born in 1990, M.S.candidate.Her research interests include pattern recognition, parallel computing.
Early warning method for driving safety based on CUDA
ZHAO Yongtao1*, CHEN Qingkui1,2, FANG Yuling2, ZHAO Deyu2, JI Lina1
(1.SchoolofOptical-ElectricalandComputerEngineering,UniversityofShanghaiforScienceandTechnology,Shanghai200093,China;2.BusinessSchool,UniversityofShanghaiforScienceandTechnology,Shanghai200093,China)
To improve the safety of vehicles while driving, a computer vision-based inter-vehicle distance estimation and warning method was proposed in this paper.First, shadow detection method was applied to detect shadow of cars ahead, and inter-vehicle distance estimation function was built based on the distance between shadow and vision center of a frame.Then, estimation equations for non-threatened background optical flow was built, and by judging optical flow with the estimation equations, the abnormal objects could be separated from others, thus the overtaking event could be recognized.Based on the inter-vehicle distance and detection of overtaking event, the driver could be timely warned of the potential safety hazard.The experimental results prove that the proposed method can estimate inter-vehicle distance and detect overtaking event accurately.Finally, NVIDIA GeForce GTX680 GPU (Graphic Processing Unit) was used to accelerate the algorithm on Compute Unified Device Architecture (CUDA) platform and achieve the processing speed of 48.9 ms per frame which basically meets the real-time processing demand.
driving safety; inter-vehicle distance estimation; overtaking detection; vehicle surveillance; safety warning; Compute Unified Device Architecture (CUDA)
2016-08-11;
2016-08-23。 基金項目:國家自然科學基金資助項目(61572325,60970012);上海重點科技攻關(guān)項目(14511107902);上海市工程中心建設(shè)項目(GCZX14014);上海市一流學科建設(shè)項目(XTKX2012)。
趙永濤(1991—),男,河北邯鄲人,碩士研究生,主要研究方向:模式識別、計算機視覺、并行計算; 陳慶奎(1966—),男,上海人,教授,博士生導(dǎo)師,博士,主要研究方向:網(wǎng)絡(luò)計算、并行計算、物聯(lián)網(wǎng); 方玉玲(1990—),女,河南信陽人,博士研究生,主要研究方向:并行計算、低能耗優(yōu)化;趙德玉(1978—),男,山東臨沂人,博士研究生,主要研究方向:大規(guī)模人群行為分析、視頻隱私保護; 姬麗娜(1990—),女,河南信陽人,碩士研究生,主要研究方向:模式識別、并行計算。
1001-9081(2017)01-0134-04
10.11772/j.issn.1001-9081.2017.01.0134
TP751.1
A