陳雷雷,趙國慶,暴佳偉
(北京石油化工學(xué)院信息工程學(xué)院,北京102617)
隨著現(xiàn)代智能交通系統(tǒng)的發(fā)展,車位線分割成為智能交通的熱門研究方向,同時也是智能化泊車的關(guān)鍵技術(shù)和難點(diǎn)之一。目前,應(yīng)用最廣泛的是基于超聲波雷達(dá)傳感器的車位線檢測和定位。但相對于超聲波雷達(dá)車位感知系統(tǒng),基于機(jī)器視覺的車位感知系統(tǒng)不要求相鄰車位有其他車輛停靠或其他可定位反射的物體[1-3],還可以獲得更多的車位信息,擴(kuò)大了智能化泊車系統(tǒng)的適用范圍。隨著計算機(jī)軟硬件技術(shù)的飛速發(fā)展,圖像處理技術(shù)已經(jīng)被廣泛地應(yīng)用于生活的各個領(lǐng)域,促使機(jī)器視覺的車位線檢測和定位成為新的熱門研究方向,為后續(xù)路線規(guī)劃和車輛控制提供新的信息獲取途徑[4]。目前,基于機(jī)器視覺的車位線分割方法主要分為以下2類:
基于RGB色彩空間的車位線識別算法,朱旺旺[5]、胡振等[6]將獲取的RGB彩色圖像直接轉(zhuǎn)換為灰度圖像,去噪并二值化后再進(jìn)行形態(tài)學(xué)處理和邊緣檢測等步驟,提取出車位線區(qū)域。該方法能夠有效找到包含車位線的區(qū)域,節(jié)省時間,滿足實(shí)時性要求,但實(shí)際上完全忽略了利用車位線的顏色信息,同時受背景和光照干擾的影響較大,往往最后檢測到的車位線非目標(biāo)信息較多,使定位準(zhǔn)確度大大下降。
基于形狀的檢測方法是利用車位線的形狀信息,主要有模板匹配法、Hough變換法等[7]。胡振等[6]利用模板匹配法對車位線進(jìn)行匹配識別,但是不具有旋轉(zhuǎn)不變性和尺度不變性,匹配的效果較差,有一定的局限性。Hough變換抗噪效果好,對簡單圖形有很好的檢測效果,但對復(fù)雜的圖形檢測效果會變差,檢測后往往存在大量無效信息。
針對目前車位線分割方法存在的問題,筆者提出基于HSV色彩空間與改進(jìn)OTSU分割算法的車位線分割方法。李磊等[7]研究表明,在光照不均勻以及存在陰影等情況下,HSV彩色空間的H閾值信息同樣得到較好的預(yù)期分割效果。因此,選擇HSV色彩空間可以有效避免RGB色彩空間易受外部光照變化的影響。經(jīng)過改進(jìn)的OTSU算法大大縮短了圖像分割需要的時間,減少了計算量,彌補(bǔ)分割時間較長的不足。該分割方法首先將圖像的RGB色彩空間轉(zhuǎn)換成HSV色彩空間,利用先驗(yàn)知識,車位線(黃色)在一定色相范圍內(nèi),依據(jù)HSV色彩空間將RGB空間中相關(guān)性很強(qiáng)的R、G、B值轉(zhuǎn)化為相關(guān)性較弱的H、S、V值的特點(diǎn)[8],可以對非目標(biāo)像素進(jìn)行初步的過濾。然后,利用H分量、S分量與改進(jìn)OTSU算法相結(jié)合的方法進(jìn)一步對非目標(biāo)像素過濾,分割提取出目標(biāo)區(qū)域。最后,將提取的目標(biāo)區(qū)域進(jìn)行二值化處理,再利用形態(tài)學(xué)和Hough變換結(jié)合的方法,最終獲得一個比較完善的車位線信息。
整體思路是利用爬蟲技術(shù)在網(wǎng)上獲取車位線圖像,先進(jìn)行數(shù)據(jù)清洗獲得具有代表的車位線圖像。對分割的圖像先從RGB空間轉(zhuǎn)化為HSV空間,結(jié)合H分量、S分量與改進(jìn)的Otsu算法對非目標(biāo)像素過濾,分割出目標(biāo)區(qū)域,最后利用形態(tài)學(xué)與Hough變換結(jié)合的方法處理,獲得一個比較完善的車位線信息。整體流程如圖1所示。
圖1 整體流程圖
RGB色彩空間是目前運(yùn)用最廣的顏色空間之一,其建立在1個單位長度的立方體笛卡爾坐標(biāo)系中,3個分量分別為R(紅)、G(綠)、B(藍(lán)),通過3通道顏色的相互疊加得到多樣的顏色,RGB彩色空間可以定義為:
O(x,y)=[R(x,y),G(x,y),B(x,y)]T=
(R,G,B)T
(1)
RGB色彩空間是一種常見的顏色表示法,但RGB空間內(nèi)的任意一色彩都是通過R、G、B3個分量的共同作用,3個分量相關(guān)性很高,無法用單一的參數(shù)進(jìn)行數(shù)字化調(diào)整。然而,HSV彩色空間3個通道沒有必然的聯(lián)系[8],更有利于對各個分量進(jìn)行操作而不影響最后效果,且車位線有明顯的色相信息,有利于車位線的提取。因此,引入了HSV彩色空間。
HSV顏色空間更適合人類視覺顏色空間,由色調(diào)H(Hue)、飽和度S(Saturation)和亮度V(Value)3個分量組成[9]。其中H表示不同的顏色,S表示顏色的深淺,V表示顏色的明暗程度。
從RGB到HSV的轉(zhuǎn)換是一個簡單的非線性變換[10]。RGB空間到HSV空間的量化過程:
Step1: 對RGB進(jìn)行歸一化處理:
(2)
設(shè)(r、g、b)為RGB空間的1個點(diǎn),歸一化后,其為[0,1]之間的實(shí)數(shù),減少計算的復(fù)雜度。
Step2: 從RGB色彩空間到HSV色彩空間進(jìn)行轉(zhuǎn)換:
(3)
S=
(4)
V=max
(5)
其中:max為r、g、b中的最大值;min為其最小值。
H分量值規(guī)范化在0~360之間,S分量規(guī)范化在0~255之間,但在計算機(jī)數(shù)值計算時,會將H、S歸一化為[0,1]之間的實(shí)數(shù)。
選擇HSV色彩空間作為待分割的彩色圖像的色彩空間,原圖像以及其HSV空間的各個分量圖如圖2所示,用灰度圖像的形式表示,從圖2(b)和圖2(c)對比觀察可以發(fā)現(xiàn),在局部顏色相同的圖像區(qū)域(車位線區(qū)域),其色相值一致性很高,非常便于圖像分割。
圖2 車位彩色圖像及其在HSV各個分量圖
最大類間法又名大津法,是由日本學(xué)者大津提出來的。其思想是按圖像的灰色特性將圖像分為目標(biāo)部分和背景部分,通過計算比較背景和目標(biāo)之間灰度值的方差來找到最佳閾值,方差差距越大圖像兩部分差距就越大,使得方差最大的灰度值即為最佳閾值[11],從而達(dá)到圖像分割的目的。設(shè)灰度圖像灰度值為H個,則一幅圖像的灰度取值范圍在[0,H-1]。
計算兩類G0和G1的類間方差:
ε(t)=ω0(υ0-υ)2+ω1(υ1-υ)2=
ω0ω1(υ0-υ1)2
(6)
最佳閾值為:
T=max(ε(t))
(7)
G0和G1兩類像素的個數(shù)在整體圖像中所占的百分比分別為ω0、ω1,兩類灰度均值分別為υ0、υ1。在[0,H-1]范圍內(nèi),改變t的值,找到其中方差值最大的值T,即為最佳分割閾值。由上述算法可知,需要將每一個灰度值作為閾值,通過上述算法計算得到方差進(jìn)行比較,過程計算量比較大,導(dǎo)致分割時間較長,不能滿足實(shí)時性的要求。
粒子群算法(Particle Swarm Optimization,PSO)是一種群智能算法,是由J.KENNEDY和R.C.EBERHART提出的[12],其基本思想是通過粒子個體的簡單行為、群體內(nèi)的信息交互尋求全局最優(yōu)。該算法操作簡單、收斂速度快、求解精度高、易于實(shí)現(xiàn)。
粒子的速度以及位置是根據(jù)其本身的經(jīng)驗(yàn)以及同伴的經(jīng)驗(yàn)進(jìn)行動態(tài)調(diào)整,主要公式如下:
粒子i的第d維速度更新式為:
(8)
粒子i的第d維位置更新式為:
(9)
Clerc和Kennedy通過對粒子運(yùn)動軌跡分析,證明標(biāo)準(zhǔn)的粒子種群算法中的粒子都是向著其個體最優(yōu)位置和群體搜索到的全局最優(yōu)位置的加權(quán)位置收斂[13]。
依據(jù)以上結(jié)論,Kennedy于2003年提出了標(biāo)準(zhǔn)粒子群算法的一個簡潔版本BPSO算法[13],與標(biāo)準(zhǔn)的粒子群算法相比,去除了慣性權(quán)重w、速度v和加速度常數(shù)c1、c2等參數(shù)。由于其簡單無參數(shù)、易于實(shí)現(xiàn)、收斂速度快等優(yōu)點(diǎn),被廣泛應(yīng)用于求解靜態(tài)優(yōu)化問題。BPSO算法中的粒子的位置由高斯采樣直接獲取,具體更新式為:
(10)
改進(jìn)的Otsu算法是在傳統(tǒng)的Otsu基礎(chǔ)上,通過粒子群優(yōu)化算法對其計算進(jìn)行優(yōu)化[14-15]。主要思路是將Otsu算法與粒子群算法結(jié)合,將Otsu算法作為粒子群算法的適應(yīng)值函數(shù)(fitness function),來計算每個粒子的適應(yīng)度與最優(yōu)閾值比較,經(jīng)過多次迭代最后取得優(yōu)化后的閾值。
通過優(yōu)化前的Otsu算法與PSO算法以及BPSO算法優(yōu)化后的Otsu算法進(jìn)行比較,主要通過迭代次數(shù)、運(yùn)行時間、最佳閾值的比較等多個性能指標(biāo)進(jìn)行驗(yàn)證,來判斷改進(jìn)的算法是否達(dá)到預(yù)期的目標(biāo)。
基于PSO改進(jìn)的Otsu分割算法的綜合思路如下:
Step1:將Otsu算法求類間方差的公式(6)作為粒子群優(yōu)化算法的適應(yīng)值函數(shù);
Step2:以當(dāng)前計算的分割閾值作為粒子的當(dāng)前位置,以閾值的更新速度作為粒子的當(dāng)前速度;
Step3:利用先驗(yàn)知識,調(diào)整w控制粒子對當(dāng)前速度的繼承比例,從而實(shí)現(xiàn)全局搜索和局部搜索的平衡;
Step4:根據(jù)更新的每個個體、每個種群的最優(yōu)位置,在灰度空間動態(tài)搜索類間方差最大閾值,并記錄運(yùn)行時間、迭代次數(shù)等性能指標(biāo)。
其中,BPSO算法是進(jìn)一步優(yōu)化PSO算法,去除了慣性權(quán)重w、速度v和加速度常數(shù)c1、c2等參數(shù)。BPOS算法中的粒子的位置由高斯采樣直接獲取,根據(jù)式(10)更新種群中所有的粒子下一代的位置,除去粒子越界因素,計算所有粒子的適應(yīng)值,根據(jù)更新的每個個體、每個種群的最優(yōu)位置,在灰度空間動態(tài)搜索類間方差最大閾值,并記錄運(yùn)行時間、迭代次數(shù)等性能指標(biāo)。
在車位線圖像中,車位線的目標(biāo)灰度級比較高,而且往往車位線所占整個圖像的比例較小,兩者面積相差太大時很可能導(dǎo)致最佳閾值偏移到背景區(qū)域,將部分背景也分割到目標(biāo)區(qū)域里。因此,可以根據(jù)車位線(黃色)在一定色相范圍內(nèi),依據(jù)HSV色彩空間H、S、V3個分量間的相關(guān)性弱的特點(diǎn),先將色相有效范圍之外的像素點(diǎn)去掉(用黑色像素代替)可以對非目標(biāo)像素進(jìn)行初步的過濾,有效地避免改進(jìn)的Otsu分割過程出現(xiàn)的漏檢 (把目標(biāo)類的像素錯分為背景類)的情況[16]。
車位線彩色原圖、預(yù)處理圖和處理后的HSV空間分布如圖3所示。由圖3(a)中可以看出,原圖中具有相對較好的車位線信息,也具有黃色廣告牌以及黃綠色的草木作為干擾信息,采用此圖作為分割算法的測試圖具有一定的代表性。根據(jù)國家標(biāo)準(zhǔn) GB5768.3—2009[17]及推薦性國標(biāo) GB/T16311—2009[18],結(jié)合一般經(jīng)驗(yàn),車位線為6~10 cm的黃色標(biāo)線。黃色車位線在圖像中的色相在[20,80]的范圍內(nèi),但考慮到實(shí)際環(huán)境中車位線磨損情況,色相范圍適當(dāng)?shù)財U(kuò)大為[15,85],即色相歸一化值在[0.042,0.236]內(nèi)的像素包含了目標(biāo)車位線的像素,處理結(jié)果如圖3所示。
圖3 車位線彩色原圖、預(yù)處理圖和處理后的HSV空間分布
利用色相范圍有效地將非目標(biāo)的像素進(jìn)行初步的過濾。從圖3(c)、圖3(d)中可以看出,大部分非目標(biāo)像素點(diǎn)已經(jīng)被過濾。其中,一部分區(qū)域是廣告牌和車位線,顏色非常接近,一部分綠色的植物沒有過濾掉,門口臺階灰色部分由式(3)可知,色相的取值在于r、g、b3個值任意2個的差值和另外2個的差值之商,而此時r、g、b3個值非常接近時,飽和度S趨近于0,色相沒有任何意義,因此沒有過濾掉。
為了將黃色部分的車位線分割出來,從圖3(d)中可以看出,目標(biāo)像素在H與S極坐標(biāo)系中聚合度很高,可以利用聚類的方法將目標(biāo)像素分割出來,但在聚類過程中為了很好地將目標(biāo)像素與其余像素區(qū)分,需要進(jìn)行大量的計算,從而導(dǎo)致效率不高,在加上H、S、V分量之間沒有必然的關(guān)聯(lián),利用逐一對H、S分量進(jìn)行過濾處理的方法,既降低了維度,又有效地減少計算量。
根據(jù)上文分析并結(jié)合圖3(b)中H分量的直方圖可以看出,直方圖存在明顯的波峰和波谷, 因此利用改進(jìn)的Otsu算法選擇合適的閾值將非目標(biāo)像素進(jìn)一步去除,預(yù)處理圖和處理后的H分量圖如圖4所示。 從圖3(c)以及圖4(a)中可以看出,車位線區(qū)域存在很多孤立的小點(diǎn)(即噪聲),這些小點(diǎn)與車位線區(qū)域的灰度值相差較大,可以先對H分量圖像去噪處理。中值濾波是一種非線性處理技術(shù),主要功能就是將周圍像素之間的灰度值差異較大的像素修改為與周圍像素接近的值,從而消除孤立的噪聲點(diǎn)并有效地抑制圖像中的噪聲[19]。因此,得到預(yù)處理圖像的H分量圖像后,先對其進(jìn)行中值濾波處理以濾除圖像中的噪聲,再進(jìn)行H分量非車位線的過濾,處理結(jié)果如圖4所示。
圖4 預(yù)處理圖和處理后的H分量圖像
由圖4(c)中可以看出,彩色圖像在色相空間的分割結(jié)果有效地說明了H分量的像素點(diǎn)聚合度很高,此時從圖4(d)可以看出,門口臺階區(qū)域以及植物部分區(qū)域b非目標(biāo)像素已被過濾,符合目標(biāo)信息進(jìn)一步分割要求。
西方園林最早可以追溯到古埃及時期,當(dāng)時是為了農(nóng)事耕種的需要。從古埃及的宅園到中世紀(jì)的庭園,其間經(jīng)過古希臘、古羅馬園林,是規(guī)則式園林的發(fā)展階段。文藝復(fù)興運(yùn)動將歐洲園林藝術(shù)帶入了新的一個發(fā)展階段,法國的古典主義更是使歐洲的規(guī)則式園林藝術(shù)達(dá)到不可逾越的高峰,由勒諾特爾設(shè)計的凡爾賽宮便是在此時產(chǎn)生。凡爾賽宮雖是皇家園林,但法國不像中國有著專制主義中央集權(quán)的傳統(tǒng)。法國是15世紀(jì)末到16世紀(jì)初才形成中央集權(quán)國家。17世紀(jì)中葉,法國的君主專制制度達(dá)到頂峰,路易十四登上王位,君主權(quán)利高度集中,凡爾賽宮就是在法國君主專制達(dá)到頂峰時的產(chǎn)物。與中國不同的是,凡爾賽宮除了是一座皇家園林外,還承擔(dān)了皇室宮殿的功能。
根據(jù)H分量過濾處理結(jié)果可以看出,部分區(qū)域還存在非車位線信息,結(jié)合圖4(d)可以明顯地看出,這部分信息基本分布在低飽和度區(qū)域,即a所指區(qū)域。根據(jù)改進(jìn)的Otsu算法獲取S分量的分割閾值,將飽和度低的部分進(jìn)行過濾。再加上H分量的進(jìn)一步過濾,圖像的總像素個數(shù)再一次下降,進(jìn)一步減少了計算量。處理前、后的圖像以及S分量的直方圖如圖5所示。
圖5 S分量過濾前后的分割結(jié)果
從圖5中可以看出,分割效果良好,車位線信息被完整地分割出來。但廣告牌部分沒有分割,主要原因是其與車位線的顏色接近,色相與飽和度相差不大,沒有過濾掉。此時可以結(jié)合形態(tài)學(xué)以及Hough變換方式將其過濾,提取車位線。
形態(tài)學(xué)即數(shù)字形態(tài)學(xué)(Mathematical Morphology),是圖像處理中應(yīng)用最為廣泛的技術(shù)之一。由圖5分割結(jié)果可以看出,車位線輪廓有小的間隙,可以利用形態(tài)學(xué)方法中的開運(yùn)算進(jìn)行進(jìn)一步的優(yōu)化處理[20-21],為了消除剩余的非車位線信息,可以利用Hough變換法通過對車位線的檢測方式將其過濾[22-23],得到一個比較完善的車位線輪廓。
開運(yùn)算是先膨脹后腐蝕可以使輪廓變得光滑,通??梢詮浐溪M窄的間隙,填充小的空洞。
圖像g(x,y)被結(jié)構(gòu)元素B腐蝕,定義為:
(g?B)(x,y)=
min{g(x-t,y-s)-
B(t,s)|(x-t,y-s)∈Dg;
(t,s)∈DB}
圖像g(x,y)被結(jié)構(gòu)元素B膨脹,定義為:
(g⊕B)(x,y)=
max{g(x-t,y-s)+
B(t,s)|(x-t,y-s)∈Dg;
(t,s)∈DB}
Hough變換是圖像處理中從圖像中識別幾何形狀的基本方法之一。車位線部分有很多狹窄的間隙,對Hough變換檢測直線過程造成一定的干擾,使得檢測結(jié)果不理想。所以先對S分量分割后的圖像進(jìn)行形態(tài)學(xué)的膨脹操作彌補(bǔ)車位線的間隙,再進(jìn)行Hough對車位線(四邊形)進(jìn)行檢測,提取出車位線輪廓,將不符合的像素過濾,最后對處理后的圖像進(jìn)行腐蝕操作。處理結(jié)果如圖6所示。
圖6 S分量過濾后以及形態(tài)學(xué)Hough變換處理結(jié)果
從圖6中可以看出,形態(tài)學(xué)與Hough結(jié)合處理結(jié)果將車位線間隙進(jìn)行了填充,也將非目標(biāo)信息進(jìn)行最后的過濾處理,最終得到一個比較完善的車位線輪廓。
在PC端使用MathWorks公司出品的Matlab軟件(版本R2012b)進(jìn)行編碼,以JetBrains公司出品的PyCharm(版本2019.3)智能開發(fā)集成工具為輔助,利用各100張相對單一和相對復(fù)雜環(huán)境的具有代表的車位線圖像測試數(shù)據(jù),主要通過迭代次數(shù)、運(yùn)行時間、最佳閾值的比較等多個性能指標(biāo)進(jìn)行驗(yàn)證來判斷改進(jìn)的算法是否達(dá)到預(yù)期的目標(biāo)。提取結(jié)果分別如圖7~圖9所示,車位線分割結(jié)果分別如表1、表2所示。
表1 相對單一的車位線分割結(jié)果對比
表2 相對復(fù)雜的車位線分割結(jié)果對比
從圖7~圖9中可以看出,基于HSV空間分量的分割效果比RGB空間分割效果要好。另外,加上圖像預(yù)處理以及HSV空間分層依次過濾,圖像的總像素點(diǎn)不斷減少,進(jìn)一步減少了計算量,提高了分割效率。
圖7 相對復(fù)雜環(huán)境圖像車位線分割結(jié)果
圖8 相對單一環(huán)境圖像車位線分割結(jié)果
圖9 相對單一、復(fù)雜圖像車位線分割結(jié)果
從表1和表2中可以看出,在對HSV空間H、S分量依次過濾非目標(biāo)信息時,利用單一的Otsu算法進(jìn)行分割運(yùn)行時間都較長,迭代次數(shù)都是256次,雖然求得最優(yōu)閾值所占比例最高。但計算量大、運(yùn)行時間長,難以滿足車位線提取的實(shí)時性;Otsu+PSO算法相對于Otsu算法有所改進(jìn),算法的迭代次數(shù)大幅度降低,運(yùn)行時間也減少,雖然求得最優(yōu)解所占的比例沒有Otsu算法高,但整體性能明顯優(yōu)于Otsu算法;Otsu+BPSO算法在Otsu+PSO算法的基礎(chǔ)上對PSO算法進(jìn)行改進(jìn),省去了慣性權(quán)重w、速度v和加速度常數(shù)等參數(shù),其簡單無參數(shù)和結(jié)果數(shù)據(jù)也顯示其運(yùn)行時間進(jìn)一步縮短,迭代次數(shù)也進(jìn)一步的減少,求得最優(yōu)解所占比例也相對較高?;贖SV空間分量的3種方法的分割效果基本相差不大,Otsu+BPSO整體性能優(yōu)于其他2種算法。
分別對比相對單一的車位線圖像與相對較復(fù)雜的車位線圖像分割結(jié)果可以看出,傳統(tǒng)的RGB直接處理方式,由于之間相關(guān)性較強(qiáng)且分割時易受光照不均勻、背景的影響,分割結(jié)果不理想。筆者引入了HSV空間,利用H、S分量依次過濾非車線信息,并利用形態(tài)學(xué)以及Hough變換法的處理方式有效地將車位線提取出來,分割結(jié)果較好。傳統(tǒng)的Otsu算法迭代次數(shù)太多、運(yùn)行時間長,難以滿足實(shí)時性需求。在傳統(tǒng)的Otsu算法的基礎(chǔ)上引入了粒子群優(yōu)化算法以及骨干粒子群優(yōu)化算法,對傳統(tǒng)的Otsu算法進(jìn)行優(yōu)化求最優(yōu)閾值,并進(jìn)行3組對比,結(jié)果表明,提出的改進(jìn)的Otsu+BPSO算法在相對單一以及相對復(fù)雜環(huán)境的車位線分割效率明顯優(yōu)于傳統(tǒng)的Otsu算法,具有較強(qiáng)的實(shí)用性。