專利名稱:基于立體視覺(jué)和激光的車輛輪距測(cè)量方法
技術(shù)領(lǐng)域:
本發(fā)明屬于視覺(jué)測(cè)量技術(shù)領(lǐng)域,尤其涉及一種基于立體視覺(jué)和激光的車輛輪距測(cè)量方法。
背景技術(shù):
國(guó)標(biāo)《汽車和掛車的術(shù)語(yǔ)及其定義車輛尺寸》(GB/T 3730.3-1992)輪距的定義為,假設(shè)A和B兩點(diǎn)為通過(guò)同一軸上兩端車輪軸線的車輛支承平面W的垂面同車輪中心平面的交線A與車輛支承平面W的交點(diǎn),則A和B兩點(diǎn)之間的距離就是車輛輪距。其中車輛支承平面W是用于支承車輪的平坦、堅(jiān)實(shí)的水平面。車輛輪距示意圖如圖1所示,圖中L即表示車輛的輪距。
目前,車輛輪距測(cè)量的方法主要分為3種類別。第一種方法就是采用人工手動(dòng)測(cè)量的方法,在輪胎上涂抹黑色染料,然后在白紙上行使一段距離,然后根據(jù)留在白紙上的輪胎黑色印記分別測(cè)量左右輪胎的中心線,然后人工拉卷尺進(jìn)行測(cè)量。這種方法顯然費(fèi)工費(fèi)力,而且測(cè)量精度低,且重復(fù)性精度不高。第二種方法是采用專用車輛四輪定位裝置進(jìn)行測(cè)量,由于目前國(guó)內(nèi)外很多專業(yè)的四輪定位儀器都提供了車輛輪距測(cè)量的功能,因此,采用專用四輪定位裝置即可較高精度獲取車輛軸距。然而采用車輛四輪定位裝置進(jìn)行輪距測(cè)量,需要一套復(fù)雜的測(cè)量機(jī)構(gòu),每次測(cè)量都要對(duì)測(cè)量?jī)x器進(jìn)行安裝,測(cè)量過(guò)程復(fù)雜且自動(dòng)化程度不高。第三種利用激光發(fā)射接收的原理進(jìn)行輪距測(cè)量,該方法的基本原理就是利用車輛左前輪和右前輪到達(dá)不同激光器之間的時(shí)間差來(lái)計(jì)算車輛的輪距。該方法需要額外的傳感器來(lái)測(cè)量車輛行駛的速度,時(shí)間,還要事先標(biāo)定傳感器和車輛之間的角度,因此測(cè)量結(jié)構(gòu)較為復(fù)雜,最終測(cè)量結(jié)構(gòu)收到很多其他因素影響。此外,該方法的測(cè)量原理決定了最終獲得的車輛輪距精度較低,且不同類型輪胎對(duì)其測(cè)量精度有較大影響。
因此,研究一種自動(dòng)化程度高,測(cè)量準(zhǔn)確的車輛輪距參數(shù)測(cè)量系統(tǒng),對(duì)提高車輛檢測(cè)手段、促進(jìn)高性能車輛的研制、縮短國(guó)內(nèi)外差距具有積極的影響。
發(fā)明內(nèi)容
本發(fā)明提供一種基于立體視覺(jué)和激光的車輛輪距測(cè)量方法,本發(fā)明具有測(cè)量精度高,測(cè)量自動(dòng)化程度高以及測(cè)量過(guò)程簡(jiǎn)單方便等優(yōu)點(diǎn)。
本發(fā)明采用如下技術(shù)方案一種基于立體視覺(jué)和激光的車輛輪距測(cè)量方法,采用立體視覺(jué)激光測(cè)量系統(tǒng)獲取測(cè)量用參數(shù),該立體視覺(jué)激光測(cè)量系統(tǒng)包括用于拍攝車輛的左車輪外側(cè)區(qū)域和右車輪內(nèi)側(cè)區(qū)域的由第一相機(jī)(1)和第二相機(jī)(2)組成的相機(jī)單元、用于拍攝輛的右車輪外側(cè)區(qū)域和左車輪內(nèi)側(cè)區(qū)域的由第三相機(jī)(3)和第四相機(jī)(4)組成的另一相機(jī)單元及激光器,再用立體靶標(biāo)對(duì)上述4臺(tái)相機(jī)進(jìn)行內(nèi)、外參數(shù)標(biāo)定,其特征在于步驟1用平面擬合的方法得到車輛支承平面W的平面方程參數(shù)(A0,B0,C0,D0),并由此得到車輛支承平面W的平面方程A0X+B0Y+C0Z+D0=0。
步驟2用胎冠切點(diǎn)測(cè)量方法獲取車輪外側(cè)胎冠上處于不同位置的3個(gè)及以上數(shù)量的切點(diǎn),記為pi,上述胎冠切點(diǎn)測(cè)量方法為激光器以垂直輪胎外側(cè)面的方向,向車輪外側(cè)胎冠上投射一條徑向激光條紋,用一組相機(jī)單元中的相機(jī)分別拍攝該條徑向激光條紋,并分別保存彩色圖像,利用圖像處理算法,從圖像中提取各自的徑向激光條紋,該圖像處理算法采用1)從圖像中提取可能含有激光條紋目標(biāo)區(qū)域的圖像,對(duì)該可能含有激光條紋目標(biāo)區(qū)域的圖像進(jìn)行二值化處理,得到二值化圖像。
2)在二值化圖像中,找出一個(gè)目標(biāo)像素,并對(duì)其標(biāo)記,再將其置于先入先出的堆棧中。
3)從先入先出的堆棧中取出一個(gè)目標(biāo)像素,在二值化圖像中的該目標(biāo)像素周圍5×5鄰域中,再次尋找未標(biāo)記的目標(biāo)像素,對(duì)此次找出的目標(biāo)像素進(jìn)行標(biāo)記,并將其置于先入先出的堆棧中。
4)按步驟3)所述,遍歷先入先出堆棧中的各個(gè)目標(biāo)像素。
5)對(duì)步驟4)所得的目標(biāo)像素進(jìn)行噪聲判斷,將總數(shù)量小于閾值T的步驟4)所得的目標(biāo)像素作為噪聲并將其顏色改為背景色;反之,將步驟4)所得的目標(biāo)像素作為一類可能的激光條紋目標(biāo)上的點(diǎn),予以保存,并將其顏色改為背景色,上述閾值T=150。
6)重復(fù)步驟2)~步驟5),得到各類可能的激光條紋目標(biāo)上的點(diǎn),并分別予以保存。
7)分別利用各類可能的激光條紋目標(biāo)上的點(diǎn),進(jìn)行二次曲線擬合,該二次曲線方程形式為ax2+bx+c=y(tǒng),通過(guò)SVD分解(奇異值分解),得到曲線擬合參數(shù)a、b、c。計(jì)算由各類可能的激光條紋目標(biāo)上的點(diǎn)擬合得到的二次曲線的平均曲線擬合誤差erri,erri=(Σj=1n|aixij2+bixij+ci-yij|)/n]]>其中i為可能的激光條紋目標(biāo)的序號(hào),j為可能的激光條紋目標(biāo)上的點(diǎn)的序號(hào),ai,bi,ci表示由各類可能的激光條紋目標(biāo)上的點(diǎn)擬合得到的二次曲線參數(shù),xij,yij表示各類可能的激光條紋目標(biāo)上的點(diǎn)的坐標(biāo)。
8)將最小平均曲線擬合誤差erri對(duì)應(yīng)的一類點(diǎn)所在的目標(biāo)作為激光條紋目標(biāo)區(qū)域,再在激光條紋目標(biāo)區(qū)域內(nèi)進(jìn)行條紋細(xì)化和短枝處理,即可獲取激光條紋。
此后,根據(jù)立體視覺(jué)中的極線幾何約束,左右互對(duì)應(yīng)約束對(duì)圖像中提取后的激光條紋上點(diǎn)進(jìn)行匹配,并且對(duì)激光條紋上的點(diǎn)進(jìn)行三維重建,得到激光條紋上的空間點(diǎn)的三維坐標(biāo),利用激光條紋上的空間點(diǎn)擬合得到激光條紋所在空間平面S,再將激光條紋上的空間點(diǎn)Pi向擬合平面S投影,利用直線參數(shù)方程計(jì)算得到投影點(diǎn)P’i。建立一個(gè)新坐標(biāo)系O’X’Y’Z’,該坐標(biāo)系以擬合平面S為O’X’Y’平面,以與擬合平面S垂直的平面P1為O’X’Z’平面,以與擬合平面S以及平面P1都垂直的平面P2為O’Y’Z’平面,對(duì)投影點(diǎn)P’i進(jìn)行坐標(biāo)變換,得到投影點(diǎn)P’i在新坐標(biāo)系O’X’Y’Z’下相應(yīng)點(diǎn)Q’i的坐標(biāo)為(xi’,yi’,0),該相應(yīng)點(diǎn)Q’i在O’X’Y’平面坐標(biāo)系下的平面坐標(biāo)則為(xi’,yi’),再用上述相應(yīng)點(diǎn)Q’i(xi’,yi’)進(jìn)行平面三次曲線的擬合,該三次曲線方程為y=a1x3+b1x2+c1x+d1經(jīng)求導(dǎo)、計(jì)算后,得到O’X’Y’平面中的擬合三次曲線極值點(diǎn)坐標(biāo)(x0’,y0’),最后通過(guò)坐標(biāo)變化將新坐標(biāo)系O’X’Y’Z’下極值點(diǎn)坐標(biāo)(x0’,y0’,0)轉(zhuǎn)換為在世界坐標(biāo)系OXYZ下的坐標(biāo)(X0’,Y0’,Z0’),并將(X0’,Y0’,Z0’)對(duì)應(yīng)的點(diǎn)作為胎冠上激光條紋最外側(cè)點(diǎn),該胎冠上激光條紋最外側(cè)點(diǎn)為輪胎胎冠的切點(diǎn),再根據(jù)車輪外側(cè)胎冠上處于不同位置的3個(gè)及以上的切點(diǎn),擬合車輪外側(cè)切平面P,步驟3用步驟2所述胎冠切點(diǎn)測(cè)量方法獲得車輪內(nèi)側(cè)胎冠上的一個(gè)切點(diǎn)p1,再向車輪外側(cè)切平面P投影,得到該切點(diǎn)p1的投影點(diǎn)p2,求取p1與p2的中點(diǎn)p3,并將該中點(diǎn)p3作為輪胎中心面上的一點(diǎn),將輪胎中心面作為車輪外側(cè)切平面的平行面,利用空間幾何關(guān)系,得到輪胎中心面的平面C1的方程。
步驟4求取輪胎中心面的平面C1與車輛支承平面W的左交線e1;重復(fù)步驟2~4,得到另一車輪的輪胎中心面的平面C2與車輛支承平面W的右交線e2;最后,計(jì)算左交線e1與右交線e2之間的距離,并以此距離作為車輛輪距。
與現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)點(diǎn)(1)本發(fā)明采用數(shù)碼相機(jī)作為拍攝工具,利用其高像素和高分辨率的特點(diǎn),有效增加了視野,從而從硬件上保證了整個(gè)測(cè)量系統(tǒng)的高精度;(2)基于四輪定位儀的輪距測(cè)量裝置和基于激光發(fā)射接收的輪距測(cè)量裝置在對(duì)每輛被測(cè)車輛進(jìn)行測(cè)量時(shí),都要進(jìn)行一次儀器安裝調(diào)整或儀器標(biāo)定,費(fèi)時(shí)費(fèi)力。而本發(fā)明中采用四個(gè)數(shù)碼相機(jī)和四個(gè)激光器即可完成對(duì)車輛輪距的測(cè)量,對(duì)于普通車輛的測(cè)量,只需一次標(biāo)定過(guò)程,后續(xù)測(cè)量類似車輛時(shí)無(wú)需再次進(jìn)行標(biāo)定,大大提高了測(cè)量效率。
(3)本發(fā)明中提出的車輛輪距測(cè)量方法基于多個(gè)近似的前提條件,這些前提條件簡(jiǎn)化了測(cè)量方法和過(guò)程。雖然基于激光發(fā)射接收的輪距測(cè)量方法也對(duì)車輪結(jié)構(gòu)進(jìn)行了近似處理,它在近似關(guān)系中完全忽略了車輪外胎的弧形曲面和車輪外胎面寬度,因此測(cè)量誤差較大。本發(fā)明從數(shù)學(xué)方法上提出近似關(guān)系,這些近似關(guān)系確實(shí)是反映了實(shí)際車輛的結(jié)構(gòu)關(guān)系,在保證最終測(cè)量結(jié)果高精度的同時(shí),大大簡(jiǎn)化了測(cè)量原理和測(cè)量步驟。
(4)與現(xiàn)有技術(shù)相比,本發(fā)明提出的輪距測(cè)量裝置在測(cè)量過(guò)程中無(wú)需人工干預(yù),采用相機(jī)自動(dòng)拍攝激光條紋圖像,通過(guò)圖像處理算法,自動(dòng)獲取激光條紋目標(biāo),并通過(guò)一系列的視覺(jué)處理算法和坐標(biāo)轉(zhuǎn)換原理,即可自動(dòng)完成對(duì)車輛輪距的自動(dòng)測(cè)量,因此自動(dòng)化程度高。
圖1是國(guó)標(biāo)中車輛輪距示意圖。
圖2是基于立體視覺(jué)和激光的輪距測(cè)量結(jié)構(gòu)示意圖。
圖3(a)是立體靶標(biāo)的正面靶標(biāo)示意圖,圖3(b)是立體靶標(biāo)的背面靶標(biāo)示意圖。
圖4是車輛輪距測(cè)量流程示意圖。
圖5是車輛支承平面W計(jì)算流程示意圖。
圖6是車輛支承平面W計(jì)算所用棋盤靶標(biāo)示意圖。
圖7是車輪胎冠切點(diǎn)獲取流程示意圖。
圖8是車輪胎冠上投射的激光條紋示意圖。
圖9是激光條紋自動(dòng)提取算法流程示意圖。
具體實(shí)施例方式
一種基于立體視覺(jué)和激光的車輛輪距測(cè)量方法,采用立體視覺(jué)激光測(cè)量系統(tǒng)獲取測(cè)量用參數(shù),該立體視覺(jué)激光測(cè)量系統(tǒng)包括用于拍攝車輛的左車輪外側(cè)區(qū)域和右車輪內(nèi)側(cè)區(qū)域的由第一相機(jī)(1)和第二相機(jī)(2)組成的相機(jī)單元、用于拍攝輛的右車輪外側(cè)區(qū)域和左車輪內(nèi)側(cè)區(qū)域的由第三相機(jī)(3)和第四相機(jī)(4)組成的另一相機(jī)單元及激光器,再用立體靶標(biāo)對(duì)上述4臺(tái)相機(jī)進(jìn)行內(nèi)、外參數(shù)標(biāo)定,其特征在于步驟1用平面擬合的方法得到車輛支承平面W的平面方程參數(shù)(A0,B0,C0,D0),并由此得到車輛支承平面W的平面方程A0X+B0Y+C0Z+D0=0。
步驟2用胎冠切點(diǎn)測(cè)量方法獲取車輪外側(cè)胎冠上處于不同位置的3個(gè)及以上數(shù)量的切點(diǎn),記為pi,上述胎冠切點(diǎn)測(cè)量方法為激光器以垂直輪胎外側(cè)面的方向,向車輪外側(cè)胎冠上投射一條徑向激光條紋,用一組相機(jī)單元中的相機(jī)分別拍攝該條徑向激光條紋,并分別保存彩色圖像,利用圖像處理算法,從圖像中提取各自的徑向激光條紋,該圖像處理算法采用1)從圖像中提取可能含有激光條紋目標(biāo)區(qū)域的圖像,對(duì)該可能含有激光條紋目標(biāo)區(qū)域的圖像進(jìn)行二值化處理,得到二值化圖像。
2)在二值化圖像中,找出一個(gè)目標(biāo)像素,并對(duì)其標(biāo)記,再將其置于先入先出的堆棧中。
3)從先入先出的堆棧中取出一個(gè)目標(biāo)像素,在二值化圖像中的該目標(biāo)像素周圍5×5鄰域中,再次尋找未標(biāo)記的目標(biāo)像素,對(duì)此次找出的目標(biāo)像素進(jìn)行標(biāo)記,并將其置于先入先出的堆棧中。
4)按步驟3)所述,遍歷先入先出堆棧中的各個(gè)目標(biāo)像素。
5)對(duì)步驟4)所得的目標(biāo)像素進(jìn)行噪聲判斷,將總數(shù)量小于閾值T的步驟4)所得的目標(biāo)像素作為噪聲并將其顏色改為背景色;反之,將步驟4)所得的目標(biāo)像素作為一類可能的激光條紋目標(biāo)上的點(diǎn),予以保存,并將其顏色改為背景色,上述閾值T=150。
6)重復(fù)步驟2)~步驟5),得到各類可能的激光條紋目標(biāo)上的點(diǎn),并分別予以保存。
7)分別利用各類可能的激光條紋目標(biāo)上的點(diǎn),進(jìn)行二次曲線擬合,該二次曲線方程形式為ax2+bx+c=y(tǒng),通過(guò)SVD分解(奇異值分解),得到曲線擬合參數(shù)a、b、c。計(jì)算由各類可能的激光條紋目標(biāo)上的點(diǎn)擬合得到的二次曲線的平均曲線擬合誤差erri,erri=(Σj=1n|aixij2+bixij+ci-yij|)/n]]>其中i為可能的激光條紋目標(biāo)的序號(hào),j為可能的激光條紋目標(biāo)上的點(diǎn)的序號(hào),ai,bi,ci表示由各類可能的激光條紋目標(biāo)上的點(diǎn)擬合得到的二次曲線參數(shù),xij,yij表示各類可能的激光條紋目標(biāo)上的點(diǎn)的坐標(biāo)。
8)將最小平均曲線擬合誤差erri對(duì)應(yīng)的一類點(diǎn)所在的目標(biāo)作為激光條紋目標(biāo)區(qū)域,再在激光條紋目標(biāo)區(qū)域內(nèi)進(jìn)行條紋細(xì)化和短枝處理,即可獲取激光條紋。
此后,根據(jù)立體視覺(jué)中的極線幾何約束,左右互對(duì)應(yīng)約束對(duì)圖像中提取后的激光條紋上點(diǎn)進(jìn)行匹配,并且對(duì)激光條紋上的點(diǎn)進(jìn)行三維重建,得到激光條紋上的空間點(diǎn)的三維坐標(biāo),利用激光條紋上的空間點(diǎn)擬合得到激光條紋所在空間平面S,再將激光條紋上的空間點(diǎn)Pi向擬合平面S投影,利用直線參數(shù)方程計(jì)算得到投影點(diǎn)P’i。建立一個(gè)新坐標(biāo)系O’X’Y’Z’,該坐標(biāo)系以擬合平面S為O’X’Y’平面,以與擬合平面S垂直的平面P1為O’X’Z’平面,以與擬合平面S以及平面P1都垂直的平面P2為O’Y’Z’平面,對(duì)投影點(diǎn)P’i進(jìn)行坐標(biāo)變換,得到投影點(diǎn)P’i在新坐標(biāo)系O’X’Y’Z’下相應(yīng)點(diǎn)Qi的坐標(biāo)為(xi’,yi’,0),該相應(yīng)點(diǎn)Q’i在O’X’Y’平面坐標(biāo)系下的平面坐標(biāo)則為(xi’,yi’),再用上述相應(yīng)點(diǎn)Q’i(xi’,yi’)進(jìn)行平面三次曲線的擬合,該三次曲線方程為y=a1x3+b1x2+c1x+d1經(jīng)求導(dǎo)、計(jì)算后,得到O’X’Y’平面中的擬合三次曲線極值點(diǎn)坐標(biāo)(x0’,y0’),最后通過(guò)坐標(biāo)變化將新坐標(biāo)系O’X’Y’Z’下極值點(diǎn)坐標(biāo)(x0’,y0’,0)轉(zhuǎn)換為在世界坐標(biāo)系OXYZ下的坐標(biāo)(X0’,Y0’,Z0’),并將(X0’,Y0’,Z0’)對(duì)應(yīng)的點(diǎn)作為胎冠上激光條紋最外側(cè)點(diǎn),該胎冠上激光條紋最外側(cè)點(diǎn)為輪胎胎冠的切點(diǎn),再根據(jù)車輪外側(cè)胎冠上處于不同位置的3個(gè)及以上的切點(diǎn),擬合車輪外側(cè)切平面P,步驟3用步驟2所述胎冠切點(diǎn)測(cè)量方法獲得車輪內(nèi)側(cè)胎冠上的一個(gè)切點(diǎn)p1,再向車輪外側(cè)切平面P投影,得到該切點(diǎn)p1的投影點(diǎn)p2,求取p1與p2的中點(diǎn)p3,并將該中點(diǎn)p3作為輪胎中心面上的一點(diǎn),將輪胎中心面作為車輪外側(cè)切平面的平行面,利用空間幾何關(guān)系,得到輪胎中心面的平面C1的方程。
步驟4求取輪胎中心面的平面C1與車輛支承平面W的左交線e1;重復(fù)步驟2~4,得到另一車輪的輪胎中心面的平面C2與車輛支承平面W的右交線e2;最后,計(jì)算左交線e1與右交線e2之間的距離,并以此距離作為車輛輪距。
下面對(duì)本發(fā)明做更為具體的描述由于國(guó)標(biāo)中對(duì)車輛輪距的定義較為復(fù)雜,在實(shí)際測(cè)量過(guò)程中難以實(shí)現(xiàn),因此本發(fā)明采用間接測(cè)量方法,通過(guò)對(duì)其它參數(shù)(胎冠切點(diǎn),車輛支承平面等)的測(cè)量從而實(shí)現(xiàn)了對(duì)輪距進(jìn)行自動(dòng)測(cè)量。本發(fā)明采用Canon A75數(shù)碼相機(jī)(300百萬(wàn)像素,分辨率為2048×1536)作為拍攝工具,如圖2所示,圖中11,12,21,22分別表示相機(jī)1,相機(jī)2,相機(jī)3和相機(jī)4,圖中的31,32,33,34分別代表激光器1,激光器2,激光器3和激光器4,圖中的A和B分別代表左邊輪胎和右邊輪胎,圖中的1表示由相機(jī)1和相機(jī)2構(gòu)成基本測(cè)量單元1,圖中的2表示相機(jī)3和相機(jī)4構(gòu)成基本測(cè)量單元2。相機(jī)1和相機(jī)2拍攝右車輪外側(cè)區(qū)域和左車輪內(nèi)側(cè)區(qū)域,相機(jī)3和相機(jī)4拍攝左車輪外側(cè)區(qū)域和右車輪內(nèi)側(cè)區(qū)域。激光器1和激光器2分別負(fù)責(zé)向左右車輪外側(cè)胎冠上投射激光條紋,而激光器3和激光器4分別負(fù)責(zé)向左右車輪內(nèi)側(cè)胎冠上投射激光條紋。
在開始測(cè)量之前,必須對(duì)數(shù)碼相機(jī)進(jìn)行標(biāo)定,得到相機(jī)的內(nèi)外參數(shù),建立構(gòu)成基本測(cè)量單元的兩個(gè)相機(jī)之間以及兩個(gè)基本測(cè)量單元之間的坐標(biāo)轉(zhuǎn)換關(guān)系。本發(fā)明中采用張正友提出的基于平面模板的高精度相機(jī)標(biāo)定算法(《A Flexible NewTechnique for Camera Calibration》,Pattern Analysis and Machine Intelligence,IEEE Transactions on,2000,11(22)1330-1334)進(jìn)行單個(gè)相機(jī)內(nèi)外參數(shù)的標(biāo)定,標(biāo)定后可以得到三個(gè)矩陣參數(shù)A,R和T,其中A代表相機(jī)的內(nèi)參數(shù)矩陣,R代表相機(jī)相對(duì)于靶標(biāo)坐標(biāo)系的旋轉(zhuǎn)矩陣,T代表相機(jī)相對(duì)于靶標(biāo)坐標(biāo)系的平移矩陣,令M=A[R T],稱之為相機(jī)的投影矩陣。
本發(fā)明中采用如圖3所示的立體靶標(biāo),立體靶標(biāo)中正面和背面各自存在一個(gè)棋盤圖像靶標(biāo),圖3中的331表示立體靶標(biāo)的正面,O1X1Y1Z1構(gòu)成正面靶標(biāo)坐標(biāo)系,332表示立體靶標(biāo)的背面,O2X2Y2Z2構(gòu)成背面靶標(biāo)坐標(biāo)系。假設(shè)相機(jī)1和相機(jī)2利用正面靶標(biāo)進(jìn)行標(biāo)定,分別得到投影矩陣M1和M2,相機(jī)3和相機(jī)4利用背面靶標(biāo)進(jìn)行標(biāo)定,分別得到投影矩陣M3和M4。在張正友的基于平面模板的標(biāo)定算法中,規(guī)定了世界坐標(biāo)系是建立在靶標(biāo)上的,稱之為靶標(biāo)坐標(biāo)系(具體坐標(biāo)系定義參見(jiàn)《A Flexible New Technique for Camera Calibration》和圖3),因此在基本測(cè)量單元1中,由相機(jī)1和相機(jī)2計(jì)算得到空間點(diǎn)的三維坐標(biāo)是基于正面靶標(biāo)坐標(biāo)系O1X1Y1Z1表示的,而在基本測(cè)量單元2中,由相機(jī)3和相機(jī)4計(jì)算得到空間點(diǎn)的三維坐標(biāo)是基于背面靶標(biāo)坐標(biāo)系O2X2Y2Z2表示的。為了實(shí)現(xiàn)最終測(cè)量結(jié)果的統(tǒng)一,必須將兩個(gè)不同的靶標(biāo)坐標(biāo)系統(tǒng)一到一個(gè)公共坐標(biāo)系下。對(duì)于本發(fā)明中所采用的圖3所示的立體靶標(biāo)而言,正面和背面兩個(gè)平面之間相距400mm,每個(gè)靶標(biāo)上的方塊大小為30mm×30mm,每個(gè)方塊間距20mm,每行8個(gè)方塊,每列也是8個(gè)方塊,共64個(gè)方塊,正面靶標(biāo)坐標(biāo)系原點(diǎn)(0,0,0)在背面靶標(biāo)坐標(biāo)系下的坐標(biāo)為(380,0,400),所以對(duì)于正面靶標(biāo)坐標(biāo)系而言,可以認(rèn)為是將背面坐標(biāo)系原點(diǎn)(0,0,0)平移到背面靶標(biāo)坐標(biāo)系原點(diǎn)(380,0,400),然后旋轉(zhuǎn)180度變換而來(lái)得,利用矩陣表示為R0=-10001000-1]]>T0=3800400]]>假設(shè)某一點(diǎn)b在正面靶標(biāo)坐標(biāo)系下的坐標(biāo)表示為b1=[Xb1,Yb1,Zb1]T,背面靶標(biāo)坐標(biāo)系下表示為b2=[Xb2,Yb2,Zb2]T,則b1和b2之間轉(zhuǎn)換關(guān)系為b1=R0×b2+T0。這樣,利用R0和T0,即可將某個(gè)點(diǎn)在背面靶標(biāo)坐標(biāo)系下的坐標(biāo)數(shù)值轉(zhuǎn)換為在面正靶標(biāo)坐標(biāo)系下的坐標(biāo)數(shù)值,從而將兩個(gè)坐標(biāo)系統(tǒng)一起來(lái)。在本發(fā)明中,基本測(cè)量單元1和基本測(cè)量單元2使用立體靶標(biāo)中的正面靶標(biāo)坐標(biāo)系作為公共坐標(biāo)系,將其定義為世界坐標(biāo)系OXYZ。
為了簡(jiǎn)化輪距測(cè)量的復(fù)雜性,本發(fā)明假設(shè)同一軸上左右車輪存在如下近似關(guān)系(1)車輪胎壓充足時(shí),車輪的輪胎中心面,輪胎外側(cè)切平面和輪胎內(nèi)側(cè)切平面三個(gè)平面之間是近似平行關(guān)系;(2)車輪的輪胎中心面和輪胎外側(cè)切平面,以及和輪胎內(nèi)側(cè)切平面之間距離近似相等;(3)車輪存在輕微外傾時(shí),同一軸上左右車輪的輪胎中心面之間不再保持平行關(guān)系,但是它們和車輛支承平面之間的交線仍然保持近似平行關(guān)系;基于上述三個(gè)假設(shè),本發(fā)明對(duì)車輛輪距進(jìn)行一個(gè)簡(jiǎn)單定義,即假設(shè)l1和l2分別表示同一軸上左右車輪的輪胎中心面同車輛支承平面W的交線,則輪距就等于l1和l2這兩條近似平行線之間的距離。可見(jiàn),輪距測(cè)量中牽涉到了輪胎中心面的測(cè)量,從近似關(guān)系(1)和(2)中可知,輪胎中心面和輪胎內(nèi)外側(cè)切平面之間又有著直接關(guān)系。本發(fā)明中輪距測(cè)量方法如下,流程如圖4所示步驟1用平面擬合的方法得到車輛支承平面W的平面方程參數(shù)(A0,B0,C0,D0),并由此得到車輛支承平面W的平面方程A0X+B0Y+C0Z+D0=0。
步驟2獲取車輪外側(cè)胎冠上處于不同位置的3個(gè)及以上數(shù)量的切點(diǎn),記為pi=[xi,yi,zi]T(后面將說(shuō)明獲取3個(gè)及以上數(shù)量的切點(diǎn)的原因)。由于切平面屬于空間平面,因此這里采用歸一化平面方程來(lái)表示切平面P的方程,歸一化平面方程形式為APX+BPY+CPZ+1=0,其中AP,BP,CP表示切平面P的平面方程參數(shù)。由于切平面由切點(diǎn)pi構(gòu)成,因此將切點(diǎn)pi坐標(biāo)代入歸一化平面方程中,生成如下的方程組x1y1z11x2y2z21············xnynzn1APBPCP1=0---(1)]]>從(1)式中可以看到,方程組中有AP,BP和CP三個(gè)未知數(shù),根據(jù)線性代數(shù)原理可知,至少需要三個(gè)線性無(wú)關(guān)的方程進(jìn)行求解,即至少需要3個(gè)不在同一直線上的點(diǎn)才能求解,因此需要獲取車輪胎冠上處于不同位置的至少3個(gè)切點(diǎn)。采用SVD分解算法(奇異值分解)求解如上所示的方程組,即可求出輪胎外側(cè)切平面P的平面方程。
步驟3獲取車輪內(nèi)側(cè)胎冠上的一個(gè)切點(diǎn)p1=[x,y,z]T,將其投影到切平面P上,獲得投影點(diǎn)p2=[x’,y’,z’]T,根據(jù)解析幾何原理可知,p1和p2兩點(diǎn)之間的向量和投影平面的法向量相互平行,這里投影平面即是指輪胎外側(cè)切平面P,因此它們滿足如下等式x′=x+APty′=y+BPtz′=z+CPt---(2)]]>其中,t表示直線標(biāo)準(zhǔn)方程中的等公比,因此上式表示由點(diǎn)p1和p2構(gòu)成的直線參數(shù)方程。由于p2在切平面P上,因此滿足下列方程式APx′+BPy′+CPz′+1=0將(2)式代入(3)式中,求解整理后可得t=-APx+BPy+CPz+1AP2+BP2+CP2---(3)]]>將t的表達(dá)式代入(2)式中計(jì)算,即可得到投影點(diǎn)p2的坐標(biāo)值x′=BP2x+CP2x-APBPy-APCPz-AAP2+BP2+CP2y′=AP2y+CP2y-APBPx-BPCPz-BPAP2+BP2+CP2z′=AP2z+BP2z-APCPx-BPCPy-CPAP2+BP2+CP2---(4)]]>步驟4求取p1與p2的中點(diǎn),記為p3=[x”,y”,z”]T,并將該中點(diǎn)p3作為輪胎中心C1一點(diǎn),可以認(rèn)為此時(shí)p3為輪胎中心面上一點(diǎn),根據(jù)近似關(guān)系(1)可知,輪胎中心面同車輪外側(cè)切平面近似平行,因此利用空間幾何的點(diǎn)法式方程,即可得到輪胎中心面C1的平面方程,其平面方程的參數(shù)為(AC1,BC1,CC1,DC1)AC1=APBC1=BPCC1=CPDC1=-APX′′-BPY′′-CPZ′′---(5)]]>步驟5假設(shè)輪胎中心平面和車輛支承平面交線的方向向量為(l1,m1,n1),根據(jù)空間解析幾何可知,(l1,m1,n1)和輪胎中心面的法向量(AC1,BC1,CC1),以及車輛支承平面W的法向量(A0,B0,C0)互相垂直,因此(l1,m1,n1)=(AC1,BC1,CC1)(A0,B0,C0),其中“”符號(hào)表示叉乘運(yùn)算。這樣即可得到交線的方向向量(l1,m1,n1)。
步驟6重復(fù)步驟2-步驟5獲得另一車輪的輪胎中心平面C2與車輛支承平面W的交線e2,交線e2的方向向量為(l2,m2,n2)。假設(shè)存在兩個(gè)平面F1和F2,F(xiàn)1和F2表示分別過(guò)交線e1和交線e2,且垂直于車輛支承平面W的平面?;诮脐P(guān)系(3),交線e1和交線e2之間是近似平行關(guān)系,則平面F1和平面F2之間也是近似平行關(guān)系,因此交線e1和交線e2之間的距離等于平面F1和平面F2之間的距離。利用空間幾何原理,可以得到平面F1和平面F2的法向量,法向量參數(shù)分別記為(AF1,BF1,CF1)和(AF2,BF2,CF2)(AF1,BF1,CF1)=(l1,m1,n1)(A0,B0,C0) (6)(AF2,BF2,CF2)=(l1,m1,n1)(A0,B0,C0) (7)假設(shè)(Ce1,Ye1,Ze1)和(Xe2,Ye2,Ze2)分別是交線e1和交線e2上的某一點(diǎn)的坐標(biāo)值,則利用空間平面點(diǎn)法式方程即可得到平面F1和平面F2的平面方程參數(shù)(AF1,BF1,CF1,DF1)和(AF2,BF2,CF2,DF2)。其中DF1和DF2分別為DF1=-AF1Xe1-BF1Ye1-CF1Ze1(8)DF2=-AF2Xe2-BF2Ye2-CF2Ze2(9)本發(fā)明采用一種多點(diǎn)平均的方法計(jì)算平面F1和平面F2之間的距離。假設(shè)f1i是交線e1上點(diǎn)(共N1個(gè)),f2i是交線e2上的點(diǎn)(共N2個(gè)),按照步驟3中投影點(diǎn)計(jì)算方法得到f1i在平面F2上的投影點(diǎn),記為f’1i;同理,得到f2i在平面F1上的投影點(diǎn),記為f’2i則存在如下等式 =Σi=1N1||f1i-f1i′||+Σi=1N2||f2i-f2i′N1+N2---(10)]]>上述步驟1-步驟6的流程即為車輛輪距的主要測(cè)量流程,從上述流程中可以看出,在輪距測(cè)量過(guò)程中關(guān)鍵在于兩個(gè)部分,一部分是車輛輪胎外側(cè)和內(nèi)側(cè)胎冠上切點(diǎn)的獲取,另一部分是車輛支承平面W的計(jì)算。以下將針對(duì)這兩方面進(jìn)行詳細(xì)闡述。
首先,獲取車輛支承平面W。為了簡(jiǎn)化處理,假設(shè)車輛支承平面W是一種完全理想的平面,基于此假設(shè),本發(fā)明采用如下的車輛支承平面W計(jì)算方法,流程如圖5所示步驟1由于無(wú)法直接獲取車輛支承平面W,因此本發(fā)明采用一種間接方法。圖6所示是一個(gè)攝像機(jī)標(biāo)定用的平面棋盤靶標(biāo)示意圖,該靶標(biāo)圖像可以通過(guò)計(jì)算機(jī)軟件繪制,將圖像打印出來(lái)后貼在一個(gè)近似理想的平板上(平板具有一定的厚度),將該平面靶標(biāo)平放在車輛支承平面W上,可以認(rèn)為此時(shí)靶標(biāo)所在的平面和車輛支承平面W之間是近似平行關(guān)系,且這兩個(gè)近似平行平面之間僅相差一個(gè)常數(shù)d,常數(shù)d表示靶標(biāo)的厚度值,該常數(shù)可以事先通過(guò)游標(biāo)卡尺測(cè)量獲取。
步驟2通過(guò)基本測(cè)量單元1中的相機(jī)1和相機(jī)2拍攝車輛支承平面W上靶標(biāo)圖像,并保存在灰度圖像。本發(fā)明采用一種高精度棋盤靶標(biāo)角點(diǎn)自動(dòng)提取算法(《一種自動(dòng)檢測(cè)棋盤角點(diǎn)的新算法》,胡海峰、候曉微,計(jì)算機(jī)工程[J],2004,14(30)19-21)定位靶標(biāo)圖像上的角點(diǎn)位置,由于本發(fā)明采用的棋盤靶標(biāo)是由8×8個(gè)方塊組成,因此每幅圖像中分別有256個(gè)角點(diǎn)。
步驟3根據(jù)步驟2可以得到左相機(jī)靶標(biāo)圖像的256個(gè)角點(diǎn)坐標(biāo),以及右相機(jī)靶標(biāo)圖像的256個(gè)角點(diǎn)坐標(biāo)。為了實(shí)現(xiàn)左右圖像中角點(diǎn)的一一匹配,本發(fā)明采用立體視覺(jué)中的極線幾何算法和左右互對(duì)應(yīng)約束對(duì)左右圖像中的256個(gè)靶標(biāo)角點(diǎn)進(jìn)行立體匹配(《計(jì)算機(jī)視覺(jué)》,馬頌德)。
步驟4對(duì)正確匹配的靶標(biāo)角點(diǎn)進(jìn)行三維重建,獲取靶標(biāo)角點(diǎn)的空間三維坐標(biāo),假設(shè)有某對(duì)匹配靶標(biāo)角點(diǎn)g1=[u1,v1]T和g2=[u2,v2]T,它們對(duì)應(yīng)于某個(gè)空間角點(diǎn)G=[X,Y,Z]T,將它們轉(zhuǎn)換為齊次坐標(biāo)為g1=[u1,v1,1]T,g2=[u2,v2,1]T以及G=[X,Y,Z,1]T,同時(shí)相機(jī)1和相機(jī)2已經(jīng)通過(guò)相機(jī)標(biāo)定獲得了投影矩陣M1和M2。根據(jù)馬頌德的《計(jì)算機(jī)視覺(jué)》一書中所述可得如下關(guān)于X,Y,Z的4個(gè)方程u1M311-M111u1M311-M121u1M311-M131v1M311-M211v1M311-M221v1M311-M231u2M311-M111u1M311-M121u1M311-M131v2M311-M211v1M311-M221v1M311-M231XYZ=M141-u1M341M241-v1M341M142-u2M342M242-v2M342---(11)]]>其中,Mijk(k=1,2;i=1,...,3;j=1,...,4)為投影矩陣Mk的第i行第j列元素。采用SVD算法(奇異值分解)求解出X,Y,Z。
步驟5根據(jù)平面擬合算法原理,假設(shè)平面靶標(biāo)的平面方程為A1X+B1Y+C1Z+D1=0,將所有靶標(biāo)角點(diǎn)的三維坐標(biāo)代入,構(gòu)建如下的方程組即可得到棋盤靶標(biāo)平面的方程,記為X1Y1Z11X2Y2Z21············XnYnZn1A1B1C1D1=0---(12)]]>其中,Xi,Yi,Zi分別表示靶標(biāo)角點(diǎn)的三維坐標(biāo)值,采用SVD分解算法(奇異值分解)求解(12)式所示的方程組,即可求出棋盤靶標(biāo)平面的平面方程參數(shù)A1,,B1,C1和D1。
步驟6由于棋盤靶標(biāo)平面和車輛支承平面W的平面方程僅相差一個(gè)常數(shù)d,因此令A(yù)0=A1,B0=B1,C0=C1,D0=D1+d,則車輛支承平面W的平面方程可以表示為A0X+B0Y+C0Z+D0=0。
這樣,通過(guò)步驟1-步驟6即可獲取車輛支承平面W的平面方程A0X+B0Y+C0Z+D0=0。
其次,下面詳細(xì)論述獲取車輛胎冠切點(diǎn)的方法。對(duì)于車輛胎冠切點(diǎn)測(cè)量而言,由于胎冠上不存在明顯的標(biāo)記點(diǎn)和特征點(diǎn),因此直接測(cè)量的難度很大。某些文獻(xiàn)(《車輪定位參數(shù)的線激光非接觸方法研究》,魏嵬等,光電子激光,2004,12(15)1479-1482)提出了向輪胎胎冠上投射激光線,利用獲取激光條紋最高點(diǎn)的方法來(lái)獲取車輪胎冠切點(diǎn),并取得較好的結(jié)果。而且美國(guó)M.E(ModernEngineering)公司的非接觸式激光車輪定位儀(《三維激光視覺(jué)檢測(cè)系統(tǒng)在車輪定位調(diào)整中的應(yīng)用》,張清揚(yáng),北京汽車,1997,228-34)中也是采用類似的方法來(lái)獲取車輪胎冠切點(diǎn),進(jìn)而得到車輪定位參數(shù)。然而在上述文獻(xiàn)闡述的方法存在如下兩個(gè)不足首先,這兩個(gè)文獻(xiàn)提出的方法都是基于單目視覺(jué)的三角測(cè)量原理,這種方法需要一個(gè)高精度的基準(zhǔn)面和坐標(biāo)零點(diǎn),因此精度很大程度上依賴于攝像頭和激光器的安裝精度,且零位校對(duì)困難。其次,該方法不能適用于本發(fā)明所采用的基于立體視覺(jué)的測(cè)量模型;因此,本發(fā)明針對(duì)上述問(wèn)題進(jìn)行改進(jìn),設(shè)計(jì)了一套完善的基于立體視覺(jué)和激光的車輪胎冠切點(diǎn)獲取算法,算法流程如圖7所示。
步驟1激光器以垂直輪胎外側(cè)面的方向,向車輪外側(cè)胎冠上投射一條徑向激光條紋。徑向激光條紋實(shí)際上為胎冠徑向截面的輪廓線,觀察激光輪廓線可以看出胎冠的切點(diǎn)也就是胎冠側(cè)面上的最外側(cè)點(diǎn)。因此只有當(dāng)投射激光條紋所在平面近似垂直車輪側(cè)面,并且激光條紋延長(zhǎng)線近似通過(guò)車輪中心時(shí),才能保證激光條紋上最外側(cè)點(diǎn)最接近胎冠切點(diǎn)位置。因此在投射激光條紋時(shí)必須調(diào)整激光器的位置和方向,以保證投射的激光條紋滿足上述的要求。圖8是激光器向胎冠投射的激光條紋示意圖,圖中符號(hào)81代表車輪外側(cè)面的胎冠,符號(hào)82代表胎冠上的徑向激光條紋。
步驟2一組基本相機(jī)測(cè)量單元中的兩個(gè)相機(jī)分別拍攝該條激光條紋,并分別以彩色圖片方式保存。
步驟3利用圖像處理算法,從圖像中提取正確的激光條紋目標(biāo),流程如圖9所示。由于激光條紋呈紅色,因此經(jīng)過(guò)分析可知,在激光條紋彩色圖像中,激光線條紋中的R,G,B(紅,綠,藍(lán))三個(gè)分量具有如下的特征(1)激光線條紋中R分量的灰度值很高。
(2)激光線條紋中B和G分量的灰度值很低。
周圍環(huán)境中,除非有紅色的物體存在,否則其他物體不具有如上的顏色特征。因此,分別提取圖像中的R,G,B分量,生成三幅灰度圖,記為IR,IG和IB,并按照如下的融合公式進(jìn)行圖像融合IA(x,y)=2IR(x,y)-IG(x,y)-IB(x,y) (13)此時(shí)在經(jīng)過(guò)融合的圖像IA中,紅色分量值大的像素的灰度將被大大突出,而藍(lán)色,綠色分量小的像素的灰度將被減弱。因此紅色激光條紋的灰度統(tǒng)計(jì)值大大增加,而物體和背景的灰度統(tǒng)計(jì)值較之于激光條紋的灰度統(tǒng)計(jì)值則明顯減少。再經(jīng)過(guò)二值化處理,從而保證此時(shí)的二值化黑白圖像中包含激光線條紋區(qū)域。
考慮到測(cè)量現(xiàn)場(chǎng)的復(fù)雜性,可能存在和紅色激光線類似顏色的背景物體或噪聲。經(jīng)過(guò)上述處理后,無(wú)論是激光條紋還是背景物體或噪聲,都將其看成一個(gè)一個(gè)的目標(biāo),這些目標(biāo)中的像素都滿足一個(gè)特點(diǎn),即目標(biāo)上的像素在圖像二維空間中位置是相互連續(xù)的。根據(jù)這個(gè)特點(diǎn),本發(fā)明基于模式識(shí)別的思想,設(shè)計(jì)了如下的識(shí)別算法,將目標(biāo)分為若干類別。假設(shè)背景為黑色,目標(biāo)像素為白色。
(1)在圖像中尋找一個(gè)目標(biāo)像素,如果不存在目標(biāo)像素,則退出循環(huán);否則將其放入一個(gè)先入先出的堆棧中,并標(biāo)記該目標(biāo)像素,表示該像素已經(jīng)放入堆棧中;(2)從堆棧中取出一個(gè)像素,判斷該像素周圍5×5鄰域的像素。如果鄰域內(nèi)的某個(gè)像素是目標(biāo)像素,且未被標(biāo)記,則將其放入堆棧中,并標(biāo)記該目標(biāo)像素,表示該像素已經(jīng)放入堆棧中,否則不處理該像素。
(3)判斷堆棧中是否還存在數(shù)據(jù),如果仍有數(shù)據(jù),表示還有像素未被跟蹤處理,返回(2)繼續(xù)處理。否則表示此時(shí)堆棧中像素已經(jīng)全部跟蹤完畢,則執(zhí)行下面的(4)。
(4)判斷所有已標(biāo)記的像素的數(shù)目,如果像素?cái)?shù)量少于事先設(shè)定的閾值T(經(jīng)過(guò)實(shí)驗(yàn),閾值T取150即可),則表示這些空間上連續(xù)的像素可能是噪聲,則不處理,執(zhí)行下面的(5)。否則認(rèn)為這些已經(jīng)標(biāo)記的像素是某個(gè)目標(biāo)物上的點(diǎn),屬于可能的激光條紋目標(biāo),因此將這些屬于同一目標(biāo)的像素保存下來(lái),并執(zhí)行下面的(5)。
(5)讓所有已經(jīng)標(biāo)記的像素顏色變?yōu)楸尘?,即黑色?br>
(6)返回(1),重新開始尋找新目標(biāo)像素的循環(huán),直到?jīng)]有目標(biāo)像素為止。
經(jīng)過(guò)上述六個(gè)步驟,可以將不同目標(biāo)的像素進(jìn)行分類,其中也包含了激光條紋目標(biāo),為了從中提取出正確的激光條紋,本發(fā)明采用一種分類提取算法,可以從不同目標(biāo)中正確識(shí)別出激光條紋。激光條紋在圖像中主要以曲線形式表現(xiàn)出來(lái),而背景物體和噪聲主要以塊狀區(qū)域方式表現(xiàn)出來(lái),如果將所有的目標(biāo)像素分別進(jìn)行曲線擬合,可以想象,由于激光條紋是曲線形狀,因此其擬合誤差很??;而背景物體和噪聲的曲線擬合誤差較大。所以設(shè)計(jì)如下的判別算法,用于從環(huán)境中提取出真正的激光條紋圖像。假設(shè)(xij,yij)表示各類可能的激光條紋目標(biāo)上的點(diǎn)的坐標(biāo),將其代入二次曲線方程中,構(gòu)建如下方程組來(lái)擬合二次曲線方程xi12xi11xi22xi21·········xin2xin1*aibici=yilyi2···yin---(14)]]>其中i為可能的激光條紋目標(biāo)的序號(hào),j為可能的激光條紋目標(biāo)上的點(diǎn)的序號(hào),ai,bi,ci表示由各類可能的激光條紋目標(biāo)上的點(diǎn)擬合得到的二次曲線參數(shù),xij,yij表示各類可能的激光條紋目標(biāo)上的點(diǎn)的坐標(biāo)。通過(guò)SVD分解(奇異值分解)即可得到曲線擬合參數(shù)。利用下式計(jì)算目標(biāo)區(qū)域i上所有像素的平均曲線擬合誤差errierri=(Σj=1n|aixij2+bixij+ci-yij|)/n---(15)]]>比較所有目標(biāo)區(qū)域的平均誤差erri,可以認(rèn)為其中最小擬合誤差err所對(duì)應(yīng)的目標(biāo)即為所求的激光條紋目標(biāo)。最后,再在激光條紋區(qū)域內(nèi)進(jìn)行條紋細(xì)化和短枝處理,即可獲取激光條紋。
步驟4根據(jù)立體視覺(jué)中的極線幾何算法和左右互對(duì)應(yīng)約束對(duì)圖像中提取后的激光條紋上的像素點(diǎn)進(jìn)行立體匹配。對(duì)正確匹配的激光條紋上的點(diǎn)進(jìn)行三維重建,獲取這些匹配點(diǎn)所對(duì)應(yīng)的激光條紋空間點(diǎn)的三維坐標(biāo),假設(shè)某個(gè)匹配點(diǎn)g1=[u1,v1]T和g2=[u2,v2]T,對(duì)應(yīng)空間點(diǎn)G=[X,Y,Z]T,將它們轉(zhuǎn)換為齊次坐標(biāo)表示g1=[u1,v1,1]T和g2=[u2,v1,1]T以及G=[X,Y,Z,1]T,同時(shí)相機(jī)1和相機(jī)2已經(jīng)通過(guò)相機(jī)標(biāo)定獲得了投影矩陣M1和M2。根據(jù)馬頌德的《計(jì)算機(jī)視覺(jué)》一書所述可得如下關(guān)于X,Y,Z的4個(gè)方程u1M311-M111u1M311-M121u1M311-M131v1M311-M211v1M311-M221v1M311-M231u2M311-M111u2M311-M121u2M311-M131v2M311-M211v2M311-M221v2M311-M231XYZ=M141-u1M341M241-v1M341M142-u2M342M242-v2M342---(16)]]>其中,Mijk(k=1,2;i=1,...,3;j=1,...,4)為投影矩陣Mk的第i行第j列元素。采用SVD算法(奇異值分解)求解出X,Y,Z。這樣即可得到世界坐標(biāo)系OXYZ下激光條紋上空間點(diǎn)的三維坐標(biāo)。
步驟5通過(guò)激光條紋上的空間點(diǎn)三維坐標(biāo)擬合激光條紋所在的平面S。根據(jù)平面擬合算法原理,假設(shè)激光條紋所在平面方程為A2X+B2Y+C2Z+D2=0,將激光條紋上空間點(diǎn)的三維坐標(biāo)代入,構(gòu)建如下的方程組X1Y1Z11X2Y2Z21············XnYnZn1A2B2C2D2=0---(17)]]>(17)式中的(Xi,Yi,Zi)表示激光條紋上的空間點(diǎn)三維坐標(biāo)。采用SVD分解算法(奇異值分解)求解(17)式所示的方程組,即可求出擬合平面S的平面方程參數(shù)A2,B2,C2和D2。根據(jù)輪距測(cè)量流程中步驟3中一樣的方法,將三維點(diǎn)Pi向擬合平面S投影,利用直線參數(shù)方程得到投影點(diǎn)P’i,建立一個(gè)新坐標(biāo)系O’X’Y’Z’,該坐標(biāo)系以擬合平面S為O’X’Y’平面,構(gòu)建新坐標(biāo)系的步驟如下(1)確定和擬合平面S相互垂直的平面P1的平面方程。假設(shè)擬合平面S的法向量為(A2,B2,C2),平面P1的法向量為(A3,B3,C3),由于兩個(gè)平面互相垂直,因此下列關(guān)系成立A3A2+B3B2+C3C2=0 (18)可以假設(shè)A3=-A2;B3=2B2,則可以計(jì)算得到C3。假設(shè)(XP1,YP1,ZP1)是擬合平面S上某一點(diǎn)的三維坐標(biāo),則根據(jù)空間平面的點(diǎn)法式方程,可以獲取得平面P1的平面方程的參數(shù)A3=-A2B3=2B2C3=-(A2A3+B2B3)/C2D3=-(A3XP1+B3YP1+C3ZP1)---(19)]]>(2)確定和擬合平面S以及平面P1相互垂直的平面P2的平面方程。假設(shè)平面P2的方向向量為(A4,B4,C4),則(A4,B4,C4)等于(A2,B2,C2)和(A3,B3,C3)的叉乘,根據(jù)空間平面的點(diǎn)法式方程,可得平面P2的平面方程向量A4=B2C3-C2B3B4=C2A3-A2C3C4=A2B3-B2A3D4=-(A4XP1+B4YP1+C4ZP1)---(20)]]>獲取平面P1和平面P2后,可建立新坐標(biāo)系O’X’Y’Z’,以擬合平面S為O’X’Y’平面,以平面P1為O’X’Z’平面,以平面P2為O’Y’Z’平面,三個(gè)平面的公共交點(diǎn)作為新坐標(biāo)系原點(diǎn)O’,三個(gè)平面之間的交線構(gòu)成了X’Y’Z三個(gè)坐標(biāo)軸。由于激光條紋上像素點(diǎn)Pi在擬合平面S上的投影點(diǎn)P’i在O’X’Y’平面中,通過(guò)(21)式的坐標(biāo)變換可以得到投影點(diǎn)P’i在坐標(biāo)系O’X’Y’Z’下相應(yīng)點(diǎn)Q’i的坐標(biāo)(xi’,yi’,0)。
xi′=A2Xi′+B2Yi′+C2Zi′+D2A22+B22+C22yi′=A1Xi′+B1Yi′+C1Zi′+D1A12+B12+C12zi′=0---(21)]]>
因此,Q’i在O’X’Y’平面坐標(biāo)系下的平面坐標(biāo)則為(xi’,yi’)。
從實(shí)際的車輪胎冠激光條紋分析可知,采用三次曲線擬合已經(jīng)足夠反映激光條紋的形狀,而且如果采用太高次的曲線擬合,則將大大增加求解極值點(diǎn)的難度,并降低算法的穩(wěn)定性。因此采用Q’i進(jìn)行平面三次曲線的擬合,擬合后的三次曲線方程為y=a1x3+b1x2+c1x+d1(22)計(jì)算三次曲線方程的一階導(dǎo)數(shù)方程為f=3a1x2+2b1x+c1(23)令上式中f=0,對(duì)x的一元二次方程進(jìn)行解方程,得到的x存在兩個(gè)值,此時(shí)只要根據(jù)x是否在(xi’,yi’)范圍內(nèi)即可得到正確的x,最后將x代入三次曲線方程(22)式即可得到O’X’Y’平面中的擬合三次曲線極值點(diǎn)坐標(biāo)(x0’,y0’),可以認(rèn)為此時(shí)擬合三次曲線的極值點(diǎn)所對(duì)應(yīng)的空間點(diǎn)就是胎冠上激光條紋最外側(cè)點(diǎn),也就對(duì)應(yīng)著輪胎胎冠的切點(diǎn)。
步驟6最后將擬合三次曲線極值點(diǎn)坐標(biāo)(x0’,y0’)轉(zhuǎn)換為世界坐標(biāo)系OXYZ下表示的三維坐標(biāo)。由于計(jì)算得到的(x0’,y0’)是基于O’X’Y’Z’平面坐標(biāo)系,而實(shí)際所需的胎冠切點(diǎn)坐標(biāo)必須是靶標(biāo)坐標(biāo)系中,因此必須將其轉(zhuǎn)換到世界坐標(biāo)系OXYZ中。根據(jù)剛體運(yùn)功描述可知,如果可以得到新坐標(biāo)系O’X’Y’Z’和世界坐標(biāo)系OXYZ之間的運(yùn)動(dòng)關(guān)系,即可得到胎冠切點(diǎn)在靶標(biāo)坐標(biāo)系下的三維坐標(biāo)。
由于(xi’,yi’)是O’X’Y’平面下的坐標(biāo)表示,因此(xi’,yi’)在O’X’Y’Z’坐標(biāo)系中的三維坐標(biāo)可以表示為(xi’,yi’,0)。從上面論述可知,(xi’,yi’,0)為擬合平面上投影點(diǎn)P’i在O’X’Y’Z’平面中的坐標(biāo),由于投影點(diǎn)P’i的三維坐標(biāo)為(Xi’,Yi’,Zi’),故(xi’,yi’,0)在世界坐標(biāo)系OXYZ中的對(duì)應(yīng)點(diǎn)即為(Xi’,Yi’,Zi’)。由于兩個(gè)坐標(biāo)系之間的關(guān)系可用剛體運(yùn)動(dòng)描述,令R1為旋轉(zhuǎn)矩陣,T1為平移向量,因此有mi’=R1mi+T1(24)其中,mi=[xi’,yi’,0]T,mi=[Xi’,Yi’,Zi’]T。可以通過(guò)對(duì)下列函數(shù)的最小化來(lái)估計(jì)運(yùn)動(dòng)參數(shù)R1和T1F(R1,T1)=Σi=1n||ηi||2=Σi=1n||mi′-R1mi+T1||2---(25)]]>
(25)式是一個(gè)典型的非線性最小化問(wèn)題,本發(fā)明采用了Levenberg-Marquardt算法作為優(yōu)化算法。對(duì)于非線性最小化問(wèn)題而言,準(zhǔn)確的初值將大大提高運(yùn)算的速度,本發(fā)明采用線性方法首先計(jì)算得到R1,T1的初值,假設(shè)R1和T1分別采用如下形式表示R1=r11r12r13r21r22r23r31r32r33]]>T1=t1t2t3]]>本發(fā)明定義x=[r11,r12,r21,r22,r31,r32,t1,t2,t3]T則(24)式可以轉(zhuǎn)換為(26)式所示的方程mi′=Aix, (26)其中Ai是3×9的矩陣,由下式給出Ai=xiyi000010000xiyi000100000xiyi001---(27)]]>從上述看出,(27)式提供了3個(gè)方程,而未知變量有9個(gè),因而只要至少有三對(duì)不在同一直線上的對(duì)應(yīng)點(diǎn),即可通過(guò)線性解方程算法求出參數(shù)x,即r11,r12,r21,r22,r31,r32,t1,t2,t3。由于mi的Z坐標(biāo)為0,因此由(27)式線性方法解方程求得的參數(shù)中不包含r13,r23,r33??紤]到旋轉(zhuǎn)矩陣R為正交矩陣,假設(shè)向量ri為矩陣R1的第i行向量,則下式成立riTri=1;riTrj=0;(i≠j)---(28)]]>因此,根據(jù)上述等式即可計(jì)算出r13,r23,r33,這樣得到R1和T1的初值,將其代入Levenberg-Marquardt算法中進(jìn)行優(yōu)化計(jì)算,由于初值正確,因此Levenberg-Marquardt算法可以很快收斂。
求出(R1,T1)后,假設(shè)激光條紋在擬合平面中的投影曲線極值點(diǎn)坐標(biāo)為m0,將其代入下式,即可得到靶標(biāo)坐標(biāo)系下的激光條紋極值坐標(biāo),即胎冠切點(diǎn)的三維坐標(biāo)。
m0′=R1m0+T1(29)
需注意的是,對(duì)于由相機(jī)1和相機(jī)2構(gòu)成的基本測(cè)量單元1測(cè)量得到的切點(diǎn)坐標(biāo)而言,此時(shí)得到切點(diǎn)的三維坐標(biāo)就是基于世界坐標(biāo)系OXYZ下的表示。而對(duì)于由相機(jī)3和相機(jī)4構(gòu)成的基本測(cè)量單元2測(cè)量得到的切點(diǎn)三維坐標(biāo)而言,還需要通過(guò)R0和T0將切點(diǎn)坐標(biāo)轉(zhuǎn)化到世界坐標(biāo)系OXYZ中。
通過(guò)上述方法即可得到車輪胎冠切點(diǎn),結(jié)合前面的車輛支承平面W,并按照給出的輪距測(cè)量步驟,即可獲得車輛輪距參數(shù)。
權(quán)利要求
1.一種基于立體視覺(jué)和激光的車輛輪距測(cè)量方法,采用立體視覺(jué)激光測(cè)量系統(tǒng)獲取測(cè)量用參數(shù),該立體視覺(jué)激光測(cè)量系統(tǒng)包括用于拍攝車輛的左車輪外側(cè)區(qū)域和右車輪內(nèi)側(cè)區(qū)域的由第一相機(jī)(1)和第二相機(jī)(2)組成的相機(jī)單元、用于拍攝輛的右車輪外側(cè)區(qū)域和左車輪內(nèi)側(cè)區(qū)域的由第三相機(jī)(3)和第四相機(jī)(4)組成的另一相機(jī)單元及激光器,再用立體靶標(biāo)對(duì)上述4臺(tái)相機(jī)進(jìn)行內(nèi)、外參數(shù)標(biāo)定,其特征在于步驟1用平面擬合的方法得到車輛支承平面W的平面方程參數(shù)(A0,B0,C0,D0),并由此得到車輛支承平面W的平面方程A0X+B0Y+C0Z+D0=0。步驟2用胎冠切點(diǎn)測(cè)量方法獲取車輪外側(cè)胎冠上處于不同位置的3個(gè)及以上數(shù)量的切點(diǎn),記為pi,上述胎冠切點(diǎn)測(cè)量方法為激光器以垂直輪胎外側(cè)面的方向,向車輪外側(cè)胎冠上投射一條徑向激光條紋,用一組相機(jī)單元中的相機(jī)分別拍攝該條徑向激光條紋,并分別保存彩色圖像,利用圖像處理算法,從圖像中提取各自的徑向激光條紋,該圖像處理算法采用1)從圖像中提取可能含有激光條紋目標(biāo)區(qū)域的圖像,對(duì)該可能含有激光條紋目標(biāo)區(qū)域的圖像進(jìn)行二值化處理,得到二值化圖像。2)在二值化圖像中,找出一個(gè)目標(biāo)像素,并對(duì)其標(biāo)記,再將其置于先入先出的堆棧中。3)從先入先出的堆棧中取出一個(gè)目標(biāo)像素,在二值化圖像中的該目標(biāo)像素周圍5×5鄰域中,再次尋找未標(biāo)記的目標(biāo)像素,對(duì)此次找出的目標(biāo)像素進(jìn)行標(biāo)記,并將其置于先入先出的堆棧中。4)按步驟3)所述,遍歷先入先出堆棧中的各個(gè)目標(biāo)像素。5)對(duì)步驟4)所得的目標(biāo)像素進(jìn)行噪聲判斷,將總數(shù)量小于閾值T的步驟4)所得的目標(biāo)像素作為噪聲并將其顏色改為背景色;反之,將步驟4)所得的目標(biāo)像素作為一類可能的激光條紋目標(biāo)上的點(diǎn),予以保存,并將其顏色改為背景色,上述閾值T=150。6)重復(fù)步驟2)~步驟5),得到各類可能的激光條紋目標(biāo)上的點(diǎn),并分別予以保存。7)分別利用各類可能的激光條紋目標(biāo)上的點(diǎn),進(jìn)行二次曲線擬合,該二次曲線方程形式為ax2+bx+c=y(tǒng),通過(guò)SVD分解(奇異值分解),得到曲線擬合參數(shù)a、b、c。計(jì)算由各類可能的激光條紋目標(biāo)上的點(diǎn)擬合得到的二次曲線的平均曲線擬合誤差erri,erri=(Σj=1n|aixij2+bixij+ci-yij|)/n]]>其中i為可能的激光條紋目標(biāo)的序號(hào),j為可能的激光條紋目標(biāo)上的點(diǎn)的序號(hào),ai,bi,ci表示由各類可能的激光條紋目標(biāo)上的點(diǎn)擬合得到的二次曲線參數(shù),xij,yij表示各類可能的激光條紋目標(biāo)上的點(diǎn)的坐標(biāo)。8)將最小平均曲線擬合誤差erri對(duì)應(yīng)的一類點(diǎn)所在的目標(biāo)作為激光條紋目標(biāo)區(qū)域,再在激光條紋目標(biāo)區(qū)域內(nèi)進(jìn)行條紋細(xì)化和短枝處理,即可獲取激光條紋。此后,根據(jù)立體視覺(jué)中的極線幾何約束,左右互對(duì)應(yīng)約束對(duì)圖像中提取后的激光條紋上點(diǎn)進(jìn)行匹配,并且對(duì)激光條紋上的點(diǎn)進(jìn)行三維重建,得到激光條紋上的空間點(diǎn)的三維坐標(biāo),利用激光條紋上的空間點(diǎn)擬合得到激光條紋所在空間平面S,再將激光條紋上的空間點(diǎn)Pi向擬合平面S投影,利用直線參數(shù)方程計(jì)算得到投影點(diǎn)P’i。建立一個(gè)新坐標(biāo)系O’X’Y’Z’,該坐標(biāo)系以擬合平面S為O’X’Y’平面,以與擬合平面S垂直的平面P1為O’X’Z’平面,以與擬合平面S以及平面P1都垂直的平面P2為O’Y’Z’平面,對(duì)投影點(diǎn)P’i進(jìn)行坐標(biāo)變換,得到投影點(diǎn)P’i在新坐標(biāo)系O’X’Y’Z’下相應(yīng)點(diǎn)Q’i的坐標(biāo)為(xi’,yi’,0),該相應(yīng)點(diǎn)Q’i在O’X’Y’平面坐標(biāo)系下的平面坐標(biāo)則為(xi’,yi’),再用上述相應(yīng)點(diǎn)Q’i(xi’,yi’)進(jìn)行平面三次曲線的擬合,該三次曲線方程為y=a1x3+b1x2+c1x+d1經(jīng)求導(dǎo)、計(jì)算后,得到O’X’Y’平面中的擬合三次曲線極值點(diǎn)坐標(biāo)(x0’,y0’),最后通過(guò)坐標(biāo)變化將新坐標(biāo)系O’X’Y’Z’下極值點(diǎn)坐標(biāo)(x0’,y0’,0)轉(zhuǎn)換為在世界坐標(biāo)系OXYZ下的坐標(biāo)(X0’,Y0’,Z0’),并將(X0’,Y0’,Z0’)對(duì)應(yīng)的點(diǎn)作為胎冠上激光條紋最外側(cè)點(diǎn),該胎冠上激光條紋最外側(cè)點(diǎn)為輪胎胎冠的切點(diǎn),再根據(jù)車輪外側(cè)胎冠上處于不同位置的3個(gè)及以上的切點(diǎn),擬合車輪外側(cè)切平面P,步驟3用步驟2所述胎冠切點(diǎn)測(cè)量方法獲得車輪內(nèi)側(cè)胎冠上的一個(gè)切點(diǎn)p1,再向車輪外側(cè)切平面P投影,得到該切點(diǎn)p1的投影點(diǎn)p2,求取p1與p2的中點(diǎn)p3,并將該中點(diǎn)p3作為輪胎中心面上的一點(diǎn),將輪胎中心面作為車輪外側(cè)切平面的平行面,利用空間幾何關(guān)系,得到輪胎中心面的平面C1的方程。步驟4求取輪胎中心面的平面C1與車輛支承平面W的左交線e1;重復(fù)步驟2~4,得到另一車輪的輪胎中心面的平面C2與車輛支承平面W的右交線e2;最后,計(jì)算左交線e1與右交線e2之間的距離,并以此距離作為車輛輪距。
全文摘要
本發(fā)明提出一種基于立體視覺(jué)和激光的車輛輪距測(cè)量方法,采用立體視覺(jué)激光測(cè)量系統(tǒng)獲取相關(guān)測(cè)量參數(shù)。該方法利用數(shù)碼相機(jī)拍攝投影到車輪胎冠上的激光條紋,通過(guò)圖像處理方法提取激光條紋目標(biāo),利用立體匹配算法和三維重建算法獲得激光條紋空間點(diǎn)。將激光條紋空間點(diǎn)投影到激光條紋所在的擬合平面中,并利用投影點(diǎn)生成二維曲線,計(jì)算出二維曲線極值點(diǎn),認(rèn)為該極值點(diǎn)就對(duì)應(yīng)胎冠切點(diǎn)。利用車輪內(nèi)側(cè)胎冠上一個(gè)切點(diǎn)以及由車輪外側(cè)胎冠上至少三個(gè)切點(diǎn)擬合獲得的切平面計(jì)算輪胎中心面。通過(guò)計(jì)算同一軸上左右輪胎的輪胎中心面分別和車輛支承平面的交線之間的距離即可獲得車輛輪距參數(shù)。
文檔編號(hào)G01B11/14GK101059340SQ20071002242
公開日2007年10月24日 申請(qǐng)日期2007年5月18日 優(yōu)先權(quán)日2007年5月18日
發(fā)明者張為公, 林國(guó)余 申請(qǐng)人:東南大學(xué)