趙 越 王 娟 汪世敏
摘 要:從圖像中物體的度量結(jié)構(gòu)確定攝像機(jī)內(nèi)參數(shù)是不可缺少的步驟。根據(jù)透視投影正交滅點的形成原理和攝像機(jī)線性標(biāo)定原理,提出一種基于滅點的攝像機(jī)標(biāo)定方法。該方法的靶標(biāo)為立方體,只需要單幅圖像所獲得的正交滅點即可線性地求解攝像機(jī)的內(nèi)參數(shù)。實驗表明,該算法能準(zhǔn)確、可靠地估計攝像機(jī)的內(nèi)參數(shù),并與實際情況吻合得較好。
關(guān)鍵詞:攝像機(jī)標(biāo)定;正交;滅點;靶標(biāo);內(nèi)參數(shù)
中圖分類號:TP391
0 引 言
攝像機(jī)標(biāo)定在計算機(jī)視覺中有著重要的意義,它是獲取三維空間信息的前提和基礎(chǔ)。精確標(biāo)定攝像機(jī)內(nèi)外參數(shù)不僅可以直接提高測量精度,而且為后繼的立體圖像匹配與三維重建奠定了良好的基礎(chǔ);同時,標(biāo)定的實時性可以更好地滿足導(dǎo)航等工業(yè)機(jī)器視覺的需要。
目前的標(biāo)定方法很多,經(jīng)典的算法包括:Tsai提出的DLT標(biāo)定法;Heikkila提出的RAC標(biāo)定法;張正友提出的基于平面標(biāo)定法。文獻(xiàn)[1[CD*2]3]提出了多種線性標(biāo)定方法,但是需要拍攝的圖片數(shù)量多,且需要移動攝像機(jī)或靶標(biāo),對實驗的要求較高。文獻(xiàn)[4]提出了一種基于平面鏡的攝像機(jī)標(biāo)定方法,需要移動攝像機(jī)或平面鏡。文獻(xiàn)[5]采用主動發(fā)光的光點陣列標(biāo)定靶,利用2D標(biāo)定靶的精確移動來實現(xiàn)基于3D立體靶標(biāo)的攝像機(jī)標(biāo)定,它對實驗的要求較高。文獻(xiàn)[6]提出了利用滅點屬性求解攝像機(jī)內(nèi)外方位角的方法,對實驗的測量精度較高。文獻(xiàn)[7]提出了基于共線點的線性標(biāo)定方法,但求解過程復(fù)雜。文獻(xiàn)[8]提出了基于圓環(huán)點的標(biāo)定,但求解過程也相對較復(fù)雜。
確定滅點有多種方法:Barnard在1983 年首先提出了基于高斯球的滅點表達(dá)方法;E Lutton在此基礎(chǔ)上通過Hough變換確定了滅點;Criminisi A等[9[CD*2]10]等利用了最小二乘法整體平差模型,較精確地提取空間平行線在平面透視圖中的滅點。
首先利用單幅圖平行直線簇的交點擬合出滅點,再利用滅點理論,得出主點坐標(biāo),進(jìn)而求得全部內(nèi)參數(shù)。
1 攝像機(jī)模型
是理想的攝像機(jī)針孔成像模型,無任何畸變,且規(guī)定攝像機(jī)坐標(biāo)系與世界坐標(biāo)系重合。
2 線性模型攝像機(jī)定標(biāo)(DLT)
基于3D靶標(biāo),將式(1)寫成:
在求解的過程中加上約束條件‖[WTHX]m[WTBZ]3‖=1。
3 攝像機(jī)內(nèi)部參數(shù)的求解
采用一個立方體標(biāo)定攝像機(jī)的內(nèi)參數(shù)矩陣。立體靶標(biāo)如圖2所示。
設(shè)P﹐1,P﹐2,P璷分別為直線AB,AA′,A′D′的滅點。記為(u㏄﹐1,v㏄﹐1),(u㏄﹐2,v㏄﹐2),(u㏄璷,v㏄璷)。
先用最小二乘法擬合直線AA′的滅點P﹐2,再由平行于AA′的直線交點擬合得到。同理,也能求出直線AB,A′D′的滅點P﹐1,P璷。
滅點理論:由三個相互正交向量的滅點所構(gòu)成的三角形垂心作為攝像機(jī)的主點,即是o(u
將u0,v0代入式(14)可求得s,再將s代入式(12)或式(13)求出f2﹗,然后根據(jù)s =f2﹗/f2﹙,求出f2﹙。這樣就解出了攝像機(jī)的全部內(nèi)參數(shù)。И
4 實 驗
[JP2]實驗是用攝像頭拍攝的圖像進(jìn)行的。為了提取特征點的方便,采用了貼有棋盤格的立方體作為模板,拍攝了一幅圖片,如圖4所示。真實圖像大小為640×480像素。[JP]
先用線性模型攝像機(jī)定標(biāo),估計各點的世界坐標(biāo),求出攝像機(jī)內(nèi)參數(shù)。再用本文所述的方法標(biāo)定攝像機(jī)內(nèi)參數(shù)。
實驗步驟如下:
(1)輸入圖片,用OpenCV中的函數(shù)cvGod_ FeaturesToTrack提取角點坐標(biāo);
(2)通過平行直線簇,利用最小二乘法擬合出3個相互正交方向的滅點;
(3)利用式(5)~(7),求出主點玼0,v0;
(4)利用式(12)~(14),求出玣璾,f璿;
(5)輸出內(nèi)參數(shù)。
兩種算法的比較結(jié)果如表1所示。
參數(shù)DLT絕對誤差本文算法絕對誤差
玼0 142.71177.29277.565 542.434 5
玽0203.6636.34289.9249.92
玣璾1 234.654.61 168.111.9
玣璿1 342.6162.61 168.111.9[HJ0][HJ][HT5SS]
[JP2]為了檢驗該算法的魯棒性,對提取的圖像坐標(biāo)引入不同程度的噪聲σ。表2為在不同的噪聲下,計算內(nèi)參數(shù)的實驗結(jié)果。圖5是內(nèi)參數(shù)隨噪聲(Noise)的絕對誤差變化曲線。實驗結(jié)果表明,本文算法具有較好的魯棒性。 [HT6H][STHZ][JZ]表2 不同圖像噪聲的結(jié)果
5 結(jié) 語
文中提出了一種實時性好,操作簡單,精確度高的線性標(biāo)定法。該方法具有如下特點:標(biāo)定物為立方體;利用了滅點屬性;攝像機(jī)不需做任何的運動(標(biāo)定過程只需一幅圖像);整個標(biāo)定過程不需要求世界坐標(biāo);求解方法是線性的。實驗結(jié)果表明,算法具有較高的精度。