影像偵測算法瓶頸突破 汽車ADAS效能再進化
近年來,世界各國的交通主管單位皆大力倡導(dǎo)「防御駕駛」,所謂防御駕駛是一種預(yù)測危機并協(xié)助遠離危機的機制,意指除了駕駛本身遵守交通規(guī)則外,也要防范其他駕駛因為自身的疏忽或是故意違規(guī),而發(fā)生交通意外。因此,防御駕駛的目的是透過目視與耳聽的察覺,來認知并預(yù)測可能發(fā)生意外之情境,并且盡快采取必要的防御措施,以避免意外發(fā)生。
本文引用地址:http://www.ex-cimer.com/article/201808/388013.htm根據(jù)交通部的長期統(tǒng)計與特性分析報告指出,全國主要交通事故原因中,以「未保持行車安全距離」為最多。以2014年上半年國道高速公路為例,A1類(造成人員當(dāng)場或24小時內(nèi)死亡)的交通事故總計三十件,而未保持安全距離(車前狀態(tài))占最大宗,總共有十件,并造成十一人死亡、十三人重傷。其次為變換車道不當(dāng),總計為六件,并造成八人死亡、八人重傷。然事實上,交通部在2012年國道事故檢討報告指出,在這些造成不幸的交通事故當(dāng)中,有高達79.1%的意外是有機會事先預(yù)防的。
有鑒于此,各大車廠與駕駛?cè)思娂娫谲囕v上安裝各種駕駛輔助系統(tǒng),以降低肇事率(圖1)。在各種系統(tǒng)中,以影像為基礎(chǔ)的輔助駕駛系統(tǒng)市占率最高;其主要原因為成本低廉,且可與行車記錄器結(jié)合使用,并能將偵測的結(jié)果以視覺影音的方式呈現(xiàn)給駕駛?cè)?,雖然其偵測距離不及紅外線與雷達,但仍廣受歡迎。
圖1 各種不同形式之ADAS傳感器
開發(fā)成本低廉 影像式ADAS受青睞
為有效降低因駕駛者不專心所導(dǎo)致的事故發(fā)生,車道偏移警示系統(tǒng)(Lane Departure Warning System, LDWS)與前方碰撞警示系統(tǒng)(Forward Collision Warning System, FCWS)為世界各國重視,是業(yè)界爭相投入開發(fā)的兩大首要先進駕駛輔助系統(tǒng)(Advanced Driver Assistance System, ADAS)功能。
.LDWS
LDWS主要功能運作是透過攝影機拍攝車輛前方的場景,然后經(jīng)圖像處理與計算,產(chǎn)生車道偵測的結(jié)果;一旦車輛在沒有打方向燈的情形下開始偏移車道時,系統(tǒng)則會自動發(fā)出各種警示訊號,提醒駕駛者立即做出反應(yīng)以避免意外發(fā)生。
.FCWS
FCWS的主要功能亦是透過攝影機拍攝車輛前方的場景,經(jīng)過圖像處理算法的計算后,將前方的車輛偵測出來,并且推估兩車之間的距離;當(dāng)兩車未保持適當(dāng)?shù)男熊嚲嚯x時,系統(tǒng)亦自動對駕駛?cè)税l(fā)出警告,甚至近年來已有車廠開始評估是否由行車計算機系統(tǒng)接管煞車功能。
上述兩種ADAS的主要功能,其共同點就是拍攝車輛前方的場景信息。一般而言,F(xiàn)CWS與LDWS都會使用同一個攝影機所取得的影像信息,且該攝影機亦可將影像信息儲存起來,做為行車記錄器之用。因此,F(xiàn)CWS與LDWS除了現(xiàn)有汽車制造商進行開發(fā)研究之外,制作行車記錄器的廠商亦積極投入研發(fā)。
PC-based為早期慣用平臺
數(shù)字圖像處理平臺主要可分為兩大類,分別為軟件導(dǎo)向的PC-based與硬件導(dǎo)向的獨立型(Stand Alone)平臺;這兩類各有其優(yōu)缺點。早期,由于獨立型的系統(tǒng)運算資源非常局限,中央處理器(CPU)指令周期較慢、內(nèi)存空間不足、可支持的接口設(shè)備亦短缺,加上缺乏有效的影像程序開發(fā)接口,導(dǎo)致圖像處理算法的開發(fā)人員習(xí)慣采用PC-based做為硬件平臺。現(xiàn)在,由于超大規(guī)模集成電路(VLSI)與系統(tǒng)單芯片(SoC)的進步,數(shù)字系統(tǒng)的芯片有大幅進步同時縮小化的進展,使得目前嵌入式系統(tǒng)可以在低價位的情形下,提供高速CPU、海量存儲器、更多的周邊控制,甚至可以有多核心的處理器(Processor)。
獨立型平臺符合輕薄短小設(shè)計需求
如此進步下,嵌入式系統(tǒng)已經(jīng)開始朝多媒體邁進,增加影像與視訊等二維(2D)/三維(3D)訊號的運算,以擴大應(yīng)用范圍;再加上隨著智能化與云端化的趨勢,多媒體應(yīng)用與安全監(jiān)控平臺,已漸由PC-based走向獨立型嵌入式系統(tǒng),以便滿足車載應(yīng)用對省電與輕薄短小的需求。
有鑒于此,工研院便以獨立型嵌入式系統(tǒng)方式來進行ADAS的開發(fā)與驗證。 首先,算法開發(fā)人員為取得影像來開發(fā)算法,在開發(fā)初期必須自行駕駛配有行車記錄器的車輛,于道路上拍攝各種不同場景、天候等行車影片,過程中還必須兼顧「正確率」與「效能」,因為對任何算法而言,良好的正確率只是最基本的條件。
攸關(guān)警告提示速度 ADAS算法驗證至為重要
ADAS對于算法的效能必然斤斤計較,因為當(dāng)危險狀況發(fā)生時,系統(tǒng)必須實時(Real-time)發(fā)出警告。以FCWS為例,當(dāng)某車輛于國道高速公路以時速100公里行駛時,亦即其每秒前進27.7公尺;系統(tǒng)若延遲0.1秒發(fā)出警告,則車輛將繼續(xù)前進2.77公尺;因此設(shè)計人員習(xí)慣以訊框速(Frame Per Second, FPS)來驗證ADAS中的算法之效能,當(dāng)FPS值越大時,代表該算法的效能越佳。
當(dāng)然,算法的效能必定與嵌入式平臺的處理器速度、資源相關(guān),所以在開發(fā)初期就必須考慮算法的計算量是符合何種嵌入式平臺,否則將出現(xiàn)算法無適當(dāng)平臺可用的困境。
結(jié)合快速影像分割結(jié)果 車道線偵測算法效能穩(wěn)健
LDWS為ADAS中較早被開發(fā)的功能,車道偏移警示系統(tǒng)的研發(fā),主要包含「車道線偵測」以及「車道偏移偵測」兩個項目。雖然這個研究已經(jīng)有十幾年的歷史,同時也有許多知名學(xué)者投入此領(lǐng)域的研究,但是其研究成果還有許多須要改進之處;如在車道線偵測方面,因為無法預(yù)測車道線與道路的顏色差距(梯度(Gradient))程度。因此,算法中默認的參數(shù)便無法偵測出所有類型的車道線。此外,為強化車道線的特性,往往須要重迭多張連續(xù)的畫面,以加長車道線的長度。
最后,由于使用的直線偵測算法,無法提供直線是否屬于車道線或是非車道線等信息,因此傳統(tǒng)的車道偏移系統(tǒng),需要一個手動設(shè)定的畫面,標(biāo)示出可能的車道線區(qū)域,藉此過濾掉非車道路線。
在車道偏移偵測方面,須要分析連續(xù)畫面的變化,才能判斷車子是否偏移,如此一來,系統(tǒng)便無法實時通知駕駛有關(guān)車道偏移的信息。有鑒于此,工研院已經(jīng)自行開發(fā)出一種快速且強健的車道偏移警示系統(tǒng);藉由結(jié)合「快速影像分割」的結(jié)果,所開發(fā)的車道線偵測算法,可以偵測出各種類型的車道線,不須要分析連續(xù)畫面的變化,可以僅由一張畫面,便判斷出車輛是否偏移。
該算法的執(zhí)行流程(圖2)主要有五個步驟。
圖2 LDWS算法流程圖
.影像分割(Image Segmentation)
首先,對原始影像進行「區(qū)域化」的步驟,將影像分成若干區(qū)域。
.車道線區(qū)域偵測(Road Line Region Detection)
然后結(jié)合「影像分割后的結(jié)果」以及「梯度分析」,以完成車道線區(qū)域偵測。
.車道線候選區(qū)域(Road Candidate Determination)
使用區(qū)域標(biāo)記(Connected Component Labeling)的方式,標(biāo)記每個連通區(qū)域(Connected Component),進而分析各區(qū)域的特性,去除「非車道線區(qū)域」,以完成工作。
.車道線判定(Road Line Determination)
接著進行車道線判定步驟。
.車道偏移警示(Lane Departure Warning)
最后,藉由判斷左右車道線的角度,以完成警示的功能。
該算法的執(zhí)行結(jié)果可參考圖4。
圖3 FCWS算法流程圖
以純水平線為依據(jù) 前車偵測算法更精確
保持安全車距是駕車的基本守則,尤其是在高速公路上,當(dāng)前方車輛有任何狀況發(fā)生時,保持安全車距才有足夠的時間進行防御駕駛。所以,工研院開發(fā)FCWS的目標(biāo)為,當(dāng)前方車輛與本身車輛距離30公尺時,則實時發(fā)出警示訊號。
前方碰撞警示系統(tǒng)的研發(fā),主要包含「前方車輛偵測」以及「車距計算」兩大項目。目前的前方車輛偵測研究中,有許多方法是使用「車底陰影」來當(dāng)作特征值。但是,陰影容易受到外在光線的影響,造成偵測正確率不穩(wěn)定的困擾。此外,為克服夜間、陰雨等天候問題,有許多方法是以「后車燈」為偵測的特征值。這種做法雖然可在夜間獲得良好的成果,但是僅適用于夜間。
有鑒于此,工研院自行研發(fā)適用于嵌入式系統(tǒng),快速且穩(wěn)定之前方車輛偵測算法;藉由Sobel濾波器取得前方車輛的水平、垂直邊緣,并且透過梯度方向(Gradient Orientation)將「純水平邊緣」擷取出來。
「純水平邊緣」是很重要的特征,因為從很多測試影片中可以觀察到,前方車輛必定有「純水平邊緣」,例如保險桿、后擋風(fēng)玻璃、行李箱等,然而有時候場景中亦可能出現(xiàn)一些非車輛的純水平邊緣。為避免誤判,可以使用標(biāo)記(Labeling)、角點偵測(Corner Detection)、區(qū)域二元圖(Local Binary Pattern, LBP)紋理分析(Texture Analysis)將前方車輛準(zhǔn)確的偵測出來。如同LDWS算法一樣,該算法的前方車輛偵測系統(tǒng),亦不須要分析連續(xù)畫面的變化,可以僅由一張畫面便判斷出前方車輛。本算法的執(zhí)行流程如圖3所示,而執(zhí)行結(jié)果如圖4所示。
圖4 FCWS與LDWS之執(zhí)行結(jié)果
在車距計算方面,由于僅有單一攝影機,所以無法使用雙攝影機的算法來計算距離;但透過固定攝影機的方式,于靜止?fàn)顟B(tài)預(yù)先量測距離,建立對應(yīng)表格(Table)方式進行計算(圖5)。將攝影機固定架設(shè)完畢后,透過實際量測可知,5公尺線對應(yīng)至該影像的第162列(Row)、10公尺對應(yīng)至第137列、15公尺對應(yīng)至第126列、20公尺為第123列。
圖5 單一攝影機之前方距離量測
藉由實際距離與影像坐標(biāo)的對應(yīng)產(chǎn)生對應(yīng)表,當(dāng)行進間前方車輛被偵測時,再利用查表的方式換算出前車距離。利用影像坐標(biāo)對應(yīng)的方法,其誤差值將會隨著距離增加而增加,不過在控制攝影機鏡頭條件下,在實際距離小于30公尺時,其誤差值仍在公尺級的接受范圍內(nèi)。
最后,將ADAS于嵌入式平臺進行驗證且程序優(yōu)化之后,即可安裝于車輛上做實車測試。在此使用的嵌入式平臺為Cortex-A15的雙核心處理器與其他相關(guān)的周邊配備;測試場景為新竹68號快速道路,并且于上午、中午、傍晚進行數(shù)次的實車測試;天候狀況已包含晴天、陰天、大雨。FCWS與LDWS的正確率至少皆有90%以上,且執(zhí)行速度可達25FPS。
輔助駕駛技術(shù)迭有進展 主動式ADAS前景可期
隨著車用電子與車用影像技術(shù)的進步,各種輔助駕駛的系統(tǒng)成為各大車廠的發(fā)展目標(biāo),且不停的推陳出新,因此車廠投入研發(fā)各式主動式ADAS的力道與能量越來越強。然而,早期的ADAS大多是停留在警示功能,用以提醒駕駛?cè)隧氁M快進行防御駕駛,不過于近年,已經(jīng)有些車廠推出半自動式的輔助系統(tǒng),可協(xié)助駕駛者進行煞車或車道維持等。
發(fā)展這些功能的最終目的就是要朝向全自動駕駛,在行車途中遇到危機時,系統(tǒng)會主動介入接管駕駛,并且快速判斷應(yīng)如何閃避危險,且保持車體不受碰撞,無人的自動駕駛已然成為未來發(fā)展的關(guān)鍵;然而,在這段過渡期間,各廠依舊致力發(fā)展相關(guān)技術(shù),各種單一功能警示輔助系統(tǒng)正于產(chǎn)業(yè)界蓬勃發(fā)展。未來,當(dāng)技術(shù)成熟且成本能被市場接受時,相信各大車廠就將會整合多個單一警示系統(tǒng),逐漸邁向無人駕駛。
目前,Google在自動駕駛車方面已有長足的進展,2014年中公布的無人駕駛車已沒有方向盤與油門,且以40公里/小時的速度,在美國加州地區(qū)進行測試。其實,無人駕駛車輛最大的挑戰(zhàn)仍是在一般道路,誠如Google自動駕駛計劃負責(zé)人Chris Umson所言,以無人駕駛系統(tǒng)在高速公路開上1公里,和在市區(qū)開上1公里,這是完全不一樣的兩件事情;在高速公路上開車的變因僅有數(shù)種,但若在一般道路上恐怕會激增到上百種。所以,Google無人駕駛車除了安裝傳統(tǒng)的攝影機之外,更搭載光達系統(tǒng)(LiDAR)進行光學(xué)定向測距,用以提高安全性與可靠性。由于技術(shù)、法令等因素尚未成熟,無人駕駛汽車無法在幾年內(nèi)就上市,但透過自動駕駛技術(shù)的不斷進步,相關(guān)的配備必定下放至一般車款上,對消費者來說亦是一大福音。
評論