本發(fā)明屬于汽車自動駕駛技術(shù)領(lǐng)域,涉及一種自動駕駛汽車的自車定位的系統(tǒng)及方法,具體是指一種基于可變網(wǎng)格的圖像特征檢測在自動駕駛中的車輛縱向定位的系統(tǒng)及方法。
背景技術(shù):
智能車輛的自動駕駛系統(tǒng)需要依賴高精度地圖數(shù)據(jù),按照指定的目的地信息,動態(tài)、經(jīng)濟(jì)的完成全局與局部路徑規(guī)劃形成自身導(dǎo)航軌跡,安全、便捷的完成無人車輛的各項控制動作。在這一系統(tǒng)的執(zhí)行過程中,需要實時、準(zhǔn)確的了解車輛自身的高精度定位信息,才能對當(dāng)前行駛狀態(tài)控制做出決策層面上的判斷。
自動駕駛中常規(guī)的定位方式一般為gnss(globalnavigationsatellitesystem)結(jié)合imu(inertialmeasurementunit)組成。gnss在郊外平原地帶能夠獲取到較好的定位精度,但在復(fù)雜的城區(qū)環(huán)境中,信號傳播的多路徑反射效應(yīng)極易造成數(shù)米范圍的定位精度誤差;imu一般采用陀螺儀、多軸加速度傳感器等計量儀器構(gòu)成,實時檢測當(dāng)前自身的姿態(tài)與加速度,根據(jù)imu能夠準(zhǔn)確遞推一定距離內(nèi)的車輛運動信息,但使用imu進(jìn)行航跡推算的過程中會產(chǎn)生誤差積累,隨時間增長定位精度的退化越嚴(yán)重。通過融合與插值gnss與imu數(shù)據(jù),可以達(dá)到較好的高精度定位效果。
然而,在自動駕駛系統(tǒng)中如果僅采用gnss+imu方式完成高精度定位是無法保證在自動決策的執(zhí)行過程中安全、精確的完成控制動作,需要依賴額外的定位方法與傳感器進(jìn)行輔助。一般的,使用lidar(lightdetectionandranging)獲取的激光點云進(jìn)行匹配以完成車輛在局部環(huán)境中的定位,以及使用多攝像機進(jìn)行目標(biāo)檢測與識別、深度計算、運動估計等來完成定位。這兩種分別使用中高成本lidar和低成本多攝像機的方案,與常規(guī)基于高成本gnss+imu方案相互輔助校正誤差,在自動駕駛中能提供高精度定位信息。
現(xiàn)階段基于攝像機的自動駕駛輔助定位方式,通常是計算相機姿態(tài)變換來構(gòu)成視覺里程計,這一方法能夠較準(zhǔn)確的確定出車輛在一定時間范圍內(nèi)的位姿狀態(tài)。但基于雙目攝像機的視覺里程計需要實時進(jìn)行左右目圖像的矯正、配準(zhǔn)和視差圖的計算,并不能以較高頻率輸出,對于1600×1200像素尺寸的圖像進(jìn)行雙目圖像的深度計算幀率小于10fps(framespersecond)。圖像處理幀率較低,依賴攝像機所計算得到的定位信息輸出頻率也較低,與gnss+imu等其他定位信息進(jìn)行融合時,則需要考慮更多的時間同步、線性/非線性插值等問題,影響高精度定位信息的可靠性、實時性、準(zhǔn)確性。能夠達(dá)到實時、適用、魯棒的車道級定位精度的多攝像機圖像處理技術(shù)方案,在智能交通檢測系統(tǒng)與自動駕駛領(lǐng)域中占據(jù)核心的地位。
技術(shù)實現(xiàn)要素:
針對現(xiàn)有技術(shù)的不足,本發(fā)明要解決的技術(shù)問題是提供一種基于可變網(wǎng)格的圖像特征檢測在自動駕駛中的車輛縱向定位的系統(tǒng)及方法,應(yīng)用基于可變網(wǎng)格區(qū)域(攜帶尺度信息)的orb特征提取算法,在車載雙目視覺系統(tǒng)中檢索到特定的前方目標(biāo),并輸出視覺系統(tǒng)到前方目標(biāo)的距離,根據(jù)這一距離以及雙目系統(tǒng)在車輛中的安裝位置,即可與高精度導(dǎo)航中的車輛軌跡進(jìn)行校正,提高自動駕駛中的車輛縱向定位精度。
本發(fā)明所采用的技術(shù)方案如下:
一種基于可變網(wǎng)格的圖像特征檢測在自動駕駛中的車輛縱向定位系統(tǒng),該系統(tǒng)按照功能模塊劃分包括高精度導(dǎo)航系統(tǒng)、雙目攝像機、圖像預(yù)處理器、目標(biāo)檢測器、目標(biāo)跟蹤器和目標(biāo)距離計算器;
所述高精度導(dǎo)航系統(tǒng),用于實時進(jìn)行地圖檢索并根據(jù)車體當(dāng)前位置向目標(biāo)檢測器發(fā)送車體行進(jìn)前方的出現(xiàn)或?qū)⒁霈F(xiàn)的目標(biāo)物的名稱id,并根據(jù)特定目標(biāo)距離對高精度導(dǎo)航進(jìn)行縱向距離矯正;
所述雙目攝像機,包括左目攝像機和右目攝像機,用于實時采集車輛行進(jìn)前方視頻圖像,并輸出給圖像處理器進(jìn)行預(yù)處理;
所述圖像預(yù)處理器,用于根據(jù)雙目攝像機標(biāo)定的內(nèi)外參數(shù)進(jìn)行雙目攝像機采集圖像的畸變矯正、極線約束校正、圖像的灰度化,以及圖像的分發(fā)工作;
所述目標(biāo)檢測器,用于接收到高精度導(dǎo)航系統(tǒng)發(fā)送來的特定目標(biāo)物名稱id,對圖像預(yù)處理器分發(fā)的灰度圖像中左目圖像進(jìn)行基于可變網(wǎng)格的圖像特征匹配工作,并離線生成的目標(biāo)物可變網(wǎng)格特征文件;
所述目標(biāo)跟蹤器,用于根據(jù)圖像預(yù)處理器輸入的圖像以及目標(biāo)檢測器檢測到的特定目標(biāo)物的檢測矩形框,完成基于圖像區(qū)域的跟蹤操作,將特定目標(biāo)區(qū)域圖像及其鄰域部分圖像作為卷積模板,在隨后的圖像幀中判斷整幅輸入的新場景圖像中卷積響應(yīng)最高的區(qū)域,再用最高響應(yīng)區(qū)域更新當(dāng)前卷積模板;并持續(xù)輸出每一幀最高響應(yīng)區(qū)域作為目標(biāo)的跟蹤位置;
所述目標(biāo)距離計算器,用于通過極線幾何約束計算雙目攝像機距離目標(biāo)物的垂直方向上的距離,進(jìn)而得到車體當(dāng)前幀采集時與特定目標(biāo)物的距離。
基于上述系統(tǒng)實現(xiàn)的一種基于可變網(wǎng)格的圖像特征檢測在自動駕駛中的車輛縱向定位方法,包括以下步驟:
s1,在部署過高精度地圖與gnss+imu系統(tǒng)的自動駕駛車輛上,安裝前向雙目攝像機,并對雙目攝像機進(jìn)行內(nèi)外參數(shù)的標(biāo)定;
s2,根據(jù)高精度地圖數(shù)據(jù)庫中的場景中特定目標(biāo)物,結(jié)合在實際道路中運行時攝像機采集的視頻幀,提取包含特定目標(biāo)區(qū)域的多幀圖像,構(gòu)成目標(biāo)物提取圖像幀序列,進(jìn)行目標(biāo)物特征提取,制作基于可變網(wǎng)格的特征描述文件;
s3,在自動駕駛車輛啟動準(zhǔn)備階段,依次完成高精度導(dǎo)航系統(tǒng)、雙目攝像機、圖像預(yù)處理器、目標(biāo)檢測器、目標(biāo)跟蹤器、目標(biāo)距離計算器各個模塊的初始化工作;
s4,在自動駕駛線上運行階段,整套系統(tǒng)需要高精度導(dǎo)航進(jìn)行檢測過程的觸發(fā),需要輸入系統(tǒng)的數(shù)據(jù)源是高精度地圖中目標(biāo)物的名稱id、導(dǎo)航中計算出的大概距離,以及雙目攝像機經(jīng)過預(yù)處理操作輸入的圖像幀序列,按照“檢測”-“跟蹤”-“距離輸出”的流程進(jìn)行場景中特定目標(biāo)物的距離輸出;
s5,通過攝像機計算輸出的距離,輸入至高精度導(dǎo)航模塊,輔助執(zhí)行縱向校正過程。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點:
1.對于自動駕駛面臨的動態(tài)復(fù)雜道路條件,利用低成本視覺傳感器,可以有效地校正gnss+imu定位系統(tǒng)縱向誤差,提高自車定位精度;
2.降低了傳統(tǒng)雙目視覺系統(tǒng)中運算復(fù)雜度,使視覺傳感器部分的定位達(dá)到系統(tǒng)實時性的輸出頻率要求;
3.在實際目標(biāo)檢測與跟蹤過程中,較多計算使用圖像卷積操作,便于本發(fā)明方法工程應(yīng)用中在嵌入式+gpu系統(tǒng)中的移植與硬件加速。
附圖說明
圖1是根據(jù)本發(fā)明內(nèi)容實施的自動駕駛中一種基于可變網(wǎng)格的圖像特征檢測的縱向定位系統(tǒng)結(jié)構(gòu)圖及方法流程示意圖;
圖2是對應(yīng)本發(fā)明內(nèi)容步驟2的人工標(biāo)記特定目標(biāo)物所在區(qū)域的結(jié)果示意圖;
圖3是本發(fā)明所述的可變網(wǎng)格劃分結(jié)果示意圖,該網(wǎng)格劃分方法采用的是步驟42所述的二分劃分方法;
圖4是特征匹配用于目標(biāo)物檢測與定位的示意圖,其中左側(cè)為待檢測的目標(biāo)物,右側(cè)為測試場景,通過特征點檢測與匹配過程,能夠得到兩幅圖中的特征點對應(yīng)關(guān)系,計算其對應(yīng)關(guān)系的單應(yīng)性映射,即可在測試場景中得到目標(biāo)物的檢測結(jié)果與目標(biāo)可能所在的檢測區(qū)域;
圖5描述的是左右目攝像機的圖像輸入目標(biāo)檢測器并成功完成目標(biāo)物的檢測與提取的運行結(jié)果示意圖;
圖6描繪了漸進(jìn)度的判斷方式:外包矩形abcd(圖像外邊緣)以及內(nèi)部對特定目標(biāo)物檢測框矩形mnop,內(nèi)部矩形框mnop四邊分別距離外包矩形的垂直距離為dis_t、dis_r、dis_b以及dis_l;
圖7描述的是按照基于可變網(wǎng)格的圖像特征匹配算法的0,1,2序列號進(jìn)行匹配的結(jié)果圖;左側(cè)為不同序列號檢測模板的重繪圖,右側(cè)為實際攝像機采集的場景圖像幀,從左側(cè)至右側(cè)連接的線段為繪制的對應(yīng)特征匹配點連線;
圖8為連續(xù)的20幀圖像跟蹤序列;左上角圖像為輸入的第一幀圖像以及待跟蹤的目標(biāo)矩形框,其余圖像為連續(xù)幀的跟蹤結(jié)果。
具體實施方式
為了使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明的具體實施方式做詳細(xì)的說明。
本發(fā)明提供了一種基于可變網(wǎng)格的圖像特征檢測算法,通過在自動駕駛系統(tǒng)中安裝攝像機所采集到的車輛周邊影像,通過輸入高精度導(dǎo)航系統(tǒng)中給出的關(guān)于特定場景目標(biāo)信息與高精度導(dǎo)航中道路計算的目標(biāo)距離,通過應(yīng)用一種基于可變網(wǎng)格區(qū)域大小(攜帶尺度信息)的特征提取算法,可以在車載雙目視覺系統(tǒng)中檢索到特定的前方目標(biāo),并輸出視覺系統(tǒng)到前方目標(biāo)的距離。根據(jù)這一距離信息以及雙目系統(tǒng)在車輛中的安裝的物理位置,即可與高精度導(dǎo)航中的車輛軌跡進(jìn)行校正,提高自動駕駛中的車輛縱向定位精度。
上述高精度地圖中的特定場景目標(biāo),指的是各種交通信息指示牌等固定的場景物體,這些特定目標(biāo)一般存在于高精度地圖數(shù)據(jù)庫內(nèi),因此能夠在自動駕駛的導(dǎo)航系統(tǒng)中被提前約定數(shù)據(jù)關(guān)系,即一系列屬于某一特定目標(biāo)的可變網(wǎng)格特征描述,與高精度地圖數(shù)據(jù)中對應(yīng)目標(biāo)的名稱。在自動駕駛車輛運動過程中,高精度導(dǎo)航系統(tǒng)預(yù)判前方可能出現(xiàn)到車載攝像機視場內(nèi)的目標(biāo)物名稱,將這一信息發(fā)送至目標(biāo)檢測模塊調(diào)用數(shù)據(jù)庫中預(yù)制的可變網(wǎng)格特征文件,用以完成特定目標(biāo)的檢測與匹配。
本發(fā)明在自動駕駛的縱向輔助定位上提供一種基于可變網(wǎng)格的圖像特征檢測與提取方法,具體步驟如下:
s1,在部署過高精度地圖與gnss+imu系統(tǒng)的自動駕駛車輛上,安裝前向雙目攝像機,并對雙目攝像機進(jìn)行內(nèi)外參數(shù)的標(biāo)定;
這一步驟中,需要詳細(xì)記錄的設(shè)備屬性與參數(shù)有:左目攝像機相對于車身坐標(biāo)系的安裝位置信息,左目攝像機內(nèi)參m1、d1,右目攝像機內(nèi)參m2、d2,和左右目攝像機的外參r、t,其中m1與m2分別表示兩個攝像機的焦距fx、fy和主點位置cx、cy,形式為3*3矩陣形式:
通過雙目攝像機的內(nèi)參數(shù)可以校正攝像機成像畸變,以及在進(jìn)行視差計算、深度計算中應(yīng)用左右目攝像機外參。一方面可以通過內(nèi)參數(shù)校正由于鏡頭透鏡安裝引入的切向與徑向畸變,使成像結(jié)果中類似平整直線邊緣退化成弧線邊緣的畸變誤差被盡可能消除;另一方面,右目相機像平面中一點(x′,y′)與場景中的3d點(x,y,z)之間的投影關(guān)系可以通過相機內(nèi)、外參數(shù)給出:
s2,根據(jù)高精度地圖數(shù)據(jù)庫中的場景中特定目標(biāo)物,結(jié)合在實際道路中運行時攝像機采集的視頻幀,提取包含特定目標(biāo)區(qū)域的多幀圖像,構(gòu)成目標(biāo)物提取圖像幀序列,進(jìn)行目標(biāo)物特征提取,制作基于可變網(wǎng)格的特征描述文件;
其中,進(jìn)行目標(biāo)物特征提取的圖像,源于左目攝像機采集的視頻幀。對于特定目標(biāo)物進(jìn)行特征提取的視頻幀,可按照粗略估算的近、中、遠(yuǎn)采集3幀圖像構(gòu)成目標(biāo)物提取序列。特別的,本發(fā)明支持更多幀目標(biāo)物圖像進(jìn)行特征提取,但實際應(yīng)用中出于對特征匹配效率的考慮,不大于3幀視頻幀進(jìn)行特征提取為優(yōu)。
這一步驟中,可根據(jù)特定目標(biāo)檢測算法和/或手動標(biāo)記的方法,在圖像幀中檢測和/或框選出場景中的特定目標(biāo)物,特征描述文件中需要記錄此時框選的網(wǎng)格尺寸。距離目標(biāo)物不同距離時所采集的圖像序列,網(wǎng)格尺寸能夠反饋采集時攝像機(自動駕駛車輛)距離目標(biāo)物的距離信息,以及網(wǎng)格內(nèi)的目標(biāo)物在圖像中所呈現(xiàn)的細(xì)節(jié)、特征點數(shù)列,即含有豐富的尺度信息。
特別的,本發(fā)明在進(jìn)行基于可變網(wǎng)格的圖像特征提取的計算過程中,使用的特征描述算法為經(jīng)典orb(orientedbrief)特征描述算法。進(jìn)一步,經(jīng)序列化后存儲的目標(biāo)物可變網(wǎng)格特征文件的存儲內(nèi)容定義如下:
a)高精度地圖數(shù)據(jù)庫中,可檢索的目標(biāo)物的名稱id;一般的,為一串?dāng)?shù)字編號;
b)根據(jù)圖像采集時距離目標(biāo)物的遠(yuǎn)近程度,為采集到的圖像幀序列分配的序列號;從0開始分配序列號。當(dāng)前目標(biāo)物采集3幀,則對應(yīng)0,1,2的圖像序列編號。
c)在對應(yīng)不同序列號的圖像幀中,特定目標(biāo)物網(wǎng)格中的關(guān)鍵特征點序列,所述的關(guān)鍵特征點序列指的是多幀之間可以被匹配的特征點子集,即在圖像幀序列中表示同一點的特征點所組成的序列;
d)與特征點序列相對應(yīng)的特征點的orb特征描述;
e)存儲圖像中特定目標(biāo)物的檢索網(wǎng)格相關(guān)信息,一般的,包括該網(wǎng)格的左上角圖像坐標(biāo)與網(wǎng)格在圖像中的寬與高;對于人工標(biāo)記的方法,網(wǎng)格即對應(yīng)該幀圖像中目標(biāo)物的最大外包矩形;對于特定的目標(biāo)檢測算法而言,網(wǎng)格對應(yīng)了當(dāng)前幀運行目標(biāo)檢測算法時獲取的目標(biāo)物檢測定位輸出的矩形窗口;
f)根據(jù)當(dāng)前傳統(tǒng)的gnss+imu導(dǎo)航系統(tǒng)所得到的采集時與目標(biāo)物之間的距離信息。
進(jìn)一步,可以離線的完成基于可變網(wǎng)格的圖像特征的提取,即制作了與高精度地圖數(shù)據(jù)中特定目標(biāo)物相關(guān)的特征模板庫文件。
s3,在自動駕駛車輛啟動準(zhǔn)備階段,依次完成各個模塊的初始化工作;
按照本系統(tǒng)的功能模塊劃分,需要依次完成高精度導(dǎo)航系統(tǒng)、雙目攝像機、圖像預(yù)處理器、目標(biāo)檢測器、目標(biāo)跟蹤器、目標(biāo)距離計算器的各個模塊初始化任務(wù)。
圖像預(yù)處理器需要完成雙目攝像機采集圖像的畸變矯正、極線約束校正、圖像的灰度化,以及圖像的分發(fā)工作,因此在初始化時需要依賴步驟1中攝像機標(biāo)定的內(nèi)、外參數(shù)。進(jìn)一步,彩色圖像的灰度化需要通過0.299*b+0.587*g+0.114*r完成,b、g、r分別代表每一像素點的藍(lán)色、綠色、紅色三通道的像素強度。
目標(biāo)檢測器需要完成的任務(wù)是,在接收到高精度導(dǎo)航系統(tǒng)發(fā)送來的特定目標(biāo)物名稱,對圖像預(yù)處理器分發(fā)的灰度圖像中左目圖像進(jìn)行基于可變網(wǎng)格的圖像特征匹配工作。因此,目標(biāo)檢測器需要初始化步驟2中離線生成的特征文件。
目標(biāo)跟蹤器會完成基于圖像區(qū)域的跟蹤操作,由于該模塊使用了通用離散傅里葉變換的運算庫fftw(fastestfouriertransforminthewest),需要在初始化階段完成fftw的預(yù)設(shè)參數(shù)讀入。
目標(biāo)距離計算器是執(zhí)行基于雙目攝像機的深度運算的核心模塊,初始化依賴于雙目攝像機的內(nèi)外參數(shù)。
s4、在自動駕駛線上運行階段,整套系統(tǒng)需要高精度導(dǎo)航進(jìn)行檢測過程的觸發(fā),需要輸入系統(tǒng)的數(shù)據(jù)源是高精度地圖中目標(biāo)物的名稱、導(dǎo)航中計算出的大概距離,以及雙目攝像機經(jīng)過預(yù)處理操作輸入的圖像幀序列,按照‘檢測’——‘跟蹤’——‘距離輸出’的流程進(jìn)行場景中特定目標(biāo)物的距離輸出。
進(jìn)一步,所述步驟4包括以下子步驟:
s41,利用高精度導(dǎo)航系統(tǒng)發(fā)送進(jìn)入地圖檢索范圍的目標(biāo)物名稱id,將在步驟s3中初始化好的目標(biāo)物對應(yīng)的特征描述文件預(yù)讀取至目標(biāo)檢測器;特別的,需要預(yù)讀取出對應(yīng)的網(wǎng)格相關(guān)信息與采集時距離信息,即步驟2中存儲內(nèi)容定義e與定義f。
s42,利用高精度導(dǎo)航系統(tǒng)觸發(fā)時估計的目標(biāo)物距離值,與步驟s41中預(yù)讀取的目標(biāo)物特征描述文件內(nèi)容,判斷出此時可變網(wǎng)格使用的網(wǎng)格尺寸信息,并采用基于二分查找的劃分方法,使用該網(wǎng)格尺寸對圖像預(yù)處理器輸出的左目攝像機采集的圖像進(jìn)行劃分,得到當(dāng)前可變網(wǎng)格;計算過程如下:
(1/2)(n+1)*lenglobal<=lenblock<=(1/2)n*lenglobal
式中,n是需要根據(jù)迭代計算出的二分查找次數(shù),即均分次數(shù);lenglobal為經(jīng)過預(yù)處理的攝像機圖像的長或?qū)?;lenblock為當(dāng)前的可變網(wǎng)格使用的尺度信息中,網(wǎng)格尺寸的長或?qū)挘煌ㄟ^從n=1開始迭代運算直到計算出滿足上式的n值;需要注意的是,這里分別按照圖像的y、x方向計算基于圖像的長、寬所對應(yīng)的ny和nx;分別在左目攝像機經(jīng)預(yù)處理后的輸入圖像上,平均劃分長為ny份、劃分寬為nx份,所劃分的圖像網(wǎng)格即為當(dāng)前可變網(wǎng)格。
s43,依次遍歷上一步驟得到的基于可變網(wǎng)格劃分后的圖像區(qū)域,對每一區(qū)域進(jìn)行orb特征提取,并完成與目標(biāo)物特征描述文件中的關(guān)鍵特征點序列及特征點的orb特征描述(即步驟41中載入的存儲內(nèi)容定義c、定義d)的檢測與匹配;若匹配成功,則對圖像預(yù)處理器輸出的右目攝像機采集的圖像進(jìn)行相同的檢測與匹配并跳轉(zhuǎn)至步驟s44;否則圖像預(yù)處理器讀入下一幀的左目圖像,重新執(zhí)行該步驟;
進(jìn)一步的,匹配過程具體包括以下內(nèi)容:首先,通過orb特征點描述的差異距離來判斷是否兩個orb特征點為相似,對每一區(qū)域的特征點與步驟s41載入的模板特征點之間首先完成一次特征點匹配,得到一個從“檢測區(qū)域”到“模板區(qū)域”的特征點匹配對的序列,再反向的從“模板區(qū)域”到“檢測區(qū)域”完成同樣的操作得到交叉驗證的特征點匹配對的序列;所述檢測區(qū)域指左目相機采集到的特定目標(biāo)物所在區(qū)域,所述模板區(qū)域指從高精度地圖數(shù)據(jù)庫中的特征目標(biāo)物所在區(qū)域;其次從兩組匹配對序列中得到“檢測區(qū)域”與“模板區(qū)域”之間存在的特征點的映射關(guān)系,并將正向映射與反向映射之間存在的可逆變換,定義為重映射關(guān)系;然后檢測當(dāng)前匹配過程中,是否特征點對的數(shù)量達(dá)到可求取映射矩陣的閾值,一旦超過4個特征點對那么即可計算映射矩陣,再進(jìn)行重映射關(guān)系檢測,如果滿足,則本次匹配過程成功,否則失敗。
進(jìn)一步的,若匹配過程一直失敗,直到高精度導(dǎo)航組件從地圖數(shù)據(jù)中檢索到當(dāng)前車輛已離開了特定目標(biāo)物的可視區(qū)域,則宣告當(dāng)前一次檢測任務(wù)失敗,本次計算流程不再繼續(xù)進(jìn)行下去。
s44,分別將成功完成目標(biāo)物檢測的左、右目圖像幀與左右目圖像檢測矩形框作為參數(shù),完成對左目圖像、右目圖像的特定區(qū)域的跟蹤器,跟蹤器初始化過程需要傳入的參數(shù)是上一步驟成功獲取到的左、右目檢測矩形框以及對應(yīng)的左右目圖像,一旦跟蹤器初始化成功,后續(xù)過程中持續(xù)的將圖像預(yù)處理器輸出的左右目圖像幀分別輸入至對應(yīng)的目標(biāo)跟蹤器,目標(biāo)跟蹤器將特定目標(biāo)區(qū)域圖像及其鄰域部分圖像作為卷積模板,在隨后的圖像幀中判斷整幅輸入的新場景圖像中卷積響應(yīng)最高的區(qū)域,再用最高響應(yīng)區(qū)域更新當(dāng)前卷積模板;所述特定目標(biāo)區(qū)域圖像即為特定目標(biāo)物的檢測矩形框區(qū)域;
目標(biāo)跟蹤器持續(xù)輸出每一幀最高響應(yīng)區(qū)域作為目標(biāo)的跟蹤位置;
進(jìn)一步的,判斷跟蹤位置與攝像機采集的圖像中邊緣的接近程度,使用[0,1]區(qū)間的漸進(jìn)度量化。漸進(jìn)度的計算方法是分別計算當(dāng)先的特定目標(biāo)跟蹤位置的外包矩形4頂點分別到圖像外部4個邊緣的距離最小值dbmindis,根據(jù)場景圖像的高h(yuǎn)scn與寬wscn,可以計算漸進(jìn)度矩形(當(dāng)前幀圖像中目標(biāo)跟蹤的外包矩形框距離場景圖像邊緣的最短距離,作為一個虛擬的、名為漸進(jìn)度矩形的每一條邊與場景圖像邊緣的距離)與場景圖像矩形面積的比值((hscn-2*dbmindis)*(wscn-2*dbmindis))/(hscn*wscn)。當(dāng)比值越趨近于1則跟蹤位置越接近于圖像邊緣。從成像意義上描述,當(dāng)車輛即將從目標(biāo)物旁行駛經(jīng)過時,從攝像機所采集的圖像上看,目標(biāo)物的圖像也是即將從圖像中心附近移動到圖像邊緣,然后越過圖像邊緣(超出攝像機視場角)直到從圖像邊緣消失。
從漸進(jìn)度的計算輸出上看,可以很好的反映出此時攝像機是否與目標(biāo)在合適的距離,以及是否需要根據(jù)漸進(jìn)度作為步驟45以及后續(xù)步驟的截止條件。一般的,將設(shè)置漸進(jìn)度閾值為0.8~0.9,大于這個閾值就認(rèn)為目標(biāo)過于接近圖像的邊緣處,可能有部分區(qū)域已經(jīng)超出圖像邊緣無法完成左、右目直接的圖像匹配過程。
s45,判斷跟蹤位置與攝像機采集的圖像中邊緣的接近程度,即漸進(jìn)度,并設(shè)置漸進(jìn)度閾值為0.9,若左、右目所跟蹤到的目標(biāo)外包矩形的圖像邊緣漸進(jìn)度都不大于0.9,則進(jìn)入目標(biāo)距離計算器,通過極線幾何約束來計算雙目攝像機距離目標(biāo)物的垂直方向上的距離,進(jìn)而得到車體當(dāng)前幀采集時與特定目標(biāo)物的距離;否則,認(rèn)為此時左、右目攝像機已經(jīng)無法完整的采集到特定跟蹤目標(biāo)物。
進(jìn)一步,進(jìn)入目標(biāo)距離計算器的左右目圖像,以及相應(yīng)的跟蹤矩形框區(qū)域,能夠通過計算極線幾何計算出對應(yīng)目標(biāo)物的景深,也就是得到了在當(dāng)前圖像幀采集時,雙目攝像機距離目標(biāo)物的垂直方向上的距離,這一距離可以根據(jù)左目攝像機在車輛坐標(biāo)系下的位置得到車體當(dāng)前圖像幀采集時對特定目標(biāo)物的距離。
步驟5、通過攝像機端計算輸出的距離,輸入至高精度導(dǎo)航模塊,輔助執(zhí)行縱向校正過程。
結(jié)合附圖1,對本發(fā)明做進(jìn)一步說明:
首先,在部署了本發(fā)明的軟硬件系統(tǒng)的自動駕駛車輛上,啟動了雙目攝像機系統(tǒng),初始化了圖像預(yù)處理器,經(jīng)過預(yù)處理的左、右目圖像會被相機畸變校正、雙目極線校正、裁剪以及縮放。處理后的左、右目圖像會按需求被分發(fā)至目標(biāo)檢測器、目標(biāo)跟蹤器、目標(biāo)距離計算器。
其次,使用預(yù)制的可變網(wǎng)格離線特征文件初始化目標(biāo)檢測器,使用fftw配置文件初始化目標(biāo)跟蹤器,使用雙目攝像機內(nèi)外參數(shù)初始化目標(biāo)距離計算器。待初始化成功后,整套系統(tǒng)可上線運行。
第三,在自動駕駛車輛行駛過程中,由高精度導(dǎo)航系統(tǒng)發(fā)送“需要前方特定目標(biāo)檢測”指令至目標(biāo)檢測器。目標(biāo)檢測器會按照此時通過導(dǎo)航系統(tǒng)計算出目標(biāo)物距離來調(diào)用不同的目標(biāo)物序列號(對應(yīng)特征文件存儲格式b項),如說明書附圖7所示,從上至下反映了按照基于可變網(wǎng)格的圖像特征匹配算法的0,1,2序列號進(jìn)行匹配的結(jié)果圖,左側(cè)為不同序列號檢測模板的重繪圖,右側(cè)為實際攝像機采集的場景圖像幀,從左側(cè)至右側(cè)連接的線段為繪制的對應(yīng)特征匹配點連線。
第四,待左目檢測成功后,對右目圖像進(jìn)行相同的操作步驟。如果右目依舊檢測成功,則將進(jìn)入目標(biāo)跟蹤器的操作環(huán)境。在圖8的連續(xù)20幀圖像跟蹤序列中描述了這一過程的實例,圖8左上角圖像為輸入的第一幀圖像以及待跟蹤的目標(biāo)矩形框,其余圖像為連續(xù)幀的跟蹤結(jié)果。左、右目圖像同時輸入目標(biāo)跟蹤器,并得到跟蹤的結(jié)果。
第五,將當(dāng)前左、右目圖像幀的跟蹤結(jié)果與經(jīng)過圖像預(yù)處理器分發(fā)的左、右目圖像輸入目標(biāo)距離計算器,得到輸出的距離值。一般的,如果此步驟返回了失敗標(biāo)示,則需要檢測當(dāng)前左右目圖像中是否包含特定檢測目標(biāo)物,即再次調(diào)用目標(biāo)檢測器查看返回值,用以判斷是否當(dāng)前目標(biāo)物脫離了攝像機的可視范圍、是否本次特定目標(biāo)檢測、跟蹤、距離輸出的處理流程完結(jié)。
第六,上一步驟中輸出的距離計算結(jié)果,以及對應(yīng)的采集攝像機左、右目圖像的系統(tǒng)時間戳,一并返回至高精度導(dǎo)航模塊,直接或間接校正高精度導(dǎo)航對應(yīng)系統(tǒng)時間戳的縱向車輛位置。
至此,本發(fā)明的實施例結(jié)束,即完成了一次自動駕駛中基于可變網(wǎng)格的圖像特征檢測在車輛縱向定位上的應(yīng)用實例。
在本說明書的描述中,術(shù)語“一個實施例”等的描述意指結(jié)合該實施例或示例描述的具體特征、結(jié)構(gòu)、材料或特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術(shù)語的示意性表述不一定指的是相同的實施例或?qū)嵗?。而且,描述的具體特征、結(jié)構(gòu)、材料或特點可以在任何的一個或多個實施例或示例中以合適的方式結(jié)合。
說明書中未闡述的部分均為現(xiàn)有技術(shù)或公知常識。本實施例僅用于說明該發(fā)明,而不用于限制本發(fā)明的范圍,本領(lǐng)域技術(shù)人員對于本發(fā)明所做的等價置換等修改均認(rèn)為是落入該發(fā)明權(quán)利要求書所保護(hù)范圍內(nèi)。