都雪靜,昌 倩
(東北林業(yè)大學(xué)交通學(xué)院,哈爾濱 150040)
交通事故一般發(fā)生在交通量比較密集的地方,為了盡快恢復(fù)交通,減少損失,事故現(xiàn)場的快速、準(zhǔn)確處理十分重要[1-2]。
隨著數(shù)碼技術(shù)的快速發(fā)展,相機(jī)標(biāo)定已成為交通事故正確、快速處理過程中的關(guān)鍵工作之一[3-4]。在計算機(jī)視覺中,圖像上點的位置與空間物體表面上相應(yīng)點的幾何位置有關(guān),該點的像素值反映了空間物體表面上點的反射光亮度。二維圖像上的點和空間物體表面相應(yīng)點之間存在一種變換關(guān)系,而這種關(guān)系是由相機(jī)成像的幾何模型來決定的,該成像模型的幾何參數(shù)稱為相機(jī)參數(shù),確定這些幾何參數(shù)的過程稱為相機(jī)標(biāo)定。相機(jī)標(biāo)定包括相機(jī)內(nèi)部參數(shù)和外部參數(shù)(即事故現(xiàn)場位置關(guān)系)的標(biāo)定。由于內(nèi)部參數(shù)只與相機(jī)本身的參數(shù)有關(guān),所以在確定好內(nèi)部參數(shù)后,重要的是進(jìn)行外部參數(shù)的標(biāo)定[5-8]。Tobias Hanning[9]提出了一種高精度的標(biāo)定方法,適合應(yīng)用于事故處理精度要求較高的場合。FERRAN ESPUNY[10]提出了一種基于相機(jī)做平面運(yùn)動的線性攝像機(jī)自動標(biāo)定方法,簡化了數(shù)據(jù)處理過程,提高了事故處理的效率。熊琰等[11]提出了一種基于直角三角點的外參數(shù)標(biāo)定方法,簡化了標(biāo)定點的數(shù)量和標(biāo)定裝置的復(fù)雜性。李學(xué)軍等[12]提出了一種新的相機(jī)參數(shù)的數(shù)值解法,能有效解決由3個以上控制點求解相機(jī)外參數(shù)的問題。本文提出的基于主動視覺的相機(jī)標(biāo)定方法根據(jù)實際需要確定了相機(jī)拍攝時的實際位置和方向關(guān)系,在事故現(xiàn)場設(shè)置特征點,根據(jù)相機(jī)成像原理及攝影定理求得相機(jī)的參數(shù)。相機(jī)與事故現(xiàn)場碰撞中心位置關(guān)系的確定同樣適用于其他乘用車碰撞事故現(xiàn)場,無需重新進(jìn)行標(biāo)定。
最常見的相機(jī)成像模型是針孔成像模型,目前仍被廣泛應(yīng)用于計算機(jī)圖像學(xué)中。為了便于描述針孔成像原理,定義了幾組坐標(biāo)系:世界坐標(biāo)系{W}、照相機(jī)坐標(biāo)系{C}、圖像坐標(biāo)系{R}、像素坐標(biāo)系{I}。相機(jī)成像的理論模型如圖1所示。
圖1 相機(jī)成像的理論模型
在圖1中,OW為世界坐標(biāo)系的原點,OC為照相機(jī)坐標(biāo)系的原點,OR為圖像坐標(biāo)系的原點,OI為像素坐標(biāo)系的原點。世界坐標(biāo)系{W}、照相機(jī)坐標(biāo)系{C}和圖像坐標(biāo)系{R}定義相同的單位,圖像最終在計算機(jī)內(nèi)存儲。每幅圖像在計算機(jī)內(nèi)為M×N數(shù)組,M行N列圖像中的一個元素稱為像素,坐標(biāo)系{I}只表示像素在數(shù)組中的行數(shù)和列數(shù),沒有物理單位。照相機(jī)坐標(biāo)系原點OC與圖像坐標(biāo)系原點OR之間的距離f為照相機(jī)的焦距。拍攝場景中,空間點P在{W}、{C}、{R}三個坐標(biāo)系中的坐標(biāo)分別為和建立空間點 P 在{W}和{C}坐標(biāo)系之間的坐標(biāo)關(guān)系:
其中:R是3×3正交單位矩陣;T是三維平移向量,分別表示目標(biāo)在3個坐標(biāo)之間的旋轉(zhuǎn)角度和位移。空間點P在圖像坐標(biāo)系下的投影點P1的坐標(biāo)為設(shè)P1在像素坐標(biāo)系下的坐標(biāo)為(u,v),每個像素在XR軸和YR軸上的物理尺寸為dx和dy,則P1在2個坐標(biāo)系下的關(guān)系為
根據(jù)針孔成像原理,P1可以用如下關(guān)系式表達(dá):
聯(lián)立式(1)~(3),得:
其中:α= -f/dx,β=-f/dy,α 和β分別為橫向有效焦距和縱向有效焦距。K只由β,u0和v0決定。α,β,u0,v0只與照相機(jī)的內(nèi)部結(jié)構(gòu)有關(guān),所以 K稱為內(nèi)部參數(shù)矩陣。MRT只由照相機(jī)相對于世界坐標(biāo)系中的位置決定,所以稱之為外部參數(shù)矩陣。
由上述關(guān)系式可知:要求出M,只需先求得K和MRT。求得相機(jī)的內(nèi)部參數(shù)后,即可得到K。求得目標(biāo)在3個坐標(biāo)之間的旋轉(zhuǎn)角度和位移后可得到MRT。最后求得矩陣M。
在已知空間點世界坐標(biāo)系的情況下,根據(jù)式(4),可求得該點的像素坐標(biāo)(u,v)。已知照相機(jī)的內(nèi)外參數(shù)后可得到投影變換矩陣。在已知空間點的世界坐標(biāo)下,根據(jù)公式列出3個方程,可以計算出該點在圖像上的像素坐標(biāo)。
根據(jù)數(shù)碼相機(jī)成像原理,得到在確定坐標(biāo)系下物點與像點的坐標(biāo)轉(zhuǎn)換關(guān)系后可進(jìn)一步確定數(shù)碼相機(jī)的精確焦距和特征點坐標(biāo)。在實際攝影測量過程中,相機(jī)拍攝位置不確定,在根據(jù)相機(jī)成像模型求解相機(jī)的位置及方位參數(shù)時計算困難且計算量大。針對該問題,本文提出了一種基于相機(jī)運(yùn)動位置進(jìn)行拍攝的方法。利用一種簡單方便的腳架,將相機(jī)固定在腳架上,其高度和傾斜角度可調(diào),水平方向能360°旋轉(zhuǎn)。在確定了世界坐標(biāo)系的條件下,相機(jī)的實際坐標(biāo)便可確定,不再需要進(jìn)行相機(jī)位置的求解。根據(jù)相機(jī)成像原理,分別進(jìn)行了模擬實驗和現(xiàn)場實驗,驗證了相機(jī)位置的精確度,在進(jìn)一步確定特征點的實際值與圖像值的關(guān)系時,簡化了計算過程。
在事故碰撞中心點處設(shè)置一個特征點,并將其在地面的投影作為世界坐標(biāo)系的原點坐標(biāo)。另外設(shè)置兩個特征點,使其與坐標(biāo)原點成直線關(guān)系。以乘用車為例進(jìn)行實測實驗。乘用車的尺寸為3 878 mm×1 676 mm×1 438 mm(長×寬×高)。選取佳能Power Shot A560型號的相機(jī),具體參數(shù):焦距為23.2 mm,圖像分辨率為3 702×2 304。對現(xiàn)場進(jìn)行實際拍攝,在盡量不丟失相機(jī)深度信息的情況下,對相機(jī)位置及方向參數(shù)進(jìn)行合理設(shè)定。為使圖像既能滿足事故現(xiàn)場數(shù)據(jù)處理的需要,又能盡可能地保持相機(jī)的深度信息,需要對相機(jī)的位置參數(shù)進(jìn)行合理的設(shè)定。圖2為相機(jī)中心在距離現(xiàn)場中心4 000 mm,其中心高度為900 mm時拍攝的照片。從圖2可以看出,設(shè)定的參數(shù)能滿足拍攝要求,且操作簡單。
圖2 相機(jī)中心高度為900 mm時拍攝的照片
根據(jù)相機(jī)需要的實際位置及方向關(guān)系,應(yīng)用的固定腳架如圖3所示。固定支架可伸縮,伸縮高度為1 000 mm。固定相機(jī)的云臺可實現(xiàn)360°水平旋轉(zhuǎn)和90°傾斜轉(zhuǎn)動,云臺和固定支架之間安裝可伸縮的伸縮桿,伸縮桿標(biāo)有刻度,最高可伸長高度為1 700 mm。
圖3 固定三腳架的結(jié)構(gòu)
對相機(jī)進(jìn)行標(biāo)定后,通過數(shù)據(jù)處理求得物體在三維空間中的實際位置,即三維重構(gòu)的過程,也是對式(4)進(jìn)行求逆的過程。為了防止數(shù)碼相機(jī)在成像過程中丟失深度信息,需要從不同角度拍攝包含相同特征點的兩幅圖像。已知兩幅圖像的投影矩陣分別為M1和M2,圖像中對應(yīng)的點的像素坐標(biāo)分別為(u1,v1)和(u2,v2),將已知值代入式(4),對于 M1和(u1,v1)有:
整理得:
即:
式中:X為對應(yīng)點世界坐標(biāo)系的齊次坐標(biāo);Mij中i=1,2表示投影矩陣 1 和 2,j=1,2,3 表示特征點 1,2,3。
同理,對于投影矩陣M2,有
將方程(5)和(6)聯(lián)立后,可得:
在這種情況下,采用最小二乘法原理通過以上4個方程式可求解3個未知數(shù),即求得X的對應(yīng)點的世界坐標(biāo)值。
為了驗證設(shè)計方案的精確性,應(yīng)用設(shè)計好的模型進(jìn)行實驗驗證。在一片空曠的區(qū)域,將相機(jī)固定在一個平臺上,在相機(jī)中心的正前方4 000 mm處放置一個長方體的箱子作為標(biāo)定物。圖4中,A點為世界坐標(biāo)系的原點,AB為X方向坐標(biāo)系,AC為Y方向的坐標(biāo)系,AD為Z軸方向坐標(biāo)系。相機(jī)中心高度初始值保持在900 mm位置,拍攝時往往需要多幅不同角度的照片,以獲得更全面的數(shù)據(jù)信息。不同高度方向拍攝的物體照片如圖4所示。
圖4 不同高度方向拍攝的物體照片
將圖像以jpg格式存儲,導(dǎo)入Matlab仿真程序,計算出圖像特征點1,2,3,4處的像素坐標(biāo)。將像素坐標(biāo)代入式(7)中的聯(lián)立方程,求出1,2,3,4四點處的世界坐標(biāo)值。具體數(shù)據(jù)如表1所示。
表1 圖像中4個點的世界坐標(biāo)和像素坐標(biāo)
由表1的1、2、3、4四個點的世界坐標(biāo)可以計算出三維重現(xiàn)后的物體尺寸為1 000.54 mm×420.16 mm ×771.59 mm。與實際尺寸1 020 mm ×400 mm×800 mm相比,誤差分別為1.91%,5.04%和3.55%,說明該方法精度較高。
由于實驗條件的限制,僅對一個物體進(jìn)行了實驗。由實驗結(jié)果可以看出,各坐標(biāo)分量的相對誤差不超過6%,表明本文提出的標(biāo)定方法可以獲得精度較高的參數(shù)。
在處理交通事故的過程中,輪胎拖痕、散落物情況、碰撞前車速等都是事故分析的重要組成部分,而事故碰撞點在確定這些因素的過程中有重要的作用。將事故碰撞點在地面上的投影作為世界坐標(biāo)系的原點,如果碰撞點坐標(biāo)在現(xiàn)場不易確定,則可將其設(shè)置在道路中心線位置,在中心點處放置標(biāo)定物體,使其方向與世界坐標(biāo)系方向重合。事故現(xiàn)場標(biāo)定如圖5所示。
圖5 事故現(xiàn)場標(biāo)定
固定腳架放置在距離事故中心點4 m處,相機(jī)初始位置方向與道路的方向垂直。確定固定腳架的高度,使得相機(jī)拍攝中心點的初始高度為900 mm,并在固定腳架上標(biāo)記(下次進(jìn)行事故現(xiàn)場標(biāo)定時不需重新標(biāo)定)。由于同一個特征點的位置信息往往需要兩幅以上的圖片才能確定,因此拍攝時應(yīng)使相機(jī)水平旋轉(zhuǎn),從不同角度拍攝同一特征點。相機(jī)旋轉(zhuǎn)的角度可以直接從固定相機(jī)的云臺上讀取。圖6和7為相機(jī)分別在左、右側(cè)30°方向上拍攝的包含同一特征點的兩組照片。
圖6 相機(jī)在左、右側(cè)30°方向上拍攝的照片
在對事故現(xiàn)場進(jìn)行拍照時,為使拍攝的事故現(xiàn)場信息盡量全面,根據(jù)相機(jī)成像原理和實際實驗,認(rèn)為相機(jī)中心高度在1 700 mm,傾斜角度為30°時對事故現(xiàn)場的取景較全面且不會丟失相機(jī)的深度信息,同時只需要調(diào)整相機(jī)的高度坐標(biāo)即可。
圖7 相機(jī)中心在1 700 mm高度、30°傾斜角度時拍攝的照片
將圖像以jpg格式存儲,并導(dǎo)入Matlab仿真程序,利用圖像拼接處理技術(shù)計算結(jié)果。在現(xiàn)場地面用矩形標(biāo)示出汽車所在位置,矩形的長記為ab,寬記為ac。對地面標(biāo)出尺寸進(jìn)行實際測量,將測量結(jié)果與Matlab仿真結(jié)果進(jìn)行比較。
根據(jù)設(shè)計的標(biāo)定方法,分別在模擬場景和真實場景中對物體進(jìn)行拍攝測量,并比較其真實尺寸與Matlab計算處理后的尺寸,結(jié)果如表2所示。通過分析誤差可知,該方法誤差在允許范圍內(nèi),設(shè)計方法的精度較高。
對標(biāo)定結(jié)果進(jìn)行誤差統(tǒng)計分析有利于標(biāo)定物的優(yōu)化和標(biāo)定程序的簡化。誤差分析結(jié)果表明:設(shè)計環(huán)境下拍攝圖像的標(biāo)定方法能滿足目前事故現(xiàn)場測量的要求,說明本文確定的線性標(biāo)定系統(tǒng)適合于交通事故現(xiàn)場照相測量的相機(jī)標(biāo)定。
表2 實際測量尺寸與仿真計算尺寸的比較
本文提出了基于主動視覺的相機(jī)標(biāo)定方法。相機(jī)相對于世界坐標(biāo)系進(jìn)行水平旋轉(zhuǎn)、平移運(yùn)動和不同拍攝角度的傾斜運(yùn)動,具體運(yùn)動情況已知,穩(wěn)定性較好。由于相機(jī)中心在世界坐標(biāo)系中的坐標(biāo)值已知,因此在使用Matlab進(jìn)行數(shù)據(jù)圖像處理時簡單快速。本實驗對設(shè)備要求不高,操作方便,誤差小于6%,在獲取信息盡量全面的情況下提高了事故處理的效率。相機(jī)中心位置的數(shù)據(jù)設(shè)定在其他乘用車碰撞事故處理時依然成立,無需重新對相機(jī)進(jìn)行位置確定。本文應(yīng)用Matlab提取圖像特征點的像素尺寸,根據(jù)計算得出三維重構(gòu)后的尺寸,通過模擬實驗和實際場景實驗進(jìn)行了驗證,表明該方法有助于提高交通事故處理的速度與效率。
[1]譚立東.道路交通事故現(xiàn)場快速勘查圖像信息處理技術(shù)研究[D].長春:吉林大學(xué),2009.
[2]王偉霞.多個非固定標(biāo)定物處理交通事故現(xiàn)場圖像的研究[D].長春:吉林大學(xué),2013.
[3]Dhinaharan Nagamalai,Eric Renault,Murugan Dhanuskodi.Advances in Digital Image Processing and Information Technology[C]//First International Conference on Digital Image Processing and Pattern Recognition.USA:[s.n.],2011:203-211.
[4]Jang-Hwan Im,Ji-Hong Min.Two Linear Methods for Camera Calibration and Their Applications to Augmented Reality and 3DReconstruction[J].Multimedia and Film Chung-Ang University,2003,29(6):625-631.
[5]禹旺勛,王愛菊,劉云濤.基于主動視覺的攝相機(jī)線性自標(biāo)定方法[J].價值工程,2013(22):258-260.
[6]郭麗麗.交通事故現(xiàn)場相機(jī)標(biāo)定技術(shù)研究[J].計算機(jī)工程與應(yīng)用,2008,44(20):229-231.
[7]Ki-Young Shin,Joung Hwan Mun.A multi-camera calibration method using a 3-axis frame and wand[J].Sungkyunkwan University,2012,13(2):283-289.
[8]Song Li-mei,Chen Chang-man,Chen Zhuo.Essential parameter calibration for the 3D scanner with only single camera and projector[J].Tianjin Polytechnic University,2013,9(3):143-147.
[9]Tobias Hanning.A Least Squares Solution for Camera Distortion Parameters[J].Springer Fachmedien Wiesbaden GmbH,2013,45(2):138-147.
[10]FERRAN ESPUNY.A New Linear Method for Camera Self-Calibration with Planar Motion[J].Universidad de Barcelona,2007,21(1):81-88.
[11]熊琰,龔華軍,沈曄青.三維重構(gòu)中數(shù)碼相機(jī)參數(shù)標(biāo)定方法研究[J].計算機(jī)仿真,2007(9):221-224.
[12]李學(xué)軍,謝劍薇,王新波.相機(jī)外參數(shù)標(biāo)定的數(shù)值解法[J].計算機(jī)技術(shù)與發(fā)展,2008(12):178-182.