禹旺勛 YU Wang-xun;王愛菊 WANG Ai-ju
(①昆明理工大學津橋?qū)W院工學系,昆明 650106;②云南師范大學商學院會計學院,昆明 650106)
(①Department of Engineering,Oxbridge College,Kunming University of Science and Technology,Kunming 650106,China;②Department of Accounting,Yunnan Normal University Bussiness School,Kunming 650106,China)
攝像機標定是從二維圖像獲取三維信息的必不可少的步驟??臻g物體表面某點的三維幾何位置與其在圖像中對應(yīng)點之間的相互關(guān)系由幾何模型決定,通過試驗和計算獲得攝像機內(nèi)參數(shù)和外參數(shù)的過程稱為攝像機標定。傳統(tǒng)的標定方法是通過結(jié)構(gòu)的物體(如標定塊,標定板等)在圖像中的投影計算攝像機的內(nèi)參數(shù)。但是這種方法必須要有標定物,在很多實際應(yīng)用中難以實現(xiàn)。近年來,攝像機自標定技術(shù)以其應(yīng)用的靈活性得到了很多研究者的重視,但自標定方法最大的不足是魯棒性差。這主要是由于自標定方法不論何種形式出現(xiàn),均是基于絕對二次曲線(absolute conic)和絕對二次曲面(absolute quadric)的方法,需要求解復雜的多元非線性方程來計算攝像機的內(nèi)參數(shù),從而導致運算速度和結(jié)果的精度都不理想。而基于主動視覺的攝像機自標定可以克服這個缺點,它是通過控制攝像機做某些特定的運動來獲取圖像從而標定攝像機的內(nèi)參數(shù)。一般來說,攝像機的模型參數(shù)可以線性的求解,因而算法的魯棒性較高。但是線性模型一般不能準確的描述真實攝像機的幾何成像關(guān)系,因此對基于主動視覺的非線性攝像機自標定的研究具有十分重要的意義。因此,本文提出一種基于主動視覺的非線性攝像機自標定方法。
1.1 線性攝像機模型 攝像機的線性模型為針孔模型??臻g點的物理坐標和圖像坐標之間關(guān)系如下:
設(shè)空間中某一點P在世界坐標系與攝像機坐標系下的坐標分別是(Xw,Yw,Zw)T與(Xc,Yc,Zc)T,存在如下關(guān)系:
空間任一點P在圖像上的投影位置p,由透視投影得到如下關(guān)系式:
用齊次坐標與矩陣表示上述透視投影關(guān)系:
將式(1)與(2)代入(4)式,得到以世界坐標系表示的P點坐標與其投影點p的坐標(u,v)的關(guān)系:
其中,(u0,v0)為主點坐標;α=f/dx為圖像軸的尺度因子;β=f/dy為圖像軸的尺度因子;s=s′f為畸變因子;H 為3×4矩陣,稱為投影矩陣;矩陣K稱為內(nèi)部參數(shù)矩陣;[R t]攝像機的外部參數(shù)矩陣。
1.2 非線性攝像機模型 攝像機的非線性模型,是指成像過程不服從小孔模型。攝像機的非線性模型可使用下述公式來描述:
其中r2=u2+v2,式中的k1,k2,k3,k4稱為非線性畸變參數(shù)。線性模型參數(shù)的線性內(nèi)參數(shù)α,β,u0,v0,s與非線性模型的非線性內(nèi)參數(shù)k1,k2,k3,k4一起構(gòu)成了攝像機的所有內(nèi)參數(shù)。
1.3 主點坐標的確定 純軸向運動是指攝像機沿光軸方向做平移運動,純軸向運動特有的性質(zhì)使其能夠應(yīng)用于攝像機自標定中。根據(jù)Ma[4]提出的定理知道,當攝像機作純軸向運動時,因為光軸方向就是攝像機運動方向,所以對應(yīng)點連線交點就是運動方向與圖像平面的交點,所以對應(yīng)點連線的交點就是攝像機主點。
水平平移運動是指攝像機在作平移運動時,平移向量為(Xc,0,Zc);垂直平移運動是指攝像機作平移運動時,平移向量為(0,Yc,Zc)。
設(shè) 空 間內(nèi)任意兩點 X1=(Xwl,Ywl,Zwl,1)T,X2=(Xw2,Yw2,Zw2,1)T,對應(yīng)點連線交于同一點e。X1在攝像機作水平平移前后通過投影矩陣H1,H2投影到圖像平面上,投影點為m11=H1X1,m12=H2X1同樣可以得到 X2通過投影矩陣 H1,H2投影到圖像平面上的投影點m21,m22。mij表示第i個空間點在第j幅圖像上的投影點。則m11,m12確定了第一幅圖像上關(guān)于X1的對應(yīng)點連線,該直線可以表示為m11×m12。同樣,m21,m22確定了第一幅圖像上關(guān)于X2的對應(yīng)點連線,該直線可以表示為m21×m22。則對應(yīng)點連線的交點為e=(m11×m12)×(m21×m22)=(a,b,1),化簡后b的值恰好等于v0。即通過一次水平平移運動可以確定主點的v0值。同理可證在攝像機的畸變因子為零時,通過一次垂直平移運動可以確定主點u0的值。
2.1 非線性內(nèi)參數(shù)約束 在線性模型下,控制攝像機作n組兩正交運動,每組正交運動的FOE點,表示為eij(i=1,…,n;j=1,2),其中i表示第幾組正交運動,j表示該組正交運動的第幾次運動。如果攝像機作純平移運動,則為攝像機光心到對應(yīng)點連線的交點方向。利用每次運動前后由圖像對應(yīng)點連線的交點可以計算出相應(yīng)的eij。
設(shè)已求出eij在圖像平面上的坐標為(),則由式(1)和式(3),可以得到eij在攝像機坐標系下的坐標為
令 h=s′dy,上式兩邊同除以 f2得
于是,求解非線性內(nèi)參數(shù)問題等價于求解下述優(yōu)化問題
2.2 求解非線性內(nèi)參數(shù)算法 在本文中,將使用變度量法中的DFP技術(shù)來求解非線性最小問題[5]。為了敘述方便,將式(11)的變量改寫為 X=(x1,x2,x3,x4,x5,x6,x7,x8,x9)。
其中,(x1,x2,x3,x4,x5,x6,x7,x8,x9)=(α,β,h,u0,v0,k1,k2,k3,k4)為非線性的內(nèi)參數(shù)向量;則式(11)應(yīng)寫為
利用DFP算法對式(12)進行求解,從而得出非線性內(nèi)參數(shù)的解。
圖1為用于非線性攝像機自標定的其中的兩組正交運動下的圖像,其中十字點被取為圖像間的對應(yīng)點。利用OpenCV中的角點檢測函數(shù),檢測出一組正交運動下的兩幅圖像的點對應(yīng)圖像坐標,從而計算出FOE點,然后根據(jù)文中所述的基于主動視覺的自標定方法,計算出的非線性的攝像機所有內(nèi)參數(shù)如表1所示。
表1
圖1 正交運動下的兩組圖像
由于線性模型攝像機不能準確地描述真是攝像機的幾何成像關(guān)系,因此對非線性模型的攝像機自標定的研究有很重要的意義。文中探討了一種基于主動視覺的非線性攝像機自標定方法,通過真實實驗數(shù)據(jù)表明文中提出自標定方法是可行的,精度較高,有一定的實用價值。
[1]邱茂林,馬頌德,李毅.計算機視覺中攝像機定標綜述[J].自動化學報,2000,26(1):47-48.
[2]W.Faig.Calibration of close-range photogrammetry systems:Mathematical formulation.Photogrametric Eng.Remote Sensing,41(12):1479-1486,1975.
[3]馬頌德,張正友.計算機視覺-計算理論與算法基礎(chǔ)[M].北京科學出版社,1998.
[4]Ma S D.A self-calibration technique for active vision system[J].IEEE Trans on Robotics and Automation,1996,12(1):114-120.
[5]吳福朝.計算機視覺中的數(shù)學方法[M].北京:科學出版社,2008.
[6]Tsai R Y.An efficient and accurate camera calibration technique for 3D machine vision.In:proc.CV PR’96.364-374.
[7]Hu Zhan-Yi,Wu Fu-Chao.A review on some active vision based camera calibration techniques[J].Chinese Journal of Computer,2002,25(11):1149-1156.
[8]吳福朝,李華,胡占義.基于主動視覺的攝像機自標定方法的研究[J].自動化學報,2001,27(6):736-746.
[9]禹旺勛,王愛菊,劉云濤.基于主動視覺的攝像機線性自標定方法.價值工程,2013,32(8):258-259.