詳解車道線檢測算法之傳統(tǒng)圖像處理
/ 導(dǎo)讀 /
車道線檢測算法分為傳統(tǒng)圖像處理方法和深度學(xué)習(xí)方法。本文詳細(xì)介紹用傳統(tǒng)圖像處理方法來解決車道線檢測問題,后文的算法源于Udacity無人駕駛課程的項(xiàng)目,僅做參考。
計(jì)算機(jī)視覺基礎(chǔ)
在正式開始算法之前,我們先簡單補(bǔ)充些計(jì)算機(jī)視覺的基礎(chǔ)知識。已有基礎(chǔ)的童鞋,可以略過直接看算法。
像素
像素Pixel,是picture和element的合成詞,表示圖像元素的意思,可以理解為構(gòu)成圖像的最小單位。像素的大小與圖像的分辨率有關(guān),分辨率越高,像素就越小,圖像就越清晰。
灰度圖像度化,即對彩色圖像進(jìn)行灰度化處理。由于很多算法對顏色的依賴性不高,通常會對彩色圖像進(jìn)行灰度化預(yù)處理,去除彩色信息,不僅能提高魯棒性,還可以提高處理速度。
灰度圖像的每個(gè)像素信息是由一個(gè)量化的灰度級來描述的,沒有彩色信息;而彩色圖像(例如RGB)的每個(gè)像素信息由RGB三原色構(gòu)成的,RGB分別通過三個(gè)不同的灰度級來描述。
二值圖像
二值化就是將彩色圖像變成二值圖像。由于二值圖像的數(shù)據(jù)足夠簡單,只有兩個(gè)值,所以算法都依賴二值圖像。
二值圖像,即黑白圖像。二值圖像的每個(gè)像素只能是黑或白,沒有中間的灰度級過渡,像素值為0、1。最常用的就是采用閾值的方法進(jìn)行二值化。最常用的二值化處理簡單來說,就是選取一個(gè)閾值,大于它的像素就視為白,小于它就視為黑。
色彩空間
不同色彩空間對顏色采用不同的表示方式,我們最常用的是RGB色彩空間,除此之外還有HLS、HSV、YUV、Lab色彩空間等。我們可以針對個(gè)人需求,轉(zhuǎn)換到適合的彩色空間中處理。
例如,RGB色彩空間中的R表示紅色Red,G表示綠色Green,B表示藍(lán)色Blue,這三種顏色以不同的量進(jìn)行疊加,就可以顯示出所有顏色。HSL色彩空間即色相Hue、飽和度Saturation、亮度Lightness;HSV色彩空間則是由色相Hue、飽和度Saturation、明度Value組成。YUV色彩空間是由一個(gè)亮度Y和兩個(gè)色度UV決定的。而在Lab色彩空間中,L表示亮度Lightness,A表示從綠色到紅色的漸變;B表示從藍(lán)色到黃色的漸變。
顏色閾值過濾
閾值過濾需要設(shè)定一個(gè)數(shù)值,像素值高于此值的像素點(diǎn)變?yōu)榘咨?低于此值則變?yōu)楹谏。具體來說,例如在RGB色彩空間中,R紅色是表示在一個(gè)區(qū)間內(nèi)的連續(xù)數(shù)值;我們通過設(shè)置[min, max]值區(qū)間,將大小位于該區(qū)間內(nèi)的數(shù)值保留,不在該區(qū)間的數(shù)值統(tǒng)一設(shè)置為0。通過這種操作,實(shí)現(xiàn)對圖像顏色特征的過濾。
邊緣檢測
這里要介紹的是使用圖像濾波的方式實(shí)現(xiàn)邊緣檢測。濾波,其實(shí)就是通過放大圖像中的某些頻段,同時(shí)濾掉或減弱某些頻段的方法。例如,低通濾波器的作用是消除圖像中的高頻部分,高通濾波器的作用是消除圖像中的低頻部分。
Sobel算法
Sobel算法是通過放大圖像中高頻部分,再對圖像進(jìn)行二值化,可以實(shí)現(xiàn)邊緣檢測。雖然它只對垂直或水平方向的圖像頻率起作用,能夠分別得出x和y方向上的亮度函數(shù)的梯度近似值。x方向(水平方向)的Sobel濾波傾向于檢測垂直方向的邊緣,y方向(垂直方向)的Sobel濾波則傾向于檢測水平方向的邊緣。而在車道線檢測中,車道線是傾向于垂直方向的線,所以采用x方向的Sobel算法較為有效。
Canny算法
Canny算法通常是基于梯度算法,用兩個(gè)不同的閾值(高閾值和低閾值)來判斷那個(gè)點(diǎn)屬于邊緣,雙閾值可以有效降低邊緣的漏檢率。雖然Canny算法能夠精度高,能清晰檢測出所有邊緣,但在車道線檢測中,除了車道線還會檢測出各種陰影。因此相比之下Sobel單方向的檢測也許效果更好。
霍夫變換
霍夫變換是一種一般用于檢測直線(也可檢測圓形)的經(jīng)典算法。可以結(jié)合上文的Canny算法檢測直線車道線。經(jīng)過Canny算法得到邊緣分布圖像后,構(gòu)建一個(gè)霍夫參數(shù)空間,利用點(diǎn)與線的對偶性,將原始圖像空間的直線變換為參數(shù)空間的一個(gè)點(diǎn)。這樣就把原始圖像中直線檢測問題轉(zhuǎn)變?yōu)閷ふ覅?shù)空間中的峰值問題。
簡單解釋下,元空間的點(diǎn)都對應(yīng)霍夫參數(shù)空間的線,原空間的直線都對應(yīng)參數(shù)空間中曲線的交點(diǎn)。即可以通過參數(shù)空間曲線的交點(diǎn)個(gè)數(shù)來尋找原空間中在一條直線上的點(diǎn)。
圖片來自Udacity無人駕駛課程
感興趣區(qū)域
感興趣區(qū)域,即ROI。在圖像處理過程中,我們可能會對圖像的某一個(gè)特定區(qū)域感興趣,只對該區(qū)域?qū)嵤┎僮。對于車道線檢測來說,由于相機(jī)是固定安裝,可以選取一個(gè)區(qū)域以排除其他噪聲干擾。感興趣區(qū)域可以是任意圖形,例如四邊形或其他任意多邊形。
請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個(gè)字
圖片新聞
技術(shù)文庫
最新活動更多
-
免費(fèi)參會立即報(bào)名>> 7月30日- 8月1日 2025全數(shù)會工業(yè)芯片與傳感儀表展
-
精彩回顧立即查看>> 【在線研討會】普源精電--激光原理應(yīng)用與測試解決方案
-
精彩回顧立即查看>> 【工程師系列】汽車電子技術(shù)在線大會
-
精彩回顧立即查看>> 【線上直播】新能源汽車熱管理行業(yè)應(yīng)用新進(jìn)展
-
精彩回顧立即查看>> 【線上直播】西門子電池行業(yè)研討會-P4B如何加速電池開發(fā)
-
精彩回顧立即查看>> 【線下會議】OFweek 2024(第九屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會
推薦專題