作者:David Katz, Tomasz Lukasiak, and Rick Gentile
數(shù)十個(gè)處理器控制著當(dāng)今汽車的每一個(gè)性能方面,沒有一個(gè)“車輛體驗(yàn)”功能不受技術(shù)的影響。無論是氣候控制、發(fā)動(dòng)機(jī)控制還是娛樂,在過去十年中,制造商產(chǎn)品的功能都在不斷發(fā)展。這種演變背后的力量之一,即信號處理器性能成本比的快速增長,即將對另一個(gè)關(guān)鍵的汽車組件——安全子系統(tǒng)產(chǎn)生深遠(yuǎn)的影響。
雖然目前大多數(shù)可用的安全功能都利用各種傳感器(主要涉及微波、紅外光、激光、加速度計(jì)或位置檢測),但直到最近才引入了能夠滿足實(shí)時(shí)計(jì)算要求的處理器,使視頻圖像處理能夠?yàn)榘踩夹g(shù)做出重大貢獻(xiàn)。ADI公司的Blackfin媒體處理器系列具有高處理速度、多功能數(shù)據(jù)移動(dòng)功能和視頻專用接口,為這個(gè)不斷增長的市場提供了極具吸引力的解決方案。本文將討論Blackfin處理器在新興的基于視頻的汽車安全領(lǐng)域可以發(fā)揮的作用。
汽車安全系統(tǒng)中的視頻
在許多方面,使用高性能媒體處理器的基于視頻的系統(tǒng)可以大大提高汽車安全性。然而,由于較短的響應(yīng)時(shí)間對于挽救生命至關(guān)重要,因此必須實(shí)時(shí)確定地進(jìn)行圖像處理和視頻過濾。有一種自然的趨勢,即使用處理器可以為給定應(yīng)用程序處理的最高視頻幀速率和分辨率,因?yàn)檫@為決策提供了最佳數(shù)據(jù)。此外,處理器需要將車速和相對車-物體距離與所需條件進(jìn)行比較,同樣是實(shí)時(shí)的。此外,處理器必須與許多車輛子系統(tǒng)(如發(fā)動(dòng)機(jī)、制動(dòng)、轉(zhuǎn)向和安全氣囊控制器)交互,處理來自所有這些系統(tǒng)的傳感器信息,并向駕駛員提供適當(dāng)?shù)囊暵犦敵觥W詈?,處理器?yīng)該能夠連接到導(dǎo)航和電信系統(tǒng),以響應(yīng)和記錄故障、事故和其他問題。
圖1顯示了汽車安全系統(tǒng)的基本視頻操作元件,表明了圖像傳感器可能在整個(gè)車輛中的放置位置,以及如何將車道偏離系統(tǒng)集成到底盤中。有幾件事值得注意。首先,多個(gè)傳感器可以由不同的汽車安全功能共享。例如,后置傳感器可以在車輛倒車時(shí)使用,也可以在車輛前進(jìn)時(shí)跟蹤車道。此外,車道偏離系統(tǒng)可以接受來自多個(gè)攝像機(jī)源中的任何一個(gè)的饋送,為給定情況選擇適當(dāng)?shù)妮斎?。在基本系統(tǒng)中,視頻流將其數(shù)據(jù)饋送到嵌入式處理器。在更高級的系統(tǒng)中,處理器接收其他傳感器信息,例如來自GPS接收器的位置數(shù)據(jù)。

圖1.用于汽車安全應(yīng)用的基本攝像頭放置區(qū)域。
智能安全氣囊
媒體處理器在汽車安全中的新興用途是“智能安全氣囊系統(tǒng)”,該系統(tǒng)根據(jù)誰坐在受安全氣囊影響的座椅上來決定部署。目前,基于重量的系統(tǒng)使用最廣泛,但視頻傳感將在五年內(nèi)普及??梢允褂脽岢上駭z像機(jī)或常規(guī)攝像機(jī),速率高達(dá)每秒 200 幀,并且可能使用多個(gè)攝像機(jī)來提供每個(gè)乘員的立體圖像。目標(biāo)是表征乘員的位置和姿勢,而不僅僅是他們的體型。如果發(fā)生碰撞,系統(tǒng)必須選擇是完全限制部署、以較低的力量部署還是完全部署。在幫助確定身體位置時(shí),圖像處理算法必須能夠區(qū)分人的頭部和其他身體部位。
在這個(gè)系統(tǒng)中,媒體處理器必須以高幀速率采集多個(gè)圖像流,處理圖像以分析在所有類型的照明條件下每個(gè)乘員的大小和位置,并持續(xù)監(jiān)控位于整個(gè)汽車中的所有碰撞傳感器,以便在幾毫秒內(nèi)做出最佳的部署決策。
防撞和自適應(yīng)巡航控制
另一個(gè)備受矚目的安全應(yīng)用是自適應(yīng)巡航控制(ACC),這是防撞系統(tǒng)的一個(gè)子集。ACC是一種便利功能,可控制發(fā)動(dòng)機(jī)和制動(dòng)系統(tǒng),以調(diào)節(jié)汽車的速度及其與前方車輛的距離。采用的傳感器涉及微波、雷達(dá)、紅外和視頻技術(shù)的組合。媒體處理器可能會(huì)從安裝在汽車后視鏡附近的攝像頭實(shí)時(shí)處理每秒 17 到 30 幀(聚焦在道路上)。圖像處理算法可能包括針對不同照明場景的幀到幀圖像比較、對象識(shí)別和對比度均衡。視頻傳感器輸入的目標(biāo)是提供有關(guān)車道邊界和道路曲率的信息,并對障礙物進(jìn)行分類,包括汽車前方的車輛。
ACC系統(tǒng)作為便利功能進(jìn)行推廣,而真正的防撞系統(tǒng)則通過協(xié)調(diào)汽車的制動(dòng)、轉(zhuǎn)向和發(fā)動(dòng)機(jī)控制器來積極避免事故。因此,由于任務(wù)的復(fù)雜性、關(guān)鍵的可靠性考慮以及法律和社會(huì)后果,它們的發(fā)展速度較慢。據(jù)估計(jì),到2010年,這些系統(tǒng)的部署可能順利進(jìn)行。鑒于典型的5年汽車設(shè)計(jì)周期,此類系統(tǒng)設(shè)計(jì)已經(jīng)在進(jìn)行中。
碰撞警告系統(tǒng),如 ACC,是避免碰撞類別的一個(gè)子集。這些提供了可能即將發(fā)生的事故的警告,但它們不會(huì)主動(dòng)避免它。這個(gè)利基市場有兩個(gè)主要的子類別:
盲點(diǎn)監(jiān)視器 - 攝像頭戰(zhàn)略性地安裝在車輛外圍,以提供駕駛員盲點(diǎn)的視覺顯示,并在處理器檢測到盲點(diǎn)區(qū)域中存在另一輛車時(shí)發(fā)出警告。在倒檔時(shí),這些系統(tǒng)還可以用作倒車警告,警告駕駛員汽車后部的障礙物。顯示屏可以與后視鏡集成,提供汽車周圍環(huán)境的完整、無障礙視圖。此外,該系統(tǒng)可能包括車廂內(nèi)“盲點(diǎn)”的視頻,例如,允許駕駛員監(jiān)控后向嬰兒。
車道偏離監(jiān)視器 - 這些系統(tǒng)可以通知駕駛員是否改變車道不安全,或者他們是否偏離車道或偏離道路,從而有助于檢測駕駛員疲勞。前置攝像頭監(jiān)控汽車相對于道路中心線和側(cè)標(biāo)記的位置,最遠(yuǎn)可達(dá)汽車前方 50 至 75 英尺。如果汽車無意中開始離開車道,系統(tǒng)會(huì)發(fā)出警報(bào)。
車道偏離 - 系統(tǒng)示例
除了媒體處理器在基于視頻的汽車安全應(yīng)用中可以發(fā)揮的作用外,分析此類應(yīng)用的典型組件也具有指導(dǎo)意義。為此,讓我們進(jìn)一步探討一個(gè)可以使用Blackfin媒體處理器的車道偏離監(jiān)控系統(tǒng)。
考慮到所執(zhí)行信號處理功能的復(fù)雜性,圖2的整體系統(tǒng)圖相當(dāng)簡單。有趣的是,在基于視頻的車道偏離系統(tǒng)中,大部分處理是基于圖像的,并且在信號處理器內(nèi)而不是通過模擬信號鏈進(jìn)行。這大大節(jié)省了系統(tǒng)物料清單。對駕駛員的輸出包括警告,以在車輛無意中離開車道之前糾正汽車的預(yù)計(jì)路徑。它可能是可聽見的“隆隆聲”聲音、編程的提示音或語音消息。
嵌入式處理器的視頻輸入系統(tǒng)必須在惡劣的環(huán)境中可靠地運(yùn)行,包括寬而劇烈的溫度變化和不斷變化的路況。當(dāng)數(shù)據(jù)流進(jìn)入處理器時(shí),它會(huì)實(shí)時(shí)轉(zhuǎn)換為可以處理以輸出決策的形式。在最簡單的層面上,車道偏離系統(tǒng)根據(jù)道路上的車道標(biāo)記查找車輛的位置。對于處理器來說,這意味著必須將傳入的道路影像流轉(zhuǎn)換為一系列描繪路面的線。
處理器可以通過查找邊緣來查找數(shù)據(jù)字段中的行。這些邊緣形成了駕駛員在前進(jìn)時(shí)應(yīng)保持車輛的邊界。處理器必須跟蹤這些行標(biāo)記,并確定是否將異常情況通知驅(qū)動(dòng)程序。
請記住,其他幾個(gè)汽車系統(tǒng)也會(huì)影響車道偏離系統(tǒng)。例如,使用制動(dòng)系統(tǒng)和轉(zhuǎn)向信號燈通常會(huì)在有意變道和慢速轉(zhuǎn)彎時(shí)阻止車道偏離警告。

圖2.車道偏離算法的基本步驟以及處理器如何連接到外部世界。
現(xiàn)在讓我們更深入地了解車道偏離系統(tǒng)示例的基本組件。圖 3 遵循與圖 2 相同的基本操作流程,但更深入地了解正在執(zhí)行的算法。進(jìn)入系統(tǒng)的視頻流需要經(jīng)過過濾和平滑處理,以減少溫度、運(yùn)動(dòng)和電磁干擾引起的噪聲。如果沒有這一步,就很難找到干凈的車道標(biāo)記。

圖3.算法流程,顯示中間圖像處理步驟的結(jié)果。
下一個(gè)處理步驟涉及邊緣檢測;如果系統(tǒng)設(shè)置正確,找到的邊將代表車道標(biāo)記。然后,這些線必須與車輛的方向和位置相匹配?;舴蜃儞Q將用于此步驟。它的輸出將跨圖像幀進(jìn)行跟蹤,并將根據(jù)所有編譯的信息做出決定。最后一個(gè)挑戰(zhàn)是及時(shí)發(fā)出警告,而不會(huì)發(fā)出誤報(bào)。
圖像采集
Blackfin處理器的一個(gè)重要特性是其并行外設(shè)接口(PPI),旨在處理傳入和傳出的視頻流。PPI 無需外部邏輯即可連接到各種視頻轉(zhuǎn)換器。除了符合ITU-R 656標(biāo)準(zhǔn)的視頻編碼器和解碼器外,PPI還可以連接到CMOS相機(jī)芯片和LCD顯示器,這些芯片和LCD顯示器在汽車行業(yè)中很常見。由于PPI可以實(shí)時(shí)捕獲視頻,因此對于本文中討論的各種汽車安全應(yīng)用至關(guān)重要。
在支持 ITU-R 656 的設(shè)備中,消隱數(shù)據(jù)和活動(dòng)視頻數(shù)據(jù)之間的每個(gè)邊界都使用嵌入數(shù)據(jù)流中的 4 字節(jié)數(shù)據(jù)序列進(jìn)行設(shè)置。PPI 自動(dòng)解碼此序列,無需處理器干預(yù),以收集傳入的活動(dòng)視頻幀。使用這種嵌入式控制方案,物理連接只需八條數(shù)據(jù)線和一個(gè)時(shí)鐘。
PPI還連接到各種沒有嵌入式控制方案的圖像傳感器和數(shù)據(jù)轉(zhuǎn)換器。在這些情況下,PPI 最多提供三個(gè)幀同步來管理傳入或傳出數(shù)據(jù)。對于視頻流,這些幀同步用作物理水平同步、垂直同步和場線(HSYNC、VSYNC 和場)。
對于汽車安全應(yīng)用,圖像分辨率通常從VGA(640×480像素/圖像)到QVGA(320×240像素/圖像)。無論實(shí)際圖像大小如何,傳輸?shù)臄?shù)據(jù)格式都保持不變,但當(dāng)傳輸?shù)臄?shù)據(jù)較少時(shí),可以使用較低的時(shí)鐘速度。此外,在最基本的車道偏離警告系統(tǒng)中,只需要灰度圖像。因此,數(shù)據(jù)帶寬減半(從 16 位/像素減半到 8 位/像素),因?yàn)樯刃畔⒖梢院雎浴?/p>
內(nèi)存和數(shù)據(jù)移動(dòng)
高效使用內(nèi)存是系統(tǒng)設(shè)計(jì)人員的重要考慮因素,因?yàn)橥獠看鎯?chǔ)器價(jià)格昂貴,而且其訪問時(shí)間可能具有高延遲。雖然Blackfin處理器具有片上SDRAM控制器,以支持經(jīng)濟(jì)高效地添加更大的片外存儲(chǔ)器,但明智地僅傳輸應(yīng)用所需的視頻數(shù)據(jù)仍然很重要。通過智能解碼ITU-R 656前導(dǎo)碼,PPI可以幫助這種“數(shù)據(jù)過濾”操作。例如,在某些應(yīng)用程序中,只需要活動(dòng)視頻字段。換句話說,水平和垂直消隱數(shù)據(jù)可以忽略,不傳輸?shù)絻?nèi)存中,導(dǎo)致帶入系統(tǒng)的數(shù)據(jù)量減少多達(dá) 25%。更重要的是,這種較低的數(shù)據(jù)速率有助于節(jié)省內(nèi)部和外部數(shù)據(jù)總線上的帶寬。
由于視頻數(shù)據(jù)速率要求很高,因此必須在外部存儲(chǔ)器中設(shè)置幀緩沖器,如圖4所示。在此方案中,當(dāng)處理器在一個(gè)緩沖區(qū)上運(yùn)行時(shí),PPI 通過 DMA 傳輸填充第二個(gè)緩沖區(qū)??梢栽O(shè)置一個(gè)簡單的信號量來保持幀之間的同步。使用Blackfin靈活的DMA控制器,幾乎可以在內(nèi)存填充過程中的任何點(diǎn)生成中斷,但通常配置為在每個(gè)視頻線或幀的末尾發(fā)生。

圖4.將外部存儲(chǔ)器用于幀緩沖器。
一旦完整的幀進(jìn)入SDRAM,數(shù)據(jù)通常會(huì)傳輸?shù)絻?nèi)部L1數(shù)據(jù)存儲(chǔ)器中,以便內(nèi)核能夠以單周期延遲訪問它。為此,DMA 控制器可以使用二維傳輸來引入像素塊。圖 5 顯示了一個(gè)示例,說明如何通過 16D DMA 引擎將 16 × 1 個(gè)“宏塊”(許多壓縮算法中使用的結(jié)構(gòu))線性存儲(chǔ)在 L2 內(nèi)存中。

圖5.從 SDRAM 到 L2 內(nèi)存的 1D 到 1D DMA 傳輸。
為了有效地瀏覽源圖像,需要控制四個(gè)參數(shù):X 計(jì)數(shù)、Y 計(jì)數(shù)、X 修改和 Y 修改。X 和 Y 計(jì)數(shù)分別描述在“水平”和“垂直”方向上讀入/讀出的元素?cái)?shù)量。水平和垂直是此應(yīng)用程序中的抽象術(shù)語,因?yàn)閳D像數(shù)據(jù)實(shí)際上是線性存儲(chǔ)在外部存儲(chǔ)器中。X 和 Y 修改值通過在傳輸必要的 X 計(jì)數(shù)或 Y 計(jì)數(shù)后指定要“跨步”遍歷數(shù)據(jù)的量來實(shí)現(xiàn)此抽象。
從性能的角度來看,最多可以有四個(gè)獨(dú)特的SDRAM內(nèi)部庫隨時(shí)處于活動(dòng)狀態(tài)。這意味著,在視頻框架中,當(dāng) 2D 到 1D DMA 從一個(gè)庫拉取數(shù)據(jù)而 PPI 饋送另一個(gè)庫時(shí),不會(huì)觀察到額外的銀行激活延遲。
投影校正
用于車道偏離系統(tǒng)的攝像頭可以位于前擋風(fēng)玻璃的中央頂部位置,面向前方,在后擋風(fēng)玻璃中,面向已經(jīng)行駛的道路,或作為“鳥瞰”攝像頭,為即將到來的道路提供最廣闊的視角,因此可以代替多個(gè)視線攝像頭使用。在后一種情況下,由于廣角鏡頭,視圖會(huì)變形,因此在解析圖片內(nèi)容之前,必須將輸出圖像重新映射到線性視圖中。
圖像過濾
在進(jìn)行任何類型的邊緣檢測之前,重要的是要過濾圖像以消除圖像捕獲過程中拾取的任何噪聲。這一點(diǎn)至關(guān)重要,因?yàn)橐脒吘墮z測器的噪聲會(huì)導(dǎo)致檢測器輸出假邊沿。
顯然,圖像過濾器需要足夠快地運(yùn)行以跟上輸入圖像的連續(xù)性。因此,必須優(yōu)化圖像過濾器內(nèi)核,以便在盡可能少的處理器周期內(nèi)執(zhí)行。一種有效的濾波方法是通過基本的二維卷積操作來實(shí)現(xiàn)。讓我們看看如何在Blackfin處理器上有效地執(zhí)行這種計(jì)算。
卷積是圖像處理中的基本操作之一。在二維卷積中,對給定像素執(zhí)行的計(jì)算是該像素鄰域像素的強(qiáng)度值的加權(quán)和。由于蒙版的鄰域以給定像素為中心,因此蒙版區(qū)域通常具有奇數(shù)維度。相對于圖像,蒙版尺寸通常較小;3 × 3 掩碼是一種常見的選擇,因?yàn)樗诿總€(gè)像素的基礎(chǔ)上計(jì)算是合理的,但足夠大以檢測圖像中的邊緣。
圖 3 顯示了 3 × 6 內(nèi)核的基本結(jié)構(gòu)。例如,圖像中第 20 行第 10 列的像素的卷積過程輸出為:
輸出(20,10) = A × (19,9) + B × (19,10) + C × (19,11) + D × (20,9) + E × (20,10) + F × (20,11) + G × (21,9) + H × (21,10) + I × (21,11)

圖6.3×3卷積核的基本結(jié)構(gòu)。
高級算法可以通過以下步驟進(jìn)行描述:
將掩碼的中心放在輸入矩陣的元素上。
將遮罩鄰域中的每個(gè)像素乘以相應(yīng)的濾鏡遮罩元素。
將每個(gè)乘法相加為一個(gè)結(jié)果。
將每個(gè)總和放在輸出矩陣中與掩碼中心相對應(yīng)的位置
圖 7 顯示了一個(gè)輸入矩陣 F、一個(gè) 3 × 3 掩碼矩陣 H 和一個(gè)輸出矩陣 G。

圖7.輸入矩陣,F(xiàn);3×3掩模矩陣,H;和輸出矩陣 G。
計(jì)算每個(gè)輸出點(diǎn)后,掩碼將向右移動(dòng)。在圖像邊緣,算法環(huán)繞到下一行中的第一個(gè)元素。例如,當(dāng)掩碼以元素 F2M 為中心時(shí),掩碼矩陣的 H23 元素乘以輸入矩陣的元素 F31。結(jié)果,輸出矩陣的可用部分沿圖像的每個(gè)邊緣減少一個(gè)元素。
通過正確對齊輸入數(shù)據(jù),Blackfin的兩個(gè)乘法累加(MAC)單元都可以在單個(gè)處理器周期中使用,一次處理兩個(gè)輸出點(diǎn)。在同一周期中,多個(gè)數(shù)據(jù)提取與 MAC 操作并行發(fā)生。該方法允許為每個(gè)循環(huán)迭代高效計(jì)算 2 個(gè)輸出點(diǎn),或每像素 4.5 個(gè)周期,而不是圖 9 中的每像素 7 個(gè)周期。
邊緣檢測
廣泛使用各種各樣的邊緣檢測技術(shù)。在考慮如何檢測邊緣之前,算法必須首先確定邊緣實(shí)際是什么的合適定義,然后找到增強(qiáng)邊緣特征以提高檢測機(jī)會(huì)的方法。由于圖像傳感器不理想,因此必須解決兩個(gè)問題:噪聲和量化誤差的影響。
圖像中的噪點(diǎn)幾乎可以保證原始圖像中具有相同灰度級別的像素在噪點(diǎn)圖像中不會(huì)具有相同的級別。噪音會(huì)基于許多不容易控制的因素引入,例如環(huán)境溫度、車輛運(yùn)動(dòng)和外部天氣條件。圖像中的量化錯(cuò)誤將導(dǎo)致邊緣邊界延伸到多個(gè)像素。這些因素共同作用使邊緣檢測復(fù)雜化。因此,選擇的任何圖像處理算法都必須將抗噪性作為主要目標(biāo)。
一種流行的檢測方法使用一組常見的基于導(dǎo)數(shù)的運(yùn)算符來幫助定位圖像中的邊緣。每個(gè)導(dǎo)數(shù)運(yùn)算符都旨在查找強(qiáng)度發(fā)生變化的位置。在此方案中,可以通過包含理想邊屬性的較小圖像對邊進(jìn)行建模。
我們將討論 Sobel 邊緣檢測器,因?yàn)樗子诶斫猓⒄f明了擴(kuò)展到更復(fù)雜的方案的原理。Sobel 檢測器使用兩個(gè)卷積核來計(jì)算水平和垂直邊緣的梯度。第一種設(shè)計(jì)用于檢測垂直對比度的變化(Sx).第二個(gè)檢測水平對比度的變化(Sy).

輸出矩陣為圖像中的每個(gè)像素保存“邊緣似然”幅度(基于水平和垂直卷積)。然后對該矩陣進(jìn)行閾值設(shè)置,以利用大小較大的響應(yīng)對應(yīng)于圖像中的邊緣這一事實(shí)。因此,在霍夫變換階段的輸入處,圖像僅由“純白色”或“純黑色”像素組成,沒有中間漸變。
如果應(yīng)用程序不需要真實(shí)幅度,則可以節(jié)省成本高昂的平方根運(yùn)算。構(gòu)建閾值矩陣的其他常見方法包括對每個(gè)像素的梯度求和,或者簡單地取兩個(gè)梯度中最大的一個(gè)。
直線檢測—霍夫變換
Hough 變換是一種廣泛使用的方法,用于通過在參數(shù)化空間中定位圖像中的全局模式(如直線、圓形和橢圓)來查找它們。它在車道檢測中特別有用,因?yàn)榛诠?的極坐標(biāo)表示,可以很容易地將線檢測為霍夫變換空間中的點(diǎn):
![]() |
(1) |
這個(gè)方程的含義可以通過將垂直線從給定線延伸到原點(diǎn)來可視化,使得 θ 是垂直線與橫坐標(biāo)形成的角度,θ 是垂直線的長度。因此,一對坐標(biāo)(ρ,θ)可以完全描述這條線。圖 1a 中的 L2 和 L8 行演示了這一概念。圖8b顯示L1由θ1和垂直紅色的長度定義,而L2由θ2和藍(lán)色垂直線的長度。

圖 8a.邊緣檢測器的輸出是像這樣的二進(jìn)制圖像,人類觀察者可以對其進(jìn)行目視檢查以顯示線條?;舴蜃儞Q允許對這兩條線進(jìn)行定位。

圖 8b.上圖中的兩條白線可以用從原點(diǎn)延伸的紅色和藍(lán)色垂直線段的長度和角度來描述。

圖 8c.圖 8a 中圖像的霍夫變換。θ 的范圍是 [0, 2π],ρ 的范圍是圖 8a 中輸入圖像對角線的一半。兩個(gè)明亮區(qū)域?qū)?yīng)于局部最大值,可用于重建圖8a中的兩條線。
查看霍夫變換的另一種方法是考慮一種可以直觀地實(shí)現(xiàn)算法的方法:
僅訪問二進(jìn)制圖像中的白色像素。
對于要考慮的每個(gè)像素和每個(gè) θ 值,在像素上畫一條與原點(diǎn)成 θ 角的線。然后計(jì)算 ρ,即原點(diǎn)和所考慮的線之間的垂直長度。
在累積表中記錄此(ρ,θ)對。
對圖像中的每個(gè)白色像素重復(fù)步驟 1-3。
在累積表中搜索最常遇到的 (ρ, θ) 對。這些對描述了輸入圖像中最可能的“線”,因?yàn)闉榱擞涗浉呃鄯e值,必須有許多白色像素沿著(ρ,θ)對描述的線存在。
Hough 變換是計(jì)算密集型的,因?yàn)闉檩斎雸D像中的每個(gè)像素計(jì)算了正弦曲線。但是,某些技術(shù)可以大大加快計(jì)算速度。
首先,一些計(jì)算項(xiàng)可以提前計(jì)算,以便可以通過查找表快速引用它們。在Blackfin的定點(diǎn)架構(gòu)中,僅存儲(chǔ)余弦函數(shù)的查找表非常有用。由于正弦值與余弦相位相差 90 度,因此可以使用具有偏移量的同一表。使用查找表時(shí),公式(1)的計(jì)算可以表示為兩個(gè)定點(diǎn)乘法和一個(gè)加法。
另一個(gè)可以提高性能的因素是一組關(guān)于輸入圖像中車道標(biāo)記的性質(zhì)和位置的假設(shè)。通過僅考慮那些可能成為車道標(biāo)記的輸入點(diǎn),可以避免大量不必要的計(jì)算,因?yàn)槊總€(gè)白色像素只需要考慮狹窄的θ值范圍。
霍夫變換的輸出是一組可能是車道標(biāo)記的直線。這些線的某些參數(shù)可以通過簡單的幾何方程計(jì)算??捎糜谶M(jìn)一步分析的參數(shù)包括與相機(jī)中心軸的偏移、檢測到的線的寬度以及相對于相機(jī)位置的角度。由于許多高速公路系統(tǒng)中的車道標(biāo)記是標(biāo)準(zhǔn)化的,因此一組規(guī)則可以從車道標(biāo)記候選列表中刪除某些線。然后可以使用一組可能的車道標(biāo)記變量來推導(dǎo)出汽車的位置。
車道跟蹤
車道信息可以從汽車內(nèi)的各種可能來源確定。這些信息可以與車輛相關(guān)參數(shù)(例如速度、加速度等)的測量相結(jié)合,以幫助進(jìn)行車道跟蹤。根據(jù)這些測量結(jié)果,車道偏離系統(tǒng)可以明智地決定是否正在進(jìn)行意外偏離。在高級系統(tǒng)中,可以對其他因素進(jìn)行建模,例如一天中的時(shí)間、路況和駕駛員的警覺性。
估計(jì)車道幾何形狀的問題是一個(gè)挑戰(zhàn),通常需要使用卡爾曼濾波器來估計(jì)道路曲率。具體來說,卡爾曼濾波器可以預(yù)測未來的道路信息,然后可以在下一幀中使用這些信息,以減少霍夫變換帶來的計(jì)算負(fù)載。
如前所述,霍夫變換用于查找每個(gè)圖像中的線條。但這些線條也需要通過一系列圖像進(jìn)行跟蹤。通常,卡爾曼濾波器可以描述為估計(jì)對象未來狀態(tài)的遞歸濾波器。在本例中,對象是一條線。線條的狀態(tài)基于其位置及其跨多個(gè)幀的運(yùn)動(dòng)路徑。
除了道路狀態(tài)本身,卡爾曼濾波器還提供每個(gè)狀態(tài)的方差。預(yù)測狀態(tài)和方差可以結(jié)合使用,以縮小未來幀中 Hough 變換的搜索空間,從而節(jié)省處理周期。
決策 - 當(dāng)前車輛位置或車道交叉時(shí)間
根據(jù)我們的經(jīng)驗(yàn),我們知道誤報(bào)總是不可取的。要讓消費(fèi)者禁用可選的安全功能,沒有比讓它指示不存在的問題更快的方法了。
有了處理框架,系統(tǒng)設(shè)計(jì)人員可以將自己的知識(shí)產(chǎn)權(quán) (IP) 添加到每個(gè)處理線程的決策階段。最簡單的方法可能是在做出決定時(shí)考慮其他車輛屬性。例如,當(dāng)車道變換被認(rèn)為是有意的時(shí)(例如使用閃光燈或踩剎車時(shí)),可以抑制車道變換警告。更復(fù)雜的系統(tǒng)可能會(huì)考慮 GPS 坐標(biāo)數(shù)據(jù)、乘員駕駛剖面、一天中的時(shí)間、天氣和其他參數(shù)。
結(jié)論
在前面的討論中,我們只描述了一個(gè)示例框架,說明如何構(gòu)建基于圖像的車道偏離系統(tǒng)。我們試圖確定的一點(diǎn)是,當(dāng)靈活的媒體處理器可用于設(shè)計(jì)時(shí),有足夠的空間來考慮功能添加和算法優(yōu)化。
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
20286瀏覽量
253255 -
控制器
+關(guān)注
關(guān)注
114文章
17823瀏覽量
194324 -
汽車電子
+關(guān)注
關(guān)注
3045文章
9005瀏覽量
172964
發(fā)布評論請先 登錄
使用視頻技術(shù)提高汽車安全性變得更加可行

評論