本發(fā)明具體涉及一種視覺(jué)激光數(shù)據(jù)融合的道路檢測(cè)方法。
背景技術(shù):
作為如今科技發(fā)展的一個(gè)熱點(diǎn)領(lǐng)域,智能技術(shù)已經(jīng)惠及人類(lèi)的方方面面。機(jī)器人技術(shù)作為智能技術(shù)的杰出代表,更是在經(jīng)歷了五十多年后的發(fā)展之后,逐漸成熟并走向商業(yè)化。
無(wú)人駕駛車(chē)一種典型的移動(dòng)機(jī)器人,而道路檢測(cè)作為無(wú)人駕駛車(chē)領(lǐng)域的一個(gè)研究熱點(diǎn),在過(guò)去十年里產(chǎn)生了很多相關(guān)成果。盡管有諸多方案的提出,基于模型和基于特征的方法,有監(jiān)督和無(wú)監(jiān)督的方法,但是有兩個(gè)關(guān)鍵問(wèn)題比較核心也頗具挑戰(zhàn)性。
(1)非結(jié)構(gòu)化環(huán)境存在道路種類(lèi)較多,特征不穩(wěn)定,容易因?yàn)楣饩€(xiàn)、天氣、季節(jié)等因素出現(xiàn)較大變化的特點(diǎn),所以面向非結(jié)構(gòu)化環(huán)境的無(wú)人駕駛車(chē)要具備適應(yīng)環(huán)境變化的能力。
(2)道路檢測(cè)最常用的傳感器是攝像機(jī),因而檢測(cè)的結(jié)果通常是圖像中的道路區(qū)域,但是圖像本身不具備三維特征,所以?xún)H僅只有圖像中的區(qū)域,結(jié)果很難應(yīng)用于無(wú)人駕駛車(chē)的實(shí)際導(dǎo)航需求中,也有使用激光傳感器作為檢測(cè)手段的算法,檢測(cè)結(jié)果可以直接用于導(dǎo)航和路徑規(guī)高劃,但是激光數(shù)據(jù)的特征相對(duì)較少,因而檢測(cè)精度和適應(yīng)性的提高難度較大。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問(wèn)題是提供一種視覺(jué)激光數(shù)據(jù)融合的道路檢測(cè)方法。
一種視覺(jué)激光數(shù)據(jù)融合的道路檢測(cè)方法,包括以下步驟:
S1:通過(guò)攝像頭采集圖像數(shù)據(jù),采用超像素分割將圖像劃分為200個(gè)特征均勻的子圖像;
S2:利用Adaboost原理對(duì)攝像頭采集到的圖像數(shù)據(jù)提取特征向量;
S3:采用基于在線(xiàn)學(xué)習(xí)的方法檢測(cè)道路區(qū)域;
S4:使用形態(tài)學(xué)方法對(duì)檢測(cè)結(jié)果進(jìn)行優(yōu)化;
S5:利用激光與視覺(jué)數(shù)據(jù)的融合,將視覺(jué)與激光坐標(biāo)系統(tǒng)進(jìn)行聯(lián)合標(biāo)定,從而將視覺(jué)當(dāng)中檢測(cè)結(jié)果映射到激光數(shù)據(jù)中,再利用激光數(shù)據(jù)的特征對(duì)檢測(cè)結(jié)果進(jìn)行校正;
S6:在激光數(shù)據(jù)中構(gòu)建三維的道路區(qū)域,對(duì)屬于道路區(qū)域的激光點(diǎn),首先找出每條掃描線(xiàn)的兩個(gè)端點(diǎn)的坐標(biāo),將這些端點(diǎn)按照現(xiàn)實(shí)中的空間位置關(guān)系分為左右兩組,然后分別對(duì)每一組采用隨機(jī)采樣一致性(RANSAC)算法進(jìn)行擬合,擬合出三維道路邊界。
進(jìn)一步的,所述超像素分割方法包括以下步驟:
S1-1:指定超像素?cái)?shù)目,將圖像均勻劃分成S*S大小的方塊并指定相應(yīng)的聚類(lèi)中心,該聚類(lèi)中心為ck=[1k,ak,bk,xk,yk]T;
S1-2:在超像素中心的3×3領(lǐng)域內(nèi)計(jì)算梯度值最小的像素點(diǎn),將其作為新的超像素中心,對(duì)每一個(gè)像素點(diǎn)i,設(shè)定l(i)=-1,d(i)=∞;
S1-3:對(duì)每一個(gè)聚類(lèi)中心ck,在其2S×2S領(lǐng)域內(nèi)計(jì)算每個(gè)像素點(diǎn)與ck的距離,設(shè)為D,如果D<d(i),則d(i)=D,l(i)=k,計(jì)算新的聚類(lèi)中心并計(jì)算剩余誤差E;
S1-4:重復(fù)S1-3,直到E小于設(shè)定的閾值,結(jié)束。
進(jìn)一步的,利用Adaboost原理對(duì)攝像頭采集到的圖像數(shù)據(jù)提取特征向量的方法如下:
S2-1:確定候選特征集合如下表所示:
S2-2:針對(duì)選取的訓(xùn)練圖片提取所有候選的特征,并加入代表其類(lèi)別的標(biāo)簽信息,構(gòu)成樣本集合{(x1,y1),(x2,y2),…,(x,yn)},其中的xi代表由候選特征構(gòu)成的特征向量,yi∈{0,1,2,3,4}為標(biāo)簽,代表該樣本的類(lèi)別,n是總的樣本數(shù),將最終的特征集合F初始化為φ,初始化樣本的權(quán)值為wi=1/n,這樣就構(gòu)成來(lái)了完整的訓(xùn)練集{(x1,y1,w1),(x2,y2,w2),…,(x,yn,wn)},將候選特征集合C初始化為所有五類(lèi)特征;
S2-3:從候選特征中依次選擇每一類(lèi)與F中的特征共同構(gòu)成選用的特征,利用Adaboost訓(xùn)練生成一個(gè)分類(lèi)器并進(jìn)行驗(yàn)證,得到對(duì)應(yīng)的剩余誤差εj,比較各個(gè)剩余誤差的大小,并把對(duì)應(yīng)誤差最小的特征加入到F中,同時(shí)從C中刪除這個(gè)特征;
S2-4:更新樣本的權(quán)重為其中的ei,如果樣本分類(lèi)正確則為0,分類(lèi)錯(cuò)誤則為1;歸一化權(quán)重,
S2-5:重復(fù)S2-3和S2-4直到所有的候選特征都加入到F,結(jié)束算法。
進(jìn)一步的,所述基于在線(xiàn)學(xué)習(xí)的道路檢測(cè)方法如下:
S3-1:選擇支持向量機(jī)(SVM)算法作為分類(lèi)算法;
S3-2:每一類(lèi)樣本選擇20張從互聯(lián)網(wǎng)獲取的圖片,分辨率為200*100,訓(xùn)練分類(lèi)器;
S3-3:分類(lèi)器在線(xiàn)更新,從拍攝到的圖像當(dāng)中截取部分圖像構(gòu)成新樣本,截取區(qū)域?yàn)橹邢路酱笮?60*80像素的區(qū)域;建立一個(gè)類(lèi)別,只保存獲取的新樣本,新樣本構(gòu)成的類(lèi)當(dāng)中最多存放20張圖片;當(dāng)圖片更新了10張時(shí)開(kāi)始新的分類(lèi)器訓(xùn)練;
S3-4:分類(lèi)器數(shù)據(jù)精簡(jiǎn),具體步驟如下:
(1)設(shè)最終的特征向量集合為F,初始化F為φ,初始化計(jì)數(shù)器C=0;
(2)針對(duì)一類(lèi)圖片,依次取出其中的圖片,按照不同的尺寸進(jìn)行子圖像劃分并計(jì)算特征向量,第一個(gè)特征向量直接壓入到F中,從第二個(gè)特征向量開(kāi)始,利用如下公式:
來(lái)計(jì)算特征向量V與F中第C個(gè)到目前為止F中最后一個(gè)特征向量之間的距離,如果滿(mǎn)足D≥T,則將V壓入到F當(dāng)中;
(3)更新C=Sizeof(F),重復(fù)(2)直到所有的類(lèi)別都提取完畢,結(jié)束;
S3-5:利用訓(xùn)練生成的分類(lèi)器進(jìn)行分類(lèi),分類(lèi)后的結(jié)果,將道路區(qū)染成白色,其它區(qū)染成黑色,就成了二值圖。
進(jìn)一步的,利用激光數(shù)據(jù)的特征對(duì)檢測(cè)結(jié)果進(jìn)行校正方法如下:
S5-1:將映射到激光數(shù)據(jù)里的道路區(qū)域定義為候選道路區(qū)域,將候選道路區(qū)域劃分為30cm*30cm的子區(qū)域,對(duì)于任意子區(qū)域Si(i∈{1,2,...,n}),假設(shè)這一區(qū)域共包含m個(gè)激光點(diǎn),利用以下公式計(jì)算子區(qū)域的高程:
其中是子區(qū)域的高程,而Ej是每個(gè)激光點(diǎn)的高度值;
S5-2:利用以下判定條件判斷此區(qū)域是否為道路區(qū)域:
其中Hmax和Hmin為給定的道路區(qū)域高程的上下界;
S5-3:將Si中的三維激光點(diǎn)定義為{Xi}={(xi,yi,zi)},(i∈{0,1,2,...,n}),這些點(diǎn)的對(duì)稱(chēng)正定協(xié)方差矩陣定義為:
λ0,λ1,λ2是矩陣的特征值,其中λ0≥λ1≥λ2,而是對(duì)應(yīng)的特征向量,其中的即是子區(qū)域的法向量,將此法向量與垂直向上的方向間的夾角定義為α,可以得到:
其中Amax和Amin為給定的道路區(qū)域法向量與豎直向上方向夾角的上下界;當(dāng)且僅當(dāng)和都為1時(shí),Si被最終確定為屬于道路區(qū)域。
本發(fā)明的有益效果是:
(1)本發(fā)明在道路檢測(cè)算法中利用固定樣本實(shí)時(shí)采集到圖片生成新的樣本,在不間斷分類(lèi)運(yùn)算的同時(shí)實(shí)現(xiàn)了分類(lèi)器的實(shí)時(shí)在線(xiàn)更新,隨環(huán)境變化而自更新的分類(lèi)器能夠很好地適應(yīng)天氣、季節(jié)、光線(xiàn)等因素的改變,保證了算法的魯棒性;
(2)本發(fā)明采用激光與視覺(jué)融合技術(shù),實(shí)現(xiàn)了從激光數(shù)據(jù)到視覺(jué)檢測(cè)結(jié)果的實(shí)時(shí)映射,并利用激光數(shù)據(jù)的幾何信息界定三維激光點(diǎn)云中的道路區(qū)域,采用隨機(jī)采樣一致性原理擬合出三維道路邊界,實(shí)現(xiàn)了道路檢測(cè)結(jié)果與無(wú)人駕駛車(chē)導(dǎo)航的無(wú)縫集成。
具體實(shí)施方式
以下具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步闡述,但不作為對(duì)本發(fā)明的限定。
一種視覺(jué)激光數(shù)據(jù)融合的道路檢測(cè)方法,包括以下步驟:
S1:通過(guò)攝像頭采集圖像數(shù)據(jù),采用超像素分割將圖像劃分為200個(gè)特征均勻的子圖像;超像素分割方法包括以下步驟:
S1-1:指定超像素?cái)?shù)目,將圖像均勻劃分成S*S大小的方塊并指定相應(yīng)的聚類(lèi)中心,該聚類(lèi)中心為ck=[1k,ak,bk,xk,yk]T;
S1-2:在超像素中心的3×3領(lǐng)域內(nèi)計(jì)算梯度值最小的像素點(diǎn),將其作為新的超像素中心,對(duì)每一個(gè)像素點(diǎn)i,設(shè)定l(i)=-1,d(i)=∞;
S1-3:對(duì)每一個(gè)聚類(lèi)中心ck,在其2S×2S領(lǐng)域內(nèi)計(jì)算每個(gè)像素點(diǎn)與ck的距離,設(shè)為D,如果D<d(i),則d(i)=D,l(i)=k,計(jì)算新的聚類(lèi)中心并計(jì)算剩余誤差E;
S1-4:重復(fù)S1-3,直到E小于設(shè)定的閾值,結(jié)束。
S2:利用Adaboost原理對(duì)攝像頭采集到的圖像數(shù)據(jù)提取特征向量,方法如下:
S2-1:確定候選特征集合如下表所示:
S2-2:針對(duì)選取的訓(xùn)練圖片提取所有候選的特征,并加入代表其類(lèi)別的標(biāo)簽信息,構(gòu)成樣本集合{(x1,y1),(x2,y2),…,(x,yn)},其中的xi代表由候選特征構(gòu)成的特征向量,yi∈{0,1,2,3,4}為標(biāo)簽,代表該樣本的類(lèi)別,n是總的樣本數(shù),將最終的特征集合F初始化為φ,初始化樣本的權(quán)值為wi=1/n,這樣就構(gòu)成來(lái)了完整的訓(xùn)練集{(x1,y1,w1),(x2,y2,w2),…,(x,yn,wn)},將候選特征集合C初始化為所有五類(lèi)特征;
S2-3:從候選特征中依次選擇每一類(lèi)與F中的特征共同構(gòu)成選用的特征,利用Adaboost訓(xùn)練生成一個(gè)分類(lèi)器并進(jìn)行驗(yàn)證,得到對(duì)應(yīng)的剩余誤差εj,比較各個(gè)剩余誤差的大小,并把對(duì)應(yīng)誤差最小的特征加入到F中,同時(shí)從C中刪除這個(gè)特征;
S2-4:更新樣本的權(quán)重為其中的ei,如果樣本分類(lèi)正確則為0,分類(lèi)錯(cuò)誤則為1;歸一化權(quán)重,
S2-5:重復(fù)S2-3和S2-4直到所有的候選特征都加入到F,結(jié)束算法。
S3:采用基于在線(xiàn)學(xué)習(xí)的方法檢測(cè)道路區(qū)域,方法如下:
S3-1:選擇支持向量機(jī)(SVM)算法作為分類(lèi)算法;
S3-2:每一類(lèi)樣本選擇20張從互聯(lián)網(wǎng)獲取的圖片,分辨率為200*100,訓(xùn)練分類(lèi)器;
S3-3:分類(lèi)器在線(xiàn)更新,從拍攝到的圖像當(dāng)中截取部分圖像構(gòu)成新樣本,截取區(qū)域?yàn)橹邢路酱笮?60*80像素的區(qū)域;建立一個(gè)類(lèi)別,只保存獲取的新樣本,新樣本構(gòu)成的類(lèi)當(dāng)中最多存放20張圖片;當(dāng)圖片更新了10張時(shí)開(kāi)始新的分類(lèi)器訓(xùn)練;
S3-4:分類(lèi)器數(shù)據(jù)精簡(jiǎn),具體步驟如下:
(1)設(shè)最終的特征向量集合為F,初始化F為φ,初始化計(jì)數(shù)器C=0;
(2)針對(duì)一類(lèi)圖片,依次取出其中的圖片,按照不同的尺寸進(jìn)行子圖像劃分并計(jì)算特征向量,第一個(gè)特征向量直接壓入到F中,從第二個(gè)特征向量開(kāi)始,利用如下公式:
來(lái)計(jì)算特征向量V與F中第C個(gè)到目前為止F中最后一個(gè)特征向量之間的距離,如果滿(mǎn)足D≥T,則將V壓入到F當(dāng)中;
(3)更新C=Sizeof(F),重復(fù)(2)直到所有的類(lèi)別都提取完畢,結(jié)束;
S3-5:利用訓(xùn)練生成的分類(lèi)器進(jìn)行分類(lèi),分類(lèi)后的結(jié)果,將道路區(qū)染成白色,其它區(qū)染成黑色,就成了二值圖。
S4:使用形態(tài)學(xué)方法對(duì)檢測(cè)結(jié)果進(jìn)行優(yōu)化;
S5:利用激光與視覺(jué)數(shù)據(jù)的融合,將視覺(jué)與激光坐標(biāo)系統(tǒng)進(jìn)行聯(lián)合標(biāo)定,從而將視覺(jué)當(dāng)中檢測(cè)結(jié)果映射到激光數(shù)據(jù)中,再利用激光數(shù)據(jù)的特征對(duì)檢測(cè)結(jié)果進(jìn)行校正,校正方法如下:
S5-1:將映射到激光數(shù)據(jù)里的道路區(qū)域定義為候選道路區(qū)域,將候選道路區(qū)域劃分為30cm*30cm的子區(qū)域,對(duì)于任意子區(qū)域Si(i∈{1,2,...,n}),假設(shè)這一區(qū)域共包含m個(gè)激光點(diǎn),利用以下公式計(jì)算子區(qū)域的高程:
其中是子區(qū)域的高程,而Ej是每個(gè)激光點(diǎn)的高度值;
S5-2:利用以下判定條件判斷此區(qū)域是否為道路區(qū)域:
其中Hmax和Hmin為給定的道路區(qū)域高程的上下界;
S5-3:將Si中的三維激光點(diǎn)定義為{Xi}={(xi,yi,zi)},(i∈{0,1,2,...,n}),這些點(diǎn)的對(duì)稱(chēng)正定協(xié)方差矩陣定義為:
λ0,λ1,λ2是矩陣的特征值,其中λ0≥λ1≥λ2,而是對(duì)應(yīng)的特征向量,其中的即是子區(qū)域的法向量,將此法向量與垂直向上的方向間的夾角定義為α,可以得到:
其中Amax和Amin為給定的道路區(qū)域法向量與豎直向上方向夾角的上下界;當(dāng)且僅當(dāng)和都為1時(shí),Si被最終確定為屬于道路區(qū)域。
S6:在激光數(shù)據(jù)中構(gòu)建三維的道路區(qū)域,對(duì)屬于道路區(qū)域的激光點(diǎn),首先找出每條掃描線(xiàn)的兩個(gè)端點(diǎn)的坐標(biāo),將這些端點(diǎn)按照現(xiàn)實(shí)中的空間位置關(guān)系分為左右兩組,然后分別對(duì)每一組采用隨機(jī)采樣一致性(RANSAC)算法進(jìn)行擬合,擬合出三維道路邊界。