王巨森 劉自強
1 沈陽銘遠(yuǎn)奧斯科技有限公司(沈陽 110000)2 沈陽工業(yè)大學(xué)(沈陽 110870)
利用攝像機捕獲三維場景的圖像是計算視覺的首要工作之一,從圖像中獲取目標(biāo)的信息,由此重建和識別目標(biāo)物體。為獲得目標(biāo)的信息,首先要建立三維空間的目標(biāo)物體的幾何信息與其在圖像中對應(yīng)點之間的相互關(guān)系,為隨后的重建和識別奠定基礎(chǔ)。而建立圖像和世界坐標(biāo)系中的物體之間對應(yīng)關(guān)系的任務(wù)取決于攝像機成像的幾何模型,成像幾何模型的參數(shù)被稱為攝像機參數(shù),決定這些攝像機參數(shù)的步驟稱為攝像機標(biāo)定(Camera Calibration)。攝像機標(biāo)定的步驟就是為了獲得攝像機的幾何和光學(xué)參數(shù),攝像機相對于空間坐標(biāo)系的位置。標(biāo)定結(jié)果的精度,直接影響著計算機視覺的精度。
如今,攝像機標(biāo)定方法研究有許多,其研究方法大體分為兩類,即傳統(tǒng)的攝像機標(biāo)定方法與攝像機自標(biāo)定方法。傳統(tǒng)的攝像機標(biāo)定方法需要某個特定的攝像機模型和實驗環(huán)境,比如說已經(jīng)確定的幾何圖形參照體,需通過一系列的圖像處理過程,使用數(shù)學(xué)幾何變換和算子,來獲取攝像機內(nèi)參數(shù)和外參數(shù)。如W.Faig[1]采用的標(biāo)定方法,利用了至少17 個參數(shù)描述與其三維物體空間之間約束關(guān)系,導(dǎo)致計算復(fù)雜度高。R.Y.Tsai 提出了經(jīng)典的兩步標(biāo)定法[2],該方法對實驗硬件條件要求很高,在簡單標(biāo)定中并不適用。
攝像機自標(biāo)定方法,它不依賴標(biāo)定參照物,來計算攝像機的參數(shù)。Fauge[3]提出自標(biāo)定(Self-Calibration)設(shè)想,他們利用攝影幾何理論驗證對兩幅圖像之間存在對應(yīng)關(guān)系,其關(guān)系可以通過解Kruppa 方程組,來獲得所有像素點到對應(yīng)極線的距離之和,在此基礎(chǔ)上求解出攝像機的內(nèi)外參數(shù)。然而,求解Kruppa 方程組計算繁瑣,尤其是當(dāng)圖像數(shù)量增多時,解的數(shù)量也會呈指數(shù)形式隨之增加。Triggs[4]采用絕對二次曲面的自標(biāo)定方法,針對在現(xiàn)實使用中攝像機里面參數(shù)實時的情況可能會被轉(zhuǎn)變,如縮放焦距等,這時候提到的自標(biāo)定方法不可被采用.
考慮傳統(tǒng)與自標(biāo)定方法的不足,馬頌德[5]等人想出一種基于主動視覺的定標(biāo)方法,該方法需要將攝像機精確地安裝在可控的平臺上,主動控制平臺的運動得到多幅圖像,利用圖像和攝像機運動參數(shù)來得到攝像機內(nèi)外參數(shù)。此方法雖魯棒性好,但特定實驗環(huán)境、昂貴的實驗設(shè)備,限制了方法應(yīng)用。微軟研究院的張正友[6]在通過許多研究后想出了一個處于傳統(tǒng)標(biāo)定和自標(biāo)定之間的較好的方法,此方法對實驗條件要求不高,方法容易實現(xiàn),實驗結(jié)果的魯棒性好,因此在許多應(yīng)用采用張氏標(biāo)定方法,本文探討該方法的實現(xiàn)。
該方法采用一個二維平面模社作為標(biāo)定參照物(如圖1 所示),它是一幅10×7 個正方形黑白相間棋盤格,其中每黑格、白格的尺寸統(tǒng)一為26mm×26mm。從不同方法獲取的同一個標(biāo)定板圖像(3 幅以上),就能求出攝像機的內(nèi)外參數(shù),因為該方法不需了解平面模板運動狀態(tài)。所以此方法容易、方便實現(xiàn)。
其算法實現(xiàn)過程如下:
(1)從不同的方向來獲取若干張(至少3 張)棋盤模板圖片;
(2)利用Harris 提取角點方法從獲取的圖片中提取角點的信息(像素坐標(biāo));
(3)最后就可以利用角點信息來求解攝像機的參數(shù),即實現(xiàn)攝像機標(biāo)定的目的。一般在求解攝像機參數(shù)時,對于每幅圖像都有其對應(yīng)的單應(yīng)矩陣H。H 寫成向量形式如公式(1)所示,
(1)其中h 都代表3×1 的向量,λ 表示為系數(shù),A代表攝像機的內(nèi)部參數(shù)矩陣;
(1)利用映射矩陣得到內(nèi)參數(shù)A 的約束條件。
(2)利用約束條件線性求解內(nèi)部參數(shù)A。
基于絕對二次曲線原理與Choleski 分解,可以求出內(nèi)參數(shù)矩陣A。再根據(jù)A 和映射矩陣H 算出每幅圖像相對于平面模板的外參數(shù)旋轉(zhuǎn)矩陣和平移向量。
(3)非線性優(yōu)化
圖1 試驗的標(biāo)定板
采取極大似然準(zhǔn)則法對所得參數(shù)優(yōu)化。假如有n幅模板平面的圖像,而且在模板平面能標(biāo)定出m 個標(biāo)定點,那么通過(2)式能得到極大似然估計值。
其中mij代表在第i 幅圖像中第j 個像點,Ri代表第i 幅圖像旋轉(zhuǎn)矩陣;tj表示第i 幅圖像的平移向量;Mj表示為空間坐標(biāo)中第j 個點;畸變系數(shù)系數(shù)k1,k2初始值設(shè)置為0。
根據(jù)標(biāo)定算法實現(xiàn)的過程,對一個攝像頭(名稱為WebCam,ID 為USBVID_0
C45&PID_62C0&MI_00)進(jìn)行標(biāo)定測試,其測試結(jié)果如下:
(1)攝像機內(nèi)參數(shù)
得到的攝像機內(nèi)參數(shù)數(shù)據(jù)如表1 所示,αu 、αu 是尺度因子,cx 和cy 是主點坐標(biāo)。
表1 內(nèi)部參數(shù)
表2 旋轉(zhuǎn)矩陣參數(shù)
(2)攝像機外參數(shù)數(shù)據(jù)
得到的攝像機外部參數(shù)的旋轉(zhuǎn)矩陣和平移矩陣分別如表2 所示,表2 中R1、R2、R3表示攝像機坐標(biāo)點相對于世界坐標(biāo)系對應(yīng)坐標(biāo)分別繞X、Y、Z 軸旋轉(zhuǎn)角度值。
本文在針孔模型的基礎(chǔ)上提出徑向畸變系數(shù),確立了一種精度比較高、應(yīng)用領(lǐng)域廣泛的攝像機成像模型,采用張正友攝像機標(biāo)定方法得到魯棒性較高的精確攝像機參數(shù),并且實驗過程操作簡單、靈活、實驗對設(shè)備與環(huán)境要求不高等優(yōu)點。
由于Harris 角點檢測算法沒有辦法得到亞像素級角點和可能會存在檢測誤差等問題,以至于獲取的角點可能不太精確,給后期標(biāo)定工作帶了未知的問題,可能導(dǎo)致標(biāo)定結(jié)果的精度不太高, 因此,提取更好的角點是今后研究的重點。
[1]W.Faig.Calibration of close-range photogrammetry systems: Mathematical formulation[J].Photogrammetric Eng.Remote Sensing,1975,41(12):1479-1486.
[2]R.Y.Tsai.A versatile camera calibration for high-technique accuracy 3D machine vision metrology using off-the-shelf TV camera and lenses[J].IEEE Journal of Robotics and Automation, 1987,RA-3(4):323-344.
[3]Moons T,Van Gool L,Proesmans M,et al,Affine reconstruction from perspective image pairs with a Relative object-camera translation between[J].IEEE Transaction Pattern Analysis Machine Intelligence, 1996,18(1):77-83.
[4]Triggs B.Auto-calibration and absolute quadric[J].In: Proceedings of Computer Vision and Pattern Recognition, 1997,604-614.
[5]馬頌德,張正友.計算機視覺:計算理論與算法基礎(chǔ)[M].北京:科學(xué)出社社,1998.
[6]Zhang zheng you.A Flexible Camera Calibration by viewing a Plane from Unknown Orientations, ICCV99.