楊俊華Yang Junhua
(重慶車輛檢測(cè)研究院 國(guó)家客車質(zhì)量監(jiān)督檢驗(yàn)中心,重慶 401122)
目前,國(guó)內(nèi)外學(xué)者對(duì)前方車輛檢測(cè)研究較為深入,Charkari[1]利用陰影區(qū)域的特征檢測(cè)得出車輛底部類似矩陣陰影區(qū)域比路面亮度數(shù)值低,雖然此方法的檢測(cè)速度較快,但是容易受到路面因素的影響。Aarthi[2]采用貝葉斯分類器,通過結(jié)合角點(diǎn)算法有效解決了樣本干擾問題,在一定程度上提高了車輛識(shí)別檢測(cè)的效率,這一方法雖然識(shí)別效果好,但耗時(shí)較長(zhǎng)。我國(guó)學(xué)者王海[3]等提出兩步法對(duì)車輛進(jìn)行檢測(cè),檢測(cè)率高但實(shí)時(shí)性較低。關(guān)于車輛檢測(cè)預(yù)警的研究主要從時(shí)間與距離進(jìn)行判斷,孫曉艷[4]在考量目標(biāo)車輛橫向距離后提出了車輛碰撞時(shí)間(Time to Collision,TTC)前撞預(yù)警算法,但這一算法容易受到相對(duì)速度的影響。在綜合國(guó)內(nèi)外最新研究的基礎(chǔ)上,提出了基于Open CV的 AEB系統(tǒng)的車輛防撞算法,并利用Haar-like+Adaboost分類器與粒子濾波原理實(shí)現(xiàn)車輛跟蹤,然后基于車輛測(cè)距幾何模型對(duì)車輛防撞預(yù)警進(jìn)行測(cè)試,測(cè)試結(jié)果表明即碰時(shí)間的TTC算法性能最佳,有效提升對(duì)前方車輛檢測(cè)預(yù)警的精確率。
1.1.1 分類器訓(xùn)練過程
車輛的正、負(fù)樣本分別為512張和4 500張。利用 Open CV提供的基于 Haar-like特征的Adaboost訓(xùn)練器,對(duì)樣本進(jìn)行特征分類訓(xùn)練[5]。
基于Open CV的分類器訓(xùn)練主要有2個(gè)步驟:
1)準(zhǔn)備正、負(fù)樣本文件。采用MIT-CBCL項(xiàng)目作為車輛樣本圖像庫(kù)。
2)利用Create Samples建立正樣本,統(tǒng)一將createsamples.cpp制作文件轉(zhuǎn)化為vec文件,然后設(shè)定統(tǒng)一的分辨率。訓(xùn)練時(shí)間與樣本的數(shù)量有關(guān),當(dāng)樣本圖片滿足上限需求時(shí),樣本訓(xùn)練耗時(shí)較短,樣本訓(xùn)練過程如圖1所示[6]。
1.1.2 車輛檢測(cè)過程
通過訓(xùn)練得到的級(jí)聯(lián)分類器進(jìn)行視頻圖像檢測(cè),并判斷圖像中車的位置、大小。如下為車輛檢測(cè)的2種重要方式[7]。
(1)等比例縮小圖像;
(2)等比例放大分類器檢測(cè)窗口。
車輛預(yù)警防撞對(duì)實(shí)時(shí)性要求較高,因此,為了提高檢測(cè)性能,采用等比例放大分類器檢測(cè)窗口的方法。
若將車輛檢測(cè)視為動(dòng)態(tài)隨機(jī)系統(tǒng),則目標(biāo)車輛位置、大小就是隨機(jī)系統(tǒng)狀態(tài),對(duì)隨機(jī)系統(tǒng)狀態(tài)X的估計(jì)就是跟蹤目的[8]。測(cè)量值Y對(duì)應(yīng)具體的圖像信息,通過巴氏距離對(duì)目標(biāo)顏色進(jìn)行比較,實(shí)現(xiàn)跟蹤。分別計(jì)算各個(gè)粒子與目標(biāo)的巴氏距離系數(shù),從而獲得各個(gè)粒子的權(quán)重[9]。
圖1 Haar特征訓(xùn)練流程圖
計(jì)算機(jī)視覺在三維信息方面的應(yīng)用通常有單目、雙目和多目3種方式。選擇具有顯著性優(yōu)勢(shì)的單目視覺對(duì)車輛、車道進(jìn)行檢測(cè)[10]。
2.1.1視覺的測(cè)距模型
(1)基于小孔成像原理的成像模型。
當(dāng)物體在視網(wǎng)膜中的成像大小、距離比值保持不變時(shí),遵循歐幾里得定律。
式中,S為成像物體大小,為物體到視網(wǎng)膜的距離;s為視網(wǎng)膜物體成像大小?;谛】壮上裨?,通過成像物體實(shí)際大小推算出物體的實(shí)際距離D。
物體實(shí)際距離計(jì)算式為
式中,h為像的高度;f為焦距;H為成像物體的高度;D為待測(cè)量距離。
(2)基于單幀靜態(tài)圖像的測(cè)距模型。
以水平放置的攝像機(jī)為軸心,利用攝像機(jī)三維投影形成的二維圖像,依據(jù)小孔成像原理測(cè)算物體到攝像機(jī)的距離。
式中,f為攝像機(jī)的有效焦距;h為攝像機(jī)的安裝高度;y為路面上的物體在圖像中的坐標(biāo)點(diǎn);y0為圖像平面的原點(diǎn)坐標(biāo)。
(3)基于序列圖像的測(cè)距模型。利用前后圖像透視原理測(cè)距。
將4個(gè)方程聯(lián)立得到式(5)
由于H遠(yuǎn)大于h2,則h2+H≈H,因此式(5)簡(jiǎn)化整理得
式中,d1為實(shí)際測(cè)量距離;z1為物體實(shí)際像距;f為攝像機(jī)的有效焦距;d2為物體成像像距離;z2為物體成像像距;h1為像的實(shí)際高度;h2為像的高度;H為成像物體的高度。
2.1.2 前方車輛距離測(cè)量
針對(duì)車輛大小差異,基于小孔成像模型和序列圖像測(cè)距模型無法獲得車輛的實(shí)際尺寸,因此,采用基于車輛測(cè)距幾何模型對(duì)前方車輛距離進(jìn)行測(cè)量。
圖2 車輛測(cè)距幾何模型
式中,D為前方車輛距離;u為待測(cè)目標(biāo)水平方向像素點(diǎn)坐標(biāo);u0為攝像機(jī)標(biāo)定得到的水平方向主點(diǎn)坐標(biāo);h為攝像機(jī)的安裝高度;δ為攝像機(jī)的俯仰角度。
2.2.1 安全距離的確定
基于OpenCV的AEB系統(tǒng)車輛檢測(cè)和預(yù)警主要通過檢測(cè)車輛前方障礙物,判斷車輛的安全距離并預(yù)警[11]。
從駕駛員發(fā)現(xiàn)障礙物到剎車停止分為 4個(gè)階段:第1階段從駕駛員發(fā)現(xiàn)障礙物到采取行動(dòng)反應(yīng)的時(shí)間;第2階段為駕駛員踩剎車制動(dòng)的時(shí)間;第3階段為車輛制動(dòng)持續(xù)的時(shí)間;第4階段為駕駛員放松制動(dòng)踏板解除制動(dòng)的時(shí)間。根據(jù)本次車輛檢測(cè)預(yù)警的特點(diǎn),只需要考慮前3個(gè)階段。
計(jì)算整個(gè)制動(dòng)過程中車輛的行駛距離,需要對(duì)每一階段的行駛距離進(jìn)行計(jì)算。假設(shè)駕駛員發(fā)現(xiàn)前方障礙物時(shí)的初速度為v0,汽車制動(dòng)產(chǎn)生的最大減速度為amax。
(1)駕駛員反應(yīng)時(shí)間及制動(dòng)器作用時(shí)間的確定。
駕駛員發(fā)現(xiàn)障礙物后迅速做出反應(yīng)能極大提高行車安全性。在實(shí)際行駛過程中,除了駕駛員的身體素質(zhì)、心理素質(zhì)對(duì)行車安全性具有顯著的影響外,還有汽車行駛速度的影響,當(dāng)汽車行駛速度過大時(shí),增加了駕駛員獲取路面信息的難度與心理負(fù)擔(dān)。根據(jù)相關(guān)研究,汽車行駛速度為40 km/h時(shí),駕駛員的反應(yīng)時(shí)間為0.6 s,行駛速度為80 km/h時(shí),反應(yīng)時(shí)間為1.0 s。在此將駕駛員的反應(yīng)時(shí)間t1取為 0.9s,消除間隙為0.3 s,制動(dòng)力增長(zhǎng)階段時(shí)間為0.5 s。
(2)汽車最大制動(dòng)減速度的確定。
汽車制動(dòng)減速度與車輛制動(dòng)器的制動(dòng)力、輪胎材料、路面條件等有關(guān),為了簡(jiǎn)化檢測(cè)難度,重點(diǎn)考慮汽車制動(dòng)減速度對(duì)安全距離的影響。道路路面以及道路材料與汽車制動(dòng)減速度密切相關(guān),干燥水泥路面、潮濕水泥路面和積雪路面與制動(dòng)減速度的關(guān)系見表1。
表1 路面條件與附著系數(shù)及制動(dòng)減速度關(guān)系
為了提高可靠性和行車安全性,在計(jì)算安全距離時(shí),取制動(dòng)減速度值為7 m/s2。
(3)停車安全距離的確定。
為了提高車輛安全性,將5 m作為停車安全距離。當(dāng)汽車安全停止后與障礙物保持的一定距離就是停車安全距離。通常停車安全距離設(shè)定為2~5 m,為提高車輛檢測(cè)報(bào)警的時(shí)效性,選擇5 m作為停車安全距離?;贠penCV的AEB系統(tǒng)能識(shí)別障礙物,并通過判斷車輛前方的距離實(shí)現(xiàn)報(bào)警。
2.2.2 碰撞時(shí)間預(yù)測(cè)
計(jì)算得出車輛前方與車輛行駛的安全距離,汽車是否會(huì)有發(fā)生碰撞的危險(xiǎn)取決于車輛距離與速度。
車輛避撞模型主要有Mazda模型、Honda模型、Berkeley模型、Seungwuk Moon 模型和TTC模型。
Mazda模型危險(xiǎn)距離制動(dòng)公式為
式中,v為己車速;vrel為相對(duì)車速;a1、a2分別為己車與前車最大減速度;t1、t2分別為駕駛員反應(yīng)時(shí)間與制動(dòng)器延遲時(shí)間;d0為最小停車距離;dbr為危險(xiǎn)制動(dòng)距離。
Honda模型危險(xiǎn)距離制動(dòng)公式為
式中,v為己車速;v2為前車車速;a1、a2分別為己車與前車的最大減速度;t1、t2分別為系統(tǒng)延遲時(shí)間和制動(dòng)時(shí)間。
Berkeley 模型碰撞預(yù)警公式為式中,t1、t2分別為駕駛員反應(yīng)時(shí)間和制動(dòng)系統(tǒng)延遲時(shí)間。
Seungwuk Moon模型碰撞預(yù)警公式為
式中,Tdelay、f(μ)、amax分別為系統(tǒng)延遲時(shí)間、制動(dòng)因數(shù)和最大制動(dòng)減速度。
TTC模型碰撞預(yù)警公式為
式中,dbr為制動(dòng)距離;D為兩車相對(duì)距離;d0為安全停車距離。
針對(duì)碰撞時(shí)間預(yù)測(cè),采用即碰時(shí)間TTC模型來估計(jì)駕駛員與前方車輛碰撞時(shí)間,幫助駕駛員及時(shí)做出反應(yīng),避免追尾事故發(fā)生。
為了測(cè)試基于 OpenCV的車輛檢測(cè)和預(yù)警算法的性能, AEB系統(tǒng)仿真測(cè)試場(chǎng)景主要由顯示器、主機(jī)、羅技轉(zhuǎn)向盤、前風(fēng)擋玻璃和座椅構(gòu)成駕駛輔助系統(tǒng)(Advance Driving Assistance System,ADAS)仿真平臺(tái),如圖3所示。
圖3 ADAS 仿真平臺(tái)
在一條825 m直線道路上建立車輛緊急制動(dòng)(Autonomous Emergency Braking,AEB)仿真場(chǎng)景,使用PreScan獨(dú)立傳感器。傳感器1設(shè)定的最大探測(cè)距離為150 m,俯仰角為9°,水平角為10°;傳感器2設(shè)定的最大探測(cè)距離為30 m,俯仰角與傳感器1相同,水平角為80°。
測(cè)試工況選擇歐洲新車評(píng)價(jià)規(guī)程中前車靜止、前車急剎2種不同的工況。
CCRs(Car to Car Rear stationary,前車靜止工況):以10 km/h的梯度逐漸遞增為80 km/h。前車為Euro-NCAP車輛目標(biāo)模型,并保持靜止。
CCRb(Car to Car Rear braking,前車減速工況):以50 km/h車速,Euro-NCAP車輛目標(biāo)模型相距本車為12 m和40m,并以6 m/s2和2 m/s2的減速度急減速。
2種工況仿真測(cè)試場(chǎng)景如圖4所示。
圖4 AEB仿真測(cè)試場(chǎng)景
利用PreScan、Simulink 軟件得出測(cè)試結(jié)果,汽車行駛車速為10~80 km/h時(shí),Honda、Mazda、Seungwuk Moon模型都能實(shí)現(xiàn)車輛避撞。在車速為70 km/h時(shí),TTC模型與Berkeley模型不能避免碰撞,因此,需要調(diào)整模型的時(shí)間閥值。
將TTC模型中預(yù)警時(shí)間、部分制動(dòng)時(shí)間、全力制動(dòng)時(shí)間閥值設(shè)為2.9 s、1.9 s、0.9 s后能成功避免碰撞。調(diào)整后各模型仿真算法如圖5所示。
圖5 各算法仿真結(jié)果
由圖 5可知,在不同工況下,自動(dòng)制動(dòng)結(jié)束時(shí),TTC避撞算法的相對(duì)車距最為集中,并且所需輸入?yún)?shù)少,只需要相對(duì)車速vrel與相對(duì)車距D,而且避撞公式簡(jiǎn)單,方便調(diào)整即碰時(shí)間閥值,可以適應(yīng)不同車型的避撞算法開發(fā)。
基于OpenCV的AEB系統(tǒng)車輛檢測(cè)和預(yù)警算法,利用Haar-like+Adaboost實(shí)現(xiàn)前方車輛的識(shí)別與檢測(cè),根據(jù)粒子濾波原理建立車輛跟蹤模型。然后基于單目視覺模型對(duì)前方車輛距離進(jìn)行測(cè)量,根據(jù)障礙物與車輛的安全距離預(yù)測(cè)碰撞時(shí)間,有效提升前方車輛檢測(cè)預(yù)警的精確率。基于AEB系統(tǒng)的測(cè)試仿真結(jié)果表明,在不干擾駕駛員正常駕駛的前提下,即碰時(shí)間的TTC算法的縱向避撞性能最優(yōu)。
[1]Charkari N M,Mori H. New Approach for Real Time Moving Vehicle Detection [C]//Proceedings of 1993 International Conference on Intelligent Robots and Systems, 1993:273-278.
[2]Aarthi R,Padmavathi S,Amudha J. Vehicle Detection in Static Images Using Color and Corner Map[C]//Proceedings of International Conference on Recent Trends in Information,Telecommunication and Computing. IEEE Computer Society,2010:244-246.
[3]Wang Hai,Zhang Weigong,Cai Yingfeng. Design of a Road Detection System Based on Monocular Vision[J]. 東南大學(xué)學(xué)報(bào)(英文版),2011,27(2):169-173.
[4]孫曉艷. 基于單目視覺的夜晚汽車前撞預(yù)警系統(tǒng)研究:[D].西安:西安工業(yè)大學(xué),2013.
[5]謝文華. 基于OpenCV的視頻監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D]. 廈門:廈門大學(xué),2016.
[6]薛璐晨. 基于 OpenCV的行人異常檢測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].長(zhǎng)春:吉林大學(xué),2016.
[7]劉從軍,楊輝,史杰,等. 基于OpenCV的運(yùn)動(dòng)目標(biāo)監(jiān)控系統(tǒng)設(shè)計(jì)[J]. 信息技術(shù),2014(5):82-85.
[8]王傳欽,曹江濤,姬曉飛. 基于視頻分析技術(shù)的車距測(cè)量及預(yù)警系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)技術(shù)與發(fā)展,2016,26(9):87-90.
[9]Oliver J. /var/log/sysblog[J].
[10]張楚金. 智能車的前方車輛檢測(cè)和預(yù)警算法研究[D]. 長(zhǎng)沙:湖南大學(xué),2015.
[11]趙炯. 基于 VC++的車前障礙物識(shí)別預(yù)警系統(tǒng)設(shè)計(jì)[D]. 西安:長(zhǎng)安大學(xué),2015.