[首發于智駕最前沿微信公眾號]車載攝像頭在自動駕駛中,就像是“看見世界”的眼睛,其主要任務是把外界的光學信息轉換成計算機能理解的像素數據,再通過一系列算法,從這些像素中提煉出“有什么物體、在什么位置、如何運動、可能想做什么”這類高層信息。作為一個感覺硬件車載攝像頭是如何感知距離的?

車載攝像頭的基本架構與信號處理流程
攝像頭的核心是一塊光電傳感器,現在普遍用的是CMOS傳感器。光線從鏡頭進入,經過光圈、濾光片,最后投射到傳感器表面。傳感器把接收到的光轉換成電荷,模數轉換器再把這些電荷轉成數字值,這些數值就組成了一幀圖像。
鏡頭決定了視角和成像會不會畸變,光圈和快門控制著進光量和運動模糊程度,傳感器像素的大小則決定了單位面積捕捉光子的能力。
隨后,ISP(圖像信號處理器)會對原始數據做去噪、白平衡、伽瑪校正、去畸變和壓縮等處理,最終輸出給機器學習或視覺算法直接使用的圖像流。
車載攝像頭和普通相機的不同,主要在于工程上的要求更苛刻。它必須能應對高動態范圍(比如白天強光和進入隧道后的黑暗)、溫度變化、機械振動、雨雪和灰塵。
為了適應這些場景,車載系統通常會配備自動曝光、短時HDR(高動態范圍合成)功能,并在全局快門和滾動快門之間權衡(滾動快門成本低,但在快速運動下會產生變形)。有時還會在鏡頭前加裝電熱絲來防霧,或在夜間用紅外/近紅外補光。
攝像頭模組需要經過精確標定,包括內參(焦距、主點、畸變系數)和外參(相對于車體坐標以及其他傳感器的位置和姿態),這對后續的距離估計和多傳感器融合非常關鍵。
在自動駕駛系統中,攝像頭數據需要與車輛總線、IMU(慣性測量單元)、車輪里程計、激光雷達等同步。時間戳是否精確、幀率高低以及延遲大小,都會直接影響車輛對動態目標(比如行人、摩托車)的反應能力。
分辨率和幀率之間也常常需要權衡,更高分辨率有助于識別遠處的小物體,但處理和傳輸的負擔更重;更高幀率能減少運動模糊、提升響應速度,但可能導致光學信號變暗,并且更消耗算力。

攝像頭在自動駕駛系統中的作用
之所以把攝像頭比作“眼睛”很形象,是因為它擅長提供顏色、紋理、形狀這類信息給計算機識別。
其具體任務包括檢測和定位車輛、行人、騎行者、交通標志、交通燈、車道線等,進行語義分割(在像素級別識別出道路、行人、自行車道等),以及預測目標的行為(比如行人是否要橫穿馬路)。
在識別語義信息時,攝像頭通常比激光雷達更有優勢,顏色能幫助識別信號燈和標志,紋理信息有助于更精細地辨別物體類別。
但攝像頭也有明顯的局限。
它本身不會直接測量距離(不像激光雷達那樣直接給出點云);在強逆光、夜間光線不足、雨雪霧霾等環境下,性能也會大幅下降;對于光學遮擋、反光、玻璃后的物體,識別起來也比較困難。
此外,攝像頭的成像會受到鏡頭畸變、顏色偏差和壓縮偽影的影響,需要軟件算法來進行補償和增強。
因此車載攝像頭是一個“語義能力強,但幾何能力弱”的傳感器,往往會和激光雷達、毫米波雷達或超聲波傳感器配合使用,取長補短。

用攝像頭識別物體距離的幾種方法
既然車載攝像頭沒有辦法探測距離,那有些使用純視覺方案的自動駕駛系統是如何感知距離的?
其實依托攝像頭判斷距離的方法有很多,核心思路可以分為帶基線的立體幾何法、基于運動或結構恢復的單目方法、基于學習的深度估計,以及利用視覺和先驗信息的尺度估計等幾類。
立體視覺是最直觀的幾何方法。
在車上固定安裝兩個同型號的攝像頭,兩個鏡頭之間保持已知的基線距離。
它們同時對同一場景拍攝,得到左右兩張圖像。通過在這兩張圖像里尋找對應點(也就是“匹配”),可以得到一個叫“視差”的值,即同一物體在左右圖像中水平位置的差值。
根據三角測量原理,物體到攝像頭的深度Z,與焦距f、基線B、視差d的關系可以近似表示為:Z = f * B / d。這個公式計算簡單,在短中距離(幾米到幾十米)效果很好。
舉個例子來具體計算一下:假設攝像頭等效焦距是800像素,基線是0.2米,某個物體在左右圖像的視差是40像素。代入公式:Z = f * B / d。先算f * B:800 * 0.2 = 160。然后160除以40:160 / 40 = 4。結果就是Z = 4米。實際工程中,需要注意視差的亞像素精確化、立體對齊以及紋理不足區域可能匹配失敗的問題。
立體方法的優點是物理原理直觀、可解釋性強,而且沒有尺度歧義(因為基線和焦距已知),對近中距離物體精度較高。
其缺點也很突出,需要兩個攝像頭精確標定和穩定安裝;基線太小會導致遠處深度精度差(視差太小容易受噪聲影響);紋理稀疏或重復的圖案會造成匹配錯誤。
車載立體系統通常需要對視差進行后處理、濾波和一致性檢測,來抑制錯誤。
那單目攝像頭方案是否可以探測距離?其實單目攝像頭本身不直接提供深度,需要借助其他線索來恢復三維信息。
基于多幀的結構從運動(SfM)或視覺里程計(VO)
基本思路是利用車輛移動時連續拍攝的多幀圖像,跟蹤特征點,結合相機的運動(可以從車輛里程計或IMU估計)和特征點在圖像中的運動,來恢復三維點云和深度。
這本質也是三角測量,只不過基線來自攝像頭的運動而非固定物理基線。
這個方法的優點是硬件要求低,缺點是對場景自身運動、光照變化敏感,且恢復的深度存在尺度不確定性(除非有外部尺度信息)。
物體尺寸先驗法
利用已知物體的典型尺寸來估算距離。比如,我們知道一般轎車的高度大約1.5米,如果在圖像中檢測到車輛并量出它的像素高度是h,那么可以用相機內參和三角關系估算距離:Z≈ f * H_real / h。其中H_real是物體真實高度,f是焦距(像素單位)。
舉例說明:假設f=800像素,H_real=1.5米,檢測到圖像中車高h=200像素,那么Z ≈ (800 * 1.5) / 200。先算800 * 1.5 = 1200,然后1200 / 200 = 6,得出大約6米。
這種方法非常依賴物體的真實尺寸是否符合先驗假設,遇到不同車型或車輛姿態(如上下坡、傾斜)時誤差會變大。
深度學習法
訓練卷積神經網絡直接從單張圖像預測深度圖,或者從左右圖像預測視差圖。
訓練可以是監督學習(需要大量帶深度真值的數據,通常來自激光雷達或結構光),也可以是自監督學習(利用立體對或連續幀之間的重投影一致性作為訓練信號)。
深度學習方法的優點是能在紋理弱的區域給出估計,并能利用上下文語義信息彌補幾何匹配的失敗,在特定訓練數據分布上效果很好。
缺點是容易受訓練數據分布影響,泛化能力是個挑戰,而且單目深度估計通常存在尺度模糊問題,尤其在自監督訓練中會更為明顯。
時間軸上的信息也常用來輔助判斷。比如通過光流和相機運動,可以估計碰撞時間或相對速度,這對判斷危險很有用。它不直接給出絕對距離,但對決策(例如緊急剎車)至關重要。
還有一些更少用但可能有效的方法,比如從散焦恢復深度,或從焦點變化恢復深度。
這些方法利用鏡頭的焦平面和景深信息,通常需要可控的光學系統或多張不同焦距的圖像,在車載環境下實現比較復雜,應用會相對受限。
現在最常見且最穩妥的方法還是混合方法,也就是把攝像頭和其他傳感器融合起來,攝像頭提供語義和邊界框,激光雷達提供稠密準確的距離,毫米波雷達負責在惡劣天氣下穩定檢測遠距離大物體,IMU/里程計則提供尺度信息和運動補償。
真正可靠的距離感知,往往來自于多傳感器的融合,而不是只依賴某一種方法。

誤差來源與常見應對策略
在工程實踐中,要實現準確穩定的攝像頭深度感知,不只是選對算法那么簡單,還有很多細節都會影響最終效果。
視差噪聲和遠距離不穩定性是立體系統的常見問題。視差越小,深度估計對視差誤差越敏感,誤差會被放大。可以通過增加基線、提高相機分辨率、進行亞像素視差估計、加入時間平滑等方式來改善。
但基線不能無限增大,受限于車上安裝位置,而且外參容易因震動和熱變形而變化。因此,很多系統會在前向中距離使用雙目,遠距離則依靠長焦單目攝像頭或毫米波雷達來補充。
光照和天氣是攝像頭的主要挑戰。
強逆光會讓物體變成剪影,夜間信噪比會下降,雨霧會導致對比度和紋理消失。
對于這個問題常采用的策略包括用HDR成像、低噪聲傳感器、更大尺寸的像素、紅外補光,以及學習型的去霧和圖像增強模塊。
但這些方法會增加延遲和算力消耗,在極端天氣下性能仍難保證。所以系統設計必須包含降級策略,當攝像頭置信度低時,應切換到更保守的控制模式或依賴其他傳感器。
標定與時鐘同步的重要性常被低估,但至關重要。攝像頭的內外參如果有偏差,距離計算就會系統性地出錯。外參變化可能來自熱變形、碰撞后的輕微位移或長期的機械松動。
為了保證精度,在生產和維護階段需要有嚴格的標定流程,在運行時也可以利用在線標定或視覺-慣性聯合標定來動態校正。
在時間同步方面,圖像幀的時間戳必須與車輛控制指令以及其他傳感器數據精確對齊,否則基于運動的估計會出錯。
算法層面的魯棒性設計也很關鍵。無論是傳統立體匹配還是深度學習模型,都需要對錯誤的匹配或異常的輸出進行置信度評估。
置信度低的區域,應該由其他傳感器替代,或者進行平滑處理并降低其在決策中的權重。模型更新和數據閉環也不能忽視,可以把實際車輛在真實場景中遇到的失敗樣本回收進訓練集,持續提升模型應對邊界情況的能力。
還有就是算力與功耗的平衡。高分辨率、高幀率和復雜網絡會消耗大量算力,這在車載環境下直接關系到成本和熱管理。
因此要在感知管線里做分級處理,用快速、輕量的模型做實時預篩選,復雜的模型則在感知服務器或有空閑算力時進行精細化處理。硬件上會采用專用的視覺加速器或神經處理單元來平衡性能與功耗。

最后的話
攝像頭是自動駕駛中比較重要的傳感器之一,能完成目標識別、語義分割、行為預測等大量對決策至關重要的任務。但攝像頭天生不直接攜帶距離信息,需要借助幾何三角、運動基線或基于學習的方法來恢復深度。
立體視覺利用物理基線進行三角測量,簡潔明了但對紋理和基線要求高;單目方法依賴運動或先驗信息,更靈活但可能存在尺度模糊;深度學習能在復雜場景下給出估計,但泛化性和可靠性需要大量工程數據和校驗來保障。
現在最穩健的做法還是多傳感器融合,讓攝像頭負責“看清楚是什么”,讓激光雷達或毫米波雷達負責“告訴我這東西離我多遠”,兩者結合才能既識別得準又定位得穩。
-
攝像頭
+關注
關注
61文章
5091瀏覽量
103109 -
自動駕駛
+關注
關注
793文章
14879瀏覽量
179782
發布評論請先 登錄
純視覺自動駕駛的優勢和劣勢有哪些?
如何設計自動駕駛傳感器失效檢測與容錯策略?
自動駕駛既然有雙目攝像頭了,為什么還要三目攝像頭?
決定自動駕駛攝像頭質量的因素有哪些?
如何確保自動駕駛汽車感知的準確性?
激光振鏡掃描錫焊技術在車載攝像頭模組中的應用
自動駕駛汽車如何正確進行道路識別?
自動駕駛汽車是如何準確定位的?
自動駕駛汽車如何確保感知數據的一致性?
索尼FCB-EV9520L攝像頭:賦能自動駕駛新體驗
一文聊聊自動駕駛攝像頭
自動駕駛汽車如何依靠攝像頭判斷距離?
評論