陳效華,孫 銳,陳 軍
(奇瑞汽車股份有限公司前瞻技術(shù)科學(xué)院,蕪湖 241009)
隨著車輛技術(shù)的發(fā)展,汽車安全也越來越得到用戶和汽車廠商的重視,工業(yè)界和學(xué)術(shù)界都致力于開發(fā)各種安全系統(tǒng)來改善交通安全[1-2]。
在交通事故中,由于駕駛員疲勞或注意力不集中導(dǎo)致車輛偏離車道而引起的交通事故比例很高,車道偏離報(bào)警系統(tǒng)是解決汽車駕駛安全的重要手段,其研究的關(guān)鍵是如何快速和準(zhǔn)確檢測(cè)出車道線及其偏離報(bào)警策略[3-4]。典型的車道線識(shí)別方法可分為基于Hough變換的方法[5]、基于特征的方法[6]和基于模型的方法[7],其中最常用的方法是基于Hough變換的車道線識(shí)別算法。傳統(tǒng)的車道線檢測(cè)算法復(fù)雜,速度慢,無法滿足實(shí)時(shí)性要求。隨著近年來電子技術(shù)的發(fā)展,尤其是像FPGA和DSP等可編程器件的快速發(fā)展,使得在小型器件上也能實(shí)現(xiàn)車道偏離預(yù)警[8]。本文中基于FPGA和計(jì)算機(jī)視覺核心算法開發(fā)出一種車道偏離報(bào)警系統(tǒng),能快速和準(zhǔn)確地檢測(cè)出車道線,實(shí)現(xiàn)車道偏離報(bào)警。
車道偏離報(bào)警系統(tǒng)由單片視覺處理系統(tǒng)和人機(jī)交互模塊兩部分組成。單片視覺處理系統(tǒng)主要完成對(duì)道路場(chǎng)景的理解,實(shí)時(shí)計(jì)算出道路與車輛之間的關(guān)系。而人機(jī)交互模塊的主要功能是把系統(tǒng)的報(bào)警結(jié)果通過聲音和光等信息傳遞給駕駛員。
系統(tǒng)核心是單片視覺處理系統(tǒng),主要在一塊FPGA芯片上實(shí)現(xiàn)。單片視覺處理系統(tǒng)的框架如圖1所示。在該系統(tǒng)中,道路圖像采集采用的傳感器是基于內(nèi)容成像的高動(dòng)態(tài)范圍CMOS攝像機(jī)。該攝像機(jī)作為前視攝像機(jī)安裝在車輛的駕駛室內(nèi),負(fù)責(zé)拍攝前方道路環(huán)境。
核心模塊為基于單FPGA的嵌入式視覺處理平臺(tái),該平臺(tái)負(fù)責(zé)本系統(tǒng)所有的計(jì)算,包括圖像預(yù)處理、邊緣提取、車道線的檢測(cè)與跟蹤和車道偏離報(bào)警等工作;主要完成兩個(gè)功能:一是通過對(duì)車載攝像機(jī)獲取的序列圖像進(jìn)行處理,獲得道路環(huán)境信息;二是進(jìn)行車道偏離分析,必要時(shí)給出報(bào)警指令。系統(tǒng)通過CAN總線協(xié)議與車體計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信。
人機(jī)交互界面主要用于車道偏離報(bào)警系統(tǒng)與駕駛員進(jìn)行交互。目前,系統(tǒng)可為駕駛員提供兩種形式的信息:一是聲音提醒,二是圖形界面燈光提醒。圖形界面提醒可為駕駛員提供以下幾種信息:當(dāng)前的車體速度,車道偏離報(bào)警系統(tǒng)的上電和工作狀態(tài),是否即將產(chǎn)生車道偏離等。
圖像的成像質(zhì)量直接關(guān)系到后續(xù)的視覺處理的好壞。采集一幅好的(適合后續(xù)處理)圖像主要取決于攝像機(jī)芯片的選擇和攝像機(jī)視覺算法。
該系統(tǒng)所選的攝像機(jī)除較好的動(dòng)態(tài)范圍外,還具有很強(qiáng)的可控性:可以控制曝光時(shí)間,動(dòng)態(tài)設(shè)置多段非線性曝光的參數(shù)和增益。這些可控參數(shù)可從底層對(duì)芯片進(jìn)行控制,以提高采集圖像的動(dòng)態(tài)范圍。
針對(duì)可調(diào)參數(shù),該系統(tǒng)采用了基于圖像內(nèi)容的攝像機(jī)自適應(yīng)曝光方法。這種方法可在不同的光照條件下或各種不同的環(huán)境下獲得較好的圖像質(zhì)量。從某種意義上講,這種方法擴(kuò)展了相機(jī)的動(dòng)態(tài)范圍。而且,由于該方法是基于內(nèi)容的,因而可對(duì)感興趣區(qū)域進(jìn)行統(tǒng)計(jì),然后對(duì)圖像如何曝光給出建議。圖2為一幅參考區(qū)域選取的示意圖。圖中白線勾勒的區(qū)域是在車道標(biāo)志線識(shí)別成功后,參與算法的圖像參考區(qū)域,而黑線勾勒的區(qū)域是起始感興趣窗口。
在識(shí)別和跟蹤車道標(biāo)志線之后,圖像參考區(qū)域就相應(yīng)劃定,算法在這個(gè)區(qū)域?qū)嚨罉?biāo)志線的灰度范圍進(jìn)行估計(jì)。在理想情況下,如果沒有陰影、反光和水漬,參考區(qū)域內(nèi)車道標(biāo)志線的亮度是一致的。但實(shí)際上車道標(biāo)志線的亮度范圍跨度很大,因此可將區(qū)域內(nèi)所有像素都用于計(jì)算。由此,標(biāo)志線灰度范圍的估計(jì)就轉(zhuǎn)化為參考區(qū)域圖像灰度范圍的估計(jì)。
注:上圖解決了《易經(jīng)》64卦序分布無數(shù)理邏輯規(guī)律的缺陷,在數(shù)理邏輯上,整個(gè)系統(tǒng)對(duì)稱平衡,每一卦序的位置、大小具有穩(wěn)定性和唯一性。
總體來說,系統(tǒng)中的自適應(yīng)曝光控制算法就是先進(jìn)行圖像分析,從而獲得可使攝像機(jī)得到高質(zhì)量圖像的曝光參數(shù),然后再指導(dǎo)攝像機(jī)進(jìn)行成像。攝像機(jī)的自適應(yīng)曝光控制流程如圖3所示。
邊緣檢測(cè)是車道線檢測(cè)的重要步驟之一,其好壞直接影響后續(xù)算法的效果。通過對(duì)當(dāng)前比較流行的邊緣檢測(cè)算法進(jìn)行比較,認(rèn)為傳統(tǒng)的canny算法和適合FPGA運(yùn)算的窗口卷積Sobel算法都是效果較好的邊緣二值化算法。
在FPGA中,流水線結(jié)構(gòu)的時(shí)間并行和空間并行是兩種最典型的并行方法,非常適合實(shí)現(xiàn)基于卷積結(jié)構(gòu)的算法,如圖4所示。
圖4中數(shù)字?jǐn)z像機(jī)的數(shù)據(jù)隨著系統(tǒng)時(shí)鐘依次流水進(jìn)入FPGA中,通過行移位寄存器和觸發(fā)器,即可同時(shí)得到圖像中相鄰3×3窗口中的數(shù)據(jù),并對(duì)其進(jìn)行處理。因此,在FPGA中實(shí)現(xiàn)卷積結(jié)構(gòu)的算法時(shí)可在不保存整幅圖像的同時(shí),邊取數(shù)據(jù)邊進(jìn)行相應(yīng)的處理,因此,對(duì)實(shí)現(xiàn)如Sobel算法等基于卷積結(jié)構(gòu)的濾波算法具有很高的效率。
考慮到車道線具有上升沿邊緣和下降沿邊緣,如果能夠同時(shí)使用雙邊緣的信息來檢測(cè)車道線的邊緣,就能排除很多非車道線信息的干擾。因此,如果能使用兩個(gè)邊緣檢測(cè)模板,分別檢測(cè)車道線的上升沿和下降沿,然后對(duì)它們進(jìn)行匹配,就能大大提高車道線檢測(cè)正確率,但在串行計(jì)算結(jié)構(gòu)的通用處理器中,邊緣檢測(cè)模板數(shù)量的增加引起了運(yùn)算時(shí)間的線性增加,對(duì)系統(tǒng)的實(shí)時(shí)處理提出了更高的要求。
基于以上分析,系統(tǒng)采用并實(shí)現(xiàn)了一種基于FPGA的雙邊沿匹配車道線邊緣檢測(cè)算法,利用多個(gè)不同的窗口卷積模板同時(shí)檢測(cè)車道線的上升沿邊緣和下降沿邊緣,然后通過對(duì)兩條邊緣進(jìn)行并行匹配,得到車道線邊緣。由于其算法的核心都是基于窗口卷積技術(shù),因此,邊緣檢測(cè)算法可實(shí)時(shí)實(shí)現(xiàn)。圖5示出邊緣檢測(cè)的實(shí)際效果。
車道線提取是車道偏離提醒系統(tǒng)的核心,如何穩(wěn)定地提取車道線是系統(tǒng)能夠穩(wěn)定工作的關(guān)鍵。系統(tǒng)結(jié)合FPGA并行處理的優(yōu)勢(shì)和特點(diǎn),對(duì)傳統(tǒng)的Hough變換進(jìn)行改進(jìn),得到了一種基于FPGA的實(shí)時(shí)Hough變換,其變換流程如圖6所示,算法的并行性主要體現(xiàn)在空間上的并行處理和時(shí)間上的流水線處理兩個(gè)方面。在空間上,結(jié)合FPGA多核同時(shí)運(yùn)算的特點(diǎn),把Hough變換的角度均勻分成n等份,對(duì)每一等份的角度單獨(dú)設(shè)計(jì)一組Hough變換引擎,從而提高其工作效率。在流水線上,每一組引擎在時(shí)間上流水線作業(yè),使Hough變換的每一次計(jì)算皆可在一個(gè)時(shí)鐘周期內(nèi)完成。
同時(shí),為減小Hough變換的存儲(chǔ)空間,提出一種改進(jìn)的低存儲(chǔ)并行 Hough變換,通過把傳統(tǒng)的Hough變換的原點(diǎn)平移到車道線的焦點(diǎn)處,使Hough變換的存儲(chǔ)空間減小至傳統(tǒng)的1/10左右。
車道偏離報(bào)警系統(tǒng)主要功能是在高速公路或者類似的公路環(huán)境中,輔助過度疲憊或長(zhǎng)時(shí)間單調(diào)駕駛的駕駛員保持車輛在車道內(nèi)行駛,當(dāng)由于駕駛員疏忽可能造成車道偏離時(shí),警告駕駛員。仿真結(jié)果表明,當(dāng)駕駛員的精神狀態(tài)良好時(shí),車輛跟蹤車道中心線性能很好,如圖7虛線所示,當(dāng)駕駛員的精神狀態(tài)不佳,此時(shí)駕駛員的反應(yīng)滯后時(shí)間增加,汽車行駛軌跡明顯偏離中心虛線,如圖7中心實(shí)線所示。
根據(jù)以上分析,系統(tǒng)首先對(duì)道路標(biāo)志線進(jìn)行檢測(cè),并結(jié)合車輛的車速和轉(zhuǎn)角等信息判斷車輛與道路的相對(duì)位置和預(yù)測(cè)車輛的行駛軌跡。但這只是實(shí)現(xiàn)報(bào)警功能的基礎(chǔ),要實(shí)現(xiàn)車道偏離報(bào)警功能,還須解決兩個(gè)關(guān)鍵問題:一是如何結(jié)合車輛本身的運(yùn)動(dòng)參數(shù)和狀態(tài)信息來判斷駕駛員的操作意圖,有些偏離車道的行為是駕駛員的正常操作無需報(bào)警;二是如何建立合理的預(yù)警模型,使之及時(shí)準(zhǔn)確地在真實(shí)的危險(xiǎn)到來之前發(fā)出報(bào)警信息。
目前實(shí)現(xiàn)車道偏離報(bào)警多使用TLC方法(time to lane crossing)。TLC方法的思想是預(yù)測(cè)車輛從行駛軌跡到將要觸碰車道線的時(shí)間,根據(jù)這一時(shí)間判斷車輛是否會(huì)偏離車道。TLC方法涉及到車輛運(yùn)行軌跡的預(yù)測(cè)和道路曲率的估計(jì)。TLC方法雖能較及時(shí)地預(yù)警車道偏離,但參數(shù)多且獲取復(fù)雜。本系統(tǒng)采用了基于車道線夾角法的車道偏離報(bào)警方法,車道線夾角是車輛行駛軌跡與左右兩條車道線之間的夾角。車道線夾角法是利用車輛在行駛過程中自身位置與車道線相對(duì)位置的變化來預(yù)測(cè)車輛軌跡而發(fā)出預(yù)警信息。車道線夾角法所需參數(shù)較少,能提前預(yù)測(cè)危險(xiǎn)情況發(fā)出報(bào)警,給駕駛員更長(zhǎng)的反應(yīng)時(shí)間。
車道線夾角法比TLC方法有著更加可靠的性能,例如在實(shí)際駕駛過程中,有很多駕駛員習(xí)慣緊靠車道線的一側(cè)行駛,若采用TLC方法預(yù)警,由于車輛距車道線過近,輕微擾動(dòng)就會(huì)導(dǎo)致報(bào)警,誤報(bào)率很高,容易引起駕駛員不適。采用車道線夾角法則不會(huì)產(chǎn)生這種情況,在車輛緊靠車道一側(cè)行駛時(shí)車道線夾角的變化不大,不會(huì)報(bào)警。
該系統(tǒng)已分別安裝在不同的車輛上,進(jìn)行長(zhǎng)期的實(shí)驗(yàn)驗(yàn)證,在實(shí)驗(yàn)中該系統(tǒng)表現(xiàn)出良好的性能和穩(wěn)定的運(yùn)行狀態(tài),在不同光照和路況條件下具有很好的魯棒性。圖8示出系統(tǒng)可以克服減速帶的影響,圖9示出系統(tǒng)可以克服高架橋陰影的影響,圖10示出系統(tǒng)可以克服車道線退化的影響。
提出了一種車道偏離報(bào)警系統(tǒng),它采用車載專用攝像機(jī),基于單FPGA芯片開發(fā)了并行實(shí)時(shí)車道線檢測(cè)算法,結(jié)合基于車道線夾角法的報(bào)警策略,幫助駕駛員提高行車安全性。與目前市場(chǎng)上基于DSP或微處理器MCU的車道偏離提醒系統(tǒng)相比,該系統(tǒng)具有兩大優(yōu)勢(shì):基于FPGA芯片的并行處理能力,算法實(shí)時(shí)性更強(qiáng);基于單芯片的系統(tǒng),其可靠性和穩(wěn)定性更好。實(shí)驗(yàn)證明,該系統(tǒng)具有很強(qiáng)的適應(yīng)性,對(duì)于直線和曲線道路環(huán)境及其間的過渡狀態(tài)都有較好的跟蹤效果,算法能夠適應(yīng)不同交通場(chǎng)景,具有較高的實(shí)時(shí)性和魯棒性。
[1] Kim Z W.Robust Lane Detection and Tracking in Challenging Scenarios[J].IEEE Transactions on Intelligent Transportation System,2008,9:16 -26.
[2] McCall Joel C,Trivedi Mohan M.Video-Based Lane Estimation and Tracking for Driver Assistance:Survey,System,and Evaluation[J].IEEE Transactions on Intelligent Transportation Systems,2006,7(1):20 -37.
[3] 劉富強(qiáng),田敏,胡振程.智能汽車中基于視覺的道路檢測(cè)與跟蹤算法[J].同濟(jì)大學(xué)學(xué)報(bào)(自然科學(xué)版),2007,11:1535 -1541.
[4] 王榮本,余天洪,郭烈.基于機(jī)器視覺的車道偏離警告系統(tǒng)研究綜述[J].汽車工程,2005,27(4):346 -367.
[5] Kuk J,An J,Ki H,et al.Fast Lane Detection & Tracking Based on Hough Transform with Reduced Memory Requirement[C].The 13th International IEEE Conference on in Intelligent Transportation Systems(ITSC),2010:1344 -1349.
[6] Truongq B,Lee B R.New Lane Detection Algorithm for Autonomous Vehicle Using Computer Vision[C].2008 International Conference on Control,Automation and Systems,2008:1208 -1213.
[7] 高德芝,段建民,楊磊,等.應(yīng)用多階動(dòng)態(tài)規(guī)劃的車道線識(shí)別方法[J].機(jī)械工程學(xué)報(bào),2011,4:141 -145.
[8] Marzotto R,Zoratti P,Bagni D,et al.A Real-time Versatile Roadway Path Extraction and Tracking on an FPGA Platform[J].Computer Vision and Image Understanding,2010,114(11):1164 -1179.