本發(fā)明屬于道路交通信息檢測技術(shù)領(lǐng)域,涉及一種基于雙攝像機檢測道路交通信息的融合方法,采用雙攝像機對車輛前方車道線和斑馬線進行檢測,對前方車輛以及紅綠燈進行識別。
背景技術(shù):
:
智能車輛是一個綜合系統(tǒng),包括環(huán)境感知、規(guī)劃決策和多種輔助駕駛功能。它綜合運用了傳感器、通信、人工智能和自動控制等技術(shù),成為現(xiàn)代先進技術(shù)的演練場。隨著計算機視覺技術(shù)在智能車輛中得到廣泛應(yīng)用,基于視覺的智能車輛周圍環(huán)境感知技術(shù)也在不斷發(fā)展,并成為智能車輛研究的熱點。
智能車輛周圍環(huán)境感知技術(shù)主要包括道路線的檢測、斑馬線檢測、前方車輛識別、行人識別以及紅綠燈識別等?;谝曈X傳感器的單一特征檢測算法目前已經(jīng)有了豐富的研究基礎(chǔ),魯棒性和實時性都很強,在汽車輔助駕駛系統(tǒng)中得到廣泛應(yīng)用?;谔荻仍鰪姾湍嫱敢曭炞C的車道線檢測,基于最大穩(wěn)定區(qū)域和隨機采樣的斑馬線檢測方法,基于Harr-like訓(xùn)練的車輛和紅綠燈識別方法,存在準確性不高,魯棒性不強等缺點。
技術(shù)實現(xiàn)要素:
:
本發(fā)明的目的在于克服現(xiàn)有技術(shù)存在的缺點,尋求設(shè)計提供一種基于雙攝像機檢測道路交通信息的融合方法,采用雙攝像機對車輛前方車道線和斑馬線進行檢測,對前方車輛以及紅綠燈進行識別,并應(yīng)用邏輯判別方法進行信息融合,獲取車前環(huán)境主要特征。
為了實現(xiàn)上述目的,本發(fā)明采用智能車輛環(huán)境感知技術(shù),利用雙攝像機檢測道路交通信息,其具體過程為:
(1)確定第一攝像機和第二攝像機的安裝高度均為1.05m,將視角范圍為30°的第一攝像機和第二攝像機分別安裝在車輛前方支架橫向距離的1/3和2/3處,根據(jù)車道線、斑馬線、紅綠燈和前方車輛的位置確定兩臺攝像機的縱橫向安裝位置及角度;
(2)第一攝像機檢測4幀車道線再檢測1幀斑馬線,進行5幀循環(huán)檢測;第二攝像機進行車輛和紅綠燈循環(huán)識別,當?shù)诙z像機識別出紅綠燈時,第一攝像機下一幀圖像進行斑馬線的檢測,如果沒有檢測到斑馬線,第二攝像機再次進行紅綠燈識別,如果兩次都識別出紅綠燈,說明車輛前方處于交叉口;
(3)當?shù)诙z像機識別出前方車輛時,第一攝像機只進行車道線的檢測,第二攝像機不識別紅綠燈,判斷前方車輛的行為,并跟隨車輛運行;
(4)當?shù)谝粩z像機檢測出斑馬線時,第二攝像機只進行紅綠燈的識別判定,若第二攝像機沒有檢測到紅綠燈,則第一攝像機進行下一幀斑馬線的判定,第二攝像機進行紅綠燈的判定,如果第一攝像機檢測出斑馬線,第二攝像機沒有檢測出紅綠燈表明此時前方是人行橫道;如果第一攝像機檢測出斑馬線,第二攝像機識別出紅綠燈,表明前方是交叉口,實現(xiàn)道路交通信息的檢測。
本發(fā)明所述智能車輛環(huán)境感知技術(shù),運用傳感器融合技術(shù)來獲得車輛周圍環(huán)境的有用信息,傳感器將外界的各種信號轉(zhuǎn)化成計算機能夠識別的電信號,包括環(huán)境感知模塊、分析模塊和控制模塊,環(huán)境感知模塊需要雙攝像機輸入相應(yīng)信息,分析模塊獲取環(huán)境特征,控制模塊模擬駕駛員的行為,緊急情況彌補駕駛員行為的不足。
本發(fā)明所述車輛前方支架由一個橫向支架放置在兩個豎向支架上構(gòu)成,橫向支架和豎向支架的長度根據(jù)實際需要確定。
本發(fā)明第一攝像機檢測車道線時,采用改進的Hough變換檢測車道線,檢測速度為10幀/秒,一幀圖像檢測出的車道線長度至少為2.5米,完全滿足城市道路實時檢測車道線的需求,具體檢測過程為:
(1)第一攝像機獲取圖像的像素矩陣為m行n列矩陣,定義圖像的左上角為(0,0),并對圖像進行預(yù)處理;
(2)從圖像的m/2行向下逐行掃描,當檢測到白點時(像素值為255)進行計數(shù),將白點坐標存儲在寄存器中,直至掃描到m行;
(3)將直角坐標下檢測出的白點轉(zhuǎn)換到極坐標下,在極坐標系下這些白點都是一條條直線,計算直線在極坐標下通過各個點的數(shù)量,并將它們存放在存儲器中,判斷存儲器中數(shù)據(jù)的最大值和次大值,最大值和次大值就是直角坐標系中經(jīng)過兩條特定直線的白點數(shù)目。如果直線在直角坐標系40°-60°范圍內(nèi),并且白點數(shù)目大于30,在40°-60°內(nèi)擬合出一條左車道線;如果直線在直角坐標系130°-150°范圍內(nèi),并且白點數(shù)目大于30,在130°-150°內(nèi)擬合出一條右車道線;
(4)通過左右車道線角度的判定,得到左右車道線最下方起始點(a,b)和(c,d),并獲得相應(yīng)的角度值分別為α1和α2,(x,y)為道路消失點;
(5)當左右車道線檢測不完整時:
①α1=0|α2=0時,即沒有檢測出左車道線或右車道線或者左右車道線都沒有檢測出時,若只檢測出一條車道線,控制車輛中心線與左右車道線距離相等,相互平行;當左右車道線都沒有檢測出來時,令車輛停止前進;
②40°<α1<60°或130°<α2<150°時,根據(jù)(3)中檢測出的直線,確定(a,b)和(c,d)的坐標以及左右車道線的角度α1和α2;
(6)分別求出(a,b)和(c,d)的坐標、偏離角度α1和α2,列出左右車道線的直線方程,求出交點坐標(x,y),由此能延伸車道線長度,繼而通過檢測判定車道線的彎曲方向。
本發(fā)明檢測斑馬線時通過第一攝像機實時采集道路周圍視頻圖像,然后對采集的視頻圖像進行分析處理,從而做出預(yù)警和提示,包括角點檢測、角度判定、灰度直方圖判定和斑馬線區(qū)域面積判定四個過程:首先對圖像進行預(yù)處理,將圖像轉(zhuǎn)換為灰度圖像,基于灰度圖像的角點檢測是將角點定義在圖像的像素點內(nèi),將周圍鄰域內(nèi)的像素點灰度值與該點灰度值進行比較,如果灰度值大于或者小于30,則證明此處存在角點,并獲取角點坐標;角度判定是計算兩條直線夾角的余弦值進行矩形的判定,根據(jù)斑馬線在圖像中的特征,計算檢測到矩形的數(shù)量,當矩形數(shù)量大于4個時,證明存在斑馬線;對圖像進行灰度處理,根據(jù)圖像的灰度直方圖判定可能存在斑馬線的區(qū)域,根據(jù)所確定的區(qū)域進行矩形面積的判定,設(shè)定圖像中矩形大于1000像素并且小于4000像素為斑馬線矩形區(qū)域,通過以上步驟,最終確定圖像中是否存在斑馬線。
本發(fā)明采用第二攝像機識別前方車輛和紅綠燈,判斷前方是否有車輛和紅綠燈,為智能車輛的縱向控制提供依據(jù),前方車輛識別時,采用現(xiàn)有的Haar特征訓(xùn)練分類器進行車輛識別,先車輛圖像訓(xùn)練需要經(jīng)過正負樣本的選取、生成樣本文件和訓(xùn)練樣本三步,最后進行車輛目標識別,其中正樣本指只包含待識別的物體的圖片,負樣本指不包含待識別物體的任何圖片;紅綠燈識別時,先獲取紅綠燈圖像,對圖像進行區(qū)域劃分、灰度化和平滑濾波等預(yù)處理后,統(tǒng)計像素顏色特性判斷紅綠燈所在區(qū)域,在紅綠燈區(qū)域內(nèi)具體判斷出紅綠燈的顏色,通過定位紅綠燈位置,將第二攝像機獲取的圖像由RGB空間轉(zhuǎn)換到HSV空間,通過對圖像的色調(diào)H、圖像的飽和度S、圖像的亮度V分量分別進行判斷,得出當前紅綠燈顏色。
本發(fā)明與現(xiàn)有技術(shù)相比,通過雙攝像機獲取智能車輛前方車道線、斑馬線、車輛以及紅綠燈等關(guān)鍵道路交通信息,采用改進的檢測算法對車道線、斑馬線進行檢測,并采用5幀循環(huán)檢測提升單攝像機功能,根據(jù)設(shè)定的邏輯規(guī)則判定系統(tǒng)在不同狀態(tài)下需要獲取的特征,邏輯檢測識別相應(yīng)的特征,提高系統(tǒng)的響應(yīng)速度,為智能車輛橫向和縱向控制提供關(guān)鍵信息,給智能車輛在城市道路中正常行駛奠定基礎(chǔ),當遇到緊急情況時,獲取更多的信息進行分析決策,彌補單一攝像機獲取數(shù)據(jù)的不足。
附圖說明:
圖1為本發(fā)明實施例的車輛前方支架和攝像機安裝示意圖。
圖2為本發(fā)明的工作原理示意框圖。
圖3為本發(fā)明實施例車道線對應(yīng)的坐標值與角度值。
圖4為本發(fā)明實施例所述斑馬線(a)及其灰度直方圖(b)。
圖5為本發(fā)明實施例所述斑馬線檢測效果圖。
圖6為本發(fā)明實施例識別前方車輛和紅綠燈的工作流程示意框圖。
圖7為本發(fā)明實施例采用現(xiàn)有的Haar特征訓(xùn)練分類器對車輛樣本Harr-like特征提取圖。
圖8為本發(fā)明實施例的車輛識別效果圖。
圖9為本發(fā)明實施例所述HSV色彩空間圖。
圖10為本發(fā)明實施例的紅綠燈判定流程圖。
具體實施方式:
下面通過實施例并結(jié)合附圖對本發(fā)明作進一步說明。
實施例:
本實施例采用智能車輛環(huán)境感知技術(shù),利用雙攝像機檢測道路交通信息,其具體過程為:
(1)確定兩臺攝像機的安裝高度為1.05m,將視角范圍為30°的兩臺攝像機分別安裝在自主設(shè)計的電動車前方支架橫向距離的1/3和2/3處,如圖1所示,根據(jù)車道線、斑馬線、紅綠燈和前方車輛的位置確定兩臺攝像機的縱橫向安裝位置及角度,安裝在電動車前方支架橫向距離1/3處的第一攝像機1檢測車道線和斑馬線,其光軸線在水平線之下,與水平線夾角為10°;安裝在電動車前方支架橫向距離2/3處的第二攝像機2識別前方車輛和紅綠燈,其光軸線在水平線之上,與水平線夾角為10°;
(2)第一攝像機1檢測4幀車道線再檢測1幀斑馬線,進行5幀循環(huán)檢測;第二攝像機2進行車輛和紅綠燈循環(huán)識別,當?shù)诙z像機2識別出紅綠燈時,第一攝像機1下一幀圖像進行斑馬線的檢測,如果沒有檢測到斑馬線,第二攝像機2再次進行紅綠燈識別,如果兩次都識別出紅綠燈,說明車輛前方處于交叉口;
(3)當?shù)诙z像機2識別出前方車輛時,第一攝像機1只進行車道線的檢測,第二攝像機2不識別紅綠燈,判斷前方車輛的行為,并跟隨車輛運行;
(4)當?shù)谝粩z像機1檢測出斑馬線時,第二攝像機2只進行紅綠燈的識別判定,若第二攝像機2沒有檢測到紅綠燈,則第一攝像機1進行下一幀斑馬線的判定,第二攝像機2進行紅綠燈的判定,如果第一攝像機1檢測出斑馬線,第二攝像機2沒有檢測出紅綠燈表明此時前方是人行橫道;如果第一攝像機1檢測出斑馬線,第二攝像機2識別出紅綠燈,表明前方是交叉口,實現(xiàn)道路交通信息的檢測,如圖2所示。
本實施例所述智能車輛環(huán)境感知技術(shù),運用傳感器融合技術(shù)來獲得車輛周圍環(huán)境的有用信息,傳感器將外界的各種信號轉(zhuǎn)化成計算機能夠識別的電信號,包括環(huán)境感知模塊、分析模塊和控制模塊,環(huán)境感知模塊需要雙攝像機輸入相應(yīng)信息,分析模塊獲取環(huán)境特征,控制模塊模擬駕駛員的行為,緊急情況彌補駕駛員行為的不足。
本實施例第一攝像機1檢測車道線時,采用改進的Hough變換檢測車道線,檢測速度為10幀/秒,一幀圖像檢測出的車道線長度至少為2.5米,完全滿足城市道路實時檢測車道線的需求,具體檢測過程為:
(1)第一攝像機獲取圖像的像素矩陣為m行n列矩陣,定義圖像的左上角為(0,0),并對圖像進行預(yù)處理;
(2)從圖像的m/2行向下逐行掃描,當檢測到白點時(像素值為255)進行計數(shù),將白點坐標存儲在寄存器中,直至掃描到m行;
(3)將直角坐標下檢測出的白點轉(zhuǎn)換到極坐標下,在極坐標系下這些白點都是一條條直線,計算直線在極坐標下通過各個點的數(shù)量,并將它們存放在存儲器中,判斷存儲器中數(shù)據(jù)的最大值和次大值,最大值和次大值就是直角坐標系中經(jīng)過兩條特定直線的白點數(shù)目。如果直線在直角坐標系40°-60°范圍內(nèi),并且白點數(shù)目大于30,在40°-60°內(nèi)擬合出一條左車道線;如果直線在直角坐標系130°-150°范圍內(nèi),并且白點數(shù)目大于30,在130°-150°內(nèi)擬合出一條右車道線;
(4)通過左右車道線角度的判定,得到左右車道線最下方起始點(a,b)和(c,d),并獲得相應(yīng)的角度值分別為α1和α2,(x,y)為道路消失點,如圖3所示;
(5)當左右車道線檢測不完整時:
①α1=0|α2=0時,即沒有檢測出左車道線或右車道線或者左右車道線都沒有檢測出時,若只檢測出一條車道線,控制車輛中心線與左右車道線距離相等,相互平行;當左右車道線都沒有檢測出來時,令車輛停止前進;
②40°<α1<60°或130°<α2<150°時,根據(jù)(3)中檢測出的直線,確定(a,b)和(c,d)的坐標以及左右車道線的角度α1和α2;
(6)分別求出(a,b)和(c,d)的坐標、偏離角度α1和α2,列出左右車道線的直線方程,求出交點坐標(x,y),假設(shè)k1和k2分別為:
y1=k1(x1-a)+b (1)
y2=k2(x2-c)+d (2)
當x1=x2,y1=y(tǒng)2由(1)和(2)可得:
y=k1(x-a)+b (4)
由此能延伸車道線長度,繼而通過檢測判定車道線的彎曲方向。
本實施例檢測斑馬線時通過第一攝像機1實時采集道路周圍視頻圖像,然后對采集的視頻圖像進行分析處理,從而做出預(yù)警和提示,包括角點檢測、角度判定、灰度直方圖判定和斑馬線區(qū)域面積判定四個過程。
首先對圖像進行預(yù)處理,將圖像轉(zhuǎn)換為灰度圖像,基于灰度圖像的角點檢測是將角點定義在圖像的像素點內(nèi),將周圍鄰域內(nèi)的像素點灰度值與該點灰度值進行比較。如果灰度值大于或者小于30,則證明此處存在角點,并獲取角點坐標,如圖4所示。
角度判定是計算兩條直線夾角的余弦值進行矩形的判定,假設(shè)其中三個角點坐標分別為p1(x1,y1),p2(x2,y2),p0(x0,y0)。
d1=x1-x0 (5)
d2=y(tǒng)1-y0 (6)
d3=x2-x0 (7)
d4=y(tǒng)2-y0 (8)
根據(jù)斑馬線在圖像中的特征,設(shè)定cosθ<1.0,計算檢測到矩形的數(shù)量,當矩形數(shù)量大于4個時,證明存在斑馬線,如圖5所示。
對圖像進行灰度處理,根據(jù)圖像的灰度直方圖判定可能存在斑馬線的區(qū)域,根據(jù)所確定的區(qū)域進行矩形面積的判定,設(shè)定圖像中矩形大于1000像素并且小于4000像素為斑馬線矩形區(qū)域。通過以上步驟,最終確定圖像中是否存在斑馬線。
本實施例采用第二攝像機2識別前方車輛和紅綠燈,判斷前方是否有車輛和紅綠燈,為智能車輛的縱向控制提供依據(jù),如圖6所示。前方車輛識別時,采用現(xiàn)有的Haar特征訓(xùn)練分類器進行車輛識別,車輛圖像訓(xùn)練需要經(jīng)過正負樣本的選取、生成樣本文件和訓(xùn)練樣本三步,最后進行車輛目標識別,其中正樣本指只包含待識別的物體的圖片,負樣本指不包含待識別物體的任何圖片,本實施例采用3種類型,共5種Harr-like特征組成特征模板,對車輛目標進行邊緣和紋理特征描述,模板中包括2種邊緣特征、2種線性特征和1種中心特征,如圖7所示。
在某道路上拍攝相應(yīng)視頻,進行車流量及車型分析,確定對正負樣本訓(xùn)練圖像的選擇,調(diào)查統(tǒng)計結(jié)果如表(1)所示:
:表1:車型比例調(diào)查
通過調(diào)查,確定大型車、中型車和小型車的比例在1:5:10左右,對正樣本訓(xùn)練數(shù)量及比例進行調(diào)整,增強系統(tǒng)的識別效率,通過VC++平臺開發(fā)軟件進行前方車輛的動態(tài)識別,并進行準確率的判定,完成前方車輛的識別,檢測效果如圖8(a)、(b)、(c)、(d)所示;在正常城市道路環(huán)境下,光線充足,場景能見度高,車輛輪廓清晰,算法的識別正確率可以達到93.75%。根據(jù)前方車輛在圖像中的大小,判斷車輛的距離,進一步可以通過雷達等其他傳感器輔助進行更精確的距離信息測量;紅綠燈識別時,先獲取紅綠燈圖像,對圖像進行區(qū)域劃分、灰度化和平滑濾波等預(yù)處理后,統(tǒng)計像素顏色特性判斷紅綠燈所在區(qū)域,在紅綠燈區(qū)域內(nèi)具體判斷出紅綠燈的顏色,通過定位紅綠燈位置,將第二攝像機2獲取的圖像由RGB空間轉(zhuǎn)換到HSV空間,通過對H、S、V分量分別進行判斷,得出當前紅綠燈顏色,HSV色彩空間如圖9所示;H、S、V分別表示圖像的色調(diào)、飽和度和亮度。由于受到光照條件、圖像品質(zhì)和圖像背景等因素的影響,需要對各個分量的值進行設(shè)定,最后判斷紅綠燈的顏色,具體檢測流程如圖10所示;根據(jù)現(xiàn)實環(huán)境中的光照條件、圖像品質(zhì)和圖像背景等因素取S>0.2,如果S過低圖像就會是灰色;取0.1<V<0.6,V過低圖像是黑色的,V過高圖像是白色的。根據(jù)紅綠燈的顏色給S取值,取紅色范圍0<S<50,黃色范圍50<S<100,綠色范圍170<S<220。