高秀麗, 遲瑞娟, 王建強
(1.中國農(nóng)業(yè)大學(xué) 車輛人機工程與智能控制研究室,北京 100083;2.清華大學(xué) 汽車安全與節(jié)能國家重點實驗室,北京 100084)
?
采用立體標(biāo)定板的魚眼相機快速標(biāo)定方法
高秀麗1, 遲瑞娟1, 王建強2
(1.中國農(nóng)業(yè)大學(xué) 車輛人機工程與智能控制研究室,北京 100083;2.清華大學(xué) 汽車安全與節(jié)能國家重點實驗室,北京 100084)
針對目前魚眼相機標(biāo)定過程繁瑣的問題,進行了魚眼相機快速標(biāo)定方法的研究。設(shè)計了一種由三塊黑白棋盤組成、帶有紅色邊界線的立體標(biāo)定板;對標(biāo)定圖像依據(jù)棋盤所屬平面進行圖像分割,并對每部分分別檢測角點,建立二維圖像坐標(biāo)與三維世界坐標(biāo)的映射;選用折反射成像模型,提出了適用于立體標(biāo)定法的參數(shù)求解方法。進行了該立體標(biāo)定法與常用平面多圖標(biāo)定法的對比實驗,通過圖像畸變校正效果和圖像坐標(biāo)逆投影至世界坐標(biāo)的精度,驗證標(biāo)定精度。實驗表明:立體標(biāo)定法可以實現(xiàn)與平面多圖標(biāo)定方法同樣高的標(biāo)定精度,且具有較好的魯棒性;同時該標(biāo)定法極大簡化了標(biāo)定操作流程,縮短了標(biāo)定時間。
魚眼相機;成像模型;標(biāo)定方法;標(biāo)定可靠性;圖像分割;參數(shù)優(yōu)化
近年來,魚眼相機由于其超大的視場范圍,在全景視覺、機器人導(dǎo)航、虛擬現(xiàn)實及視覺監(jiān)控等領(lǐng)域中得到廣泛應(yīng)用。然而大視場同時也帶來嚴(yán)重的圖像畸變,影響人眼直觀的視覺感受以及圖像信息的利用。為了對圖像畸變進行校正,需要進行魚眼相機標(biāo)定[1]。標(biāo)定選用的成像模型方面,大多根據(jù)徑向畸變和切向畸變建模,也有多項式逼近模型、拋物面投影模型、球面投影模型等等[2-5]。標(biāo)定方法方面,主要分為傳統(tǒng)標(biāo)定法、主動視覺法和自標(biāo)定法。其中傳統(tǒng)標(biāo)定法標(biāo)定過程相對復(fù)雜,但精度最高[6-10]。魚眼相機標(biāo)定對精度要求較高,因而采用傳統(tǒng)標(biāo)定法。
用傳統(tǒng)標(biāo)定法對魚眼相機進行標(biāo)定時,由于魚眼相機的大視場,單幅圖像中標(biāo)定板難以覆蓋整幅圖像從而導(dǎo)致標(biāo)定誤差增大。為彌補這一缺陷,一般采用多圖標(biāo)定法,將平面標(biāo)定板放置于相機前不同的位置采集多張圖像,以獲得分布范圍較大的標(biāo)定原始數(shù)據(jù)。該方法需多次擺放棋盤并采集圖像,對于某些需要快速安裝并完成標(biāo)定的場合并不適用,比如在生產(chǎn)線上批量裝配車載相機時。針對這一問題,本文提出一種立體標(biāo)定法,利用三塊平面黑白棋盤搭建立體標(biāo)定板,采集一幅圖像即可實現(xiàn)快速標(biāo)定。
1.1 成像模型
相機標(biāo)定首先要建立成像模型。本文選用Scaramuzza提出的折反射模型[5]作為魚眼相機成像模型。
折反射模型坐標(biāo)系設(shè)定如圖1。其中,(X,Y,Z)為世界坐標(biāo),(x,y,z)為相機坐標(biāo),(u",v")為感光面坐標(biāo),(u′,v′)為輸出圖像坐標(biāo)。由世界坐標(biāo)系至相機坐標(biāo)系的映射模型為外部模型,與相機的安裝位置有關(guān),涉及參數(shù)稱為外參;由相機坐標(biāo)系至圖像坐標(biāo)系的映射模型為內(nèi)部模型,與相機的內(nèi)部構(gòu)造有關(guān),涉及參數(shù)稱為內(nèi)參。
圖1 成像模型坐標(biāo)系 Fig.1 Coordinate systems for imaging
世界坐標(biāo)系中的一點P經(jīng)相機成像落于感光面的P",由相機坐標(biāo)系原點O至P點的向量記為p,折反射模型對于如何由P"逆投影至P做以下假設(shè):
(1)
式中:λ為尺度變換因子,f(ρ)為包含相機畸變參數(shù)的非線性投影函數(shù),用泰勒級數(shù)展開多項式表示為
f(ρ)=a0+a1ρ+a2ρ2+…+anρn
(2)
成像面坐標(biāo)到圖像坐標(biāo)的映射需經(jīng)過仿射變換和中心偏移,關(guān)系式為
(3)
式中:c、d、e為仿射變換系數(shù),uc、vc為圖像中心偏移量。
以上參數(shù)為相機內(nèi)參。
相機坐標(biāo)(x,y,z)與世界坐標(biāo)(X,Y,Z)間存在旋轉(zhuǎn)和平移,其映射關(guān)系為
(4)
其中,旋轉(zhuǎn)矩陣:
平移向量:
二者構(gòu)成相機外參。
1.2 模型參數(shù)求取
要進行模型參數(shù)求取,首先需獲取多個樣點的世界坐標(biāo)(X,Y,Z)和圖像坐標(biāo)(u′,v′)。對標(biāo)定板拍攝圖像,其上樣點世界坐標(biāo)已知,通過圖像檢測可獲得樣點圖像坐標(biāo)。
文獻[4]中詳細(xì)介紹了平面多圖標(biāo)定法的模型參數(shù)求解方法。參考文獻中的方法,首先忽略仿射變換及圖像中心偏移量,以(u,v)表示圖像坐標(biāo),同時也可表示感光面坐標(biāo)。以下標(biāo)j代表樣點序號。將式(1)兩邊叉乘并展開后得到如下公式:
vj(r31Xj+r32Yj+r33Zj+t3)-
f(ρj)(r21Xj+r22Yj+r23Zj+t2)=0
(5)
f(ρj)(r11Xj+r12Yj+r13Zj+t1)-
uj(r31Xj+r32Yj+r33Zj+t3)=0
(6)
uj(r21Xj+r22Yj+r23Zj+t2)-
vj(r11Xj+r12Yj+r13Zj+t1)=0
(7)
其中式(7)為線性方程,以此為突破口進行參數(shù)求解。由于旋轉(zhuǎn)矩陣R內(nèi)部存在約束關(guān)系,不能直接簡單地對式(7)求解,需改進求解算法。
首先從標(biāo)定板的三個平面中選取樣點較多的一個平面,利用該平面內(nèi)的樣點坐標(biāo)求外參初值。因為無論選定哪個平面,都只涉及r1、r2、r3中的某兩個向量,不存在內(nèi)部約束,可簡單求解。然后令所有樣點的三維坐標(biāo)都參與計算,對外參進行優(yōu)化。
以下按選定X-O-Y面為例進行說明。在該平面上,所有點的坐標(biāo)Z=0,式(7)簡化為
uj(r21Xj+r22Yj+t2)-vj(r11Xj+r12Yj+t1)=0
(8)
該式中包含r11、r12、r21、r22、t1、t2六個參數(shù),可構(gòu)建超定線性方程組并求解[11]。然后根據(jù)旋轉(zhuǎn)矩陣R內(nèi)部存在的約束關(guān)系,即r1、r2、r3兩兩相互正交,且||r1||=||r2||=1,求得除t3外的其他外參。
然后用所有樣點數(shù)據(jù)根據(jù)式(7)對外參進行最小二乘迭代優(yōu)化[11-13]。迭代步長為
δk=(JkTJk)-1JkTεk
(9)
式中:ε表示上一次的估計誤差,J表示Jacob矩陣,下標(biāo)k代表第k次迭代。以函數(shù)g表示式(7)左部,Jacob矩陣如式(10)所示,式中n代表樣點數(shù)量:
(10)
每次迭代過程中,r11、r12、r21、r22、t1、t2由式(9)計算迭代步長后更新,而r13、r23則由更新后的r11、r12、r21、r22計算得到。
外參優(yōu)化完成后,利用式(5)、(6),采用最小二乘法[12]求解畸變參數(shù)a0,a1,…,an以及t3。
最后,采用Levenberg-Marquardt迭代優(yōu)化算法[14-15]對所有參數(shù)進行優(yōu)化。其中,c、d、e初值為1、0、0,uc、vc初值分別為圖像高寬的一半。至此,所有參數(shù)求解完成。
2.1 標(biāo)定板設(shè)計
立體標(biāo)定板由兩兩互相垂直的三塊黑白棋盤模板構(gòu)成,如圖2所示。此標(biāo)定板有如下優(yōu)點:棋盤格成像后角點(即黑白方格的頂點,作為參數(shù)求取所需的樣點)鄰域內(nèi)灰度梯度較大,易檢測;立體標(biāo)定板可包圍相機,使棋盤角點遍布整幅圖像;平面交界處繪有紅色邊界線,方便角點檢測前進行所屬平面劃分,確定三維世界坐標(biāo)。
2.2 標(biāo)定過程
1) 圖像采集
將標(biāo)定板置于待標(biāo)定相機前,調(diào)整標(biāo)定板位置及角度,使圖像中遍布棋盤角點,采集標(biāo)定圖像一張,如圖3。
圖2 立體標(biāo)定板Fig.2 Stereoscopic calibration board
圖3 立體標(biāo)定圖像Fig.3 Stereoscopic calibration image
2) 圖像分割與角點檢測
標(biāo)定圖像中沒有復(fù)雜的干擾物,只有黑白方格與紅色曲線,因而RGB三通道中,邊界線處像素點的R通道灰度值明顯高于G、B通道,其他區(qū)域三通道灰度值接近。求R通道與G或B通道的灰度差,采用自適應(yīng)閾值進行二值化處理,可將邊界線檢測出來[16],結(jié)果如圖4。
對三條邊界線分別進行二次多項式擬合,依據(jù)邊界線將原始圖像分割為三個區(qū)域,形成三幅子圖像,如圖5。
圖4 邊界線檢測Fig.4 Boundary detection
圖5 圖像分割Fig.5 Image segmentation
對三幅子圖像分別進行角點檢測并排序[3,6]。由于角點在子圖像中的坐標(biāo)與其在原始圖像的坐標(biāo)相同,因而可以得到原始圖像中所有角點的圖像坐標(biāo),如圖6所示。
圖6 角點檢測結(jié)果Fig.6 Corner detection result
3) 坐標(biāo)映射建立
各區(qū)域的角點都有一維世界坐標(biāo)為0,對應(yīng)圖5中三幅子圖像分別為Y=0,X=0,Z=0。根據(jù)棋盤方格邊長以及與世界坐標(biāo)原點間隔的方格數(shù),可得到所有角點的世界坐標(biāo)。從而建立起二維圖像坐標(biāo)與三維世界坐標(biāo)的一一映射,用于模型參數(shù)的求解。
4) 參數(shù)求解
依據(jù)標(biāo)定原理,求解魚眼相機參數(shù)。
以上標(biāo)定過程在VisualStudio2010平臺下,用C/C++語言結(jié)合OpenCV編寫標(biāo)定程序,輸入標(biāo)定圖像,得到魚眼相機參數(shù)。
圖3的標(biāo)定結(jié)果如下
a0=-1.536 2×102,a1=0,
a2=1.529 4×10-3,a3=-5.120 5×10-6
a4=1.846 7×10-8,c=0.999 2,
d=-1.301 2×10-5,e=2.750 1×10-3
uc=243.563 7,vc=323.453 1
上述相機參數(shù)中,只有平移向量T可以簡單測得,旋轉(zhuǎn)矩陣R由于旋轉(zhuǎn)角較難測量而無法得到真實值,內(nèi)參由于是抽象模型參數(shù)也無法獲取真實值。因而難以通過所得參數(shù)本身來評價標(biāo)定精度。
本文設(shè)計了四組對比實驗對標(biāo)定結(jié)果進行評價。
3.1 實驗設(shè)計
3.1.1 標(biāo)定實驗設(shè)計
設(shè)計四組標(biāo)定實驗如下:
A、B兩組采用立體標(biāo)定法,標(biāo)定板可在保證棋盤角點遍布整幅圖像的前提下隨意擺放;C、D兩組采用平面多圖標(biāo)定法,各自用平面棋盤拍攝八幅圖像進行標(biāo)定,其中C組嚴(yán)格控制棋盤擺放位置,使棋盤繞相機光軸等角度旋轉(zhuǎn)一周,D組棋盤擺放較為隨意,如圖7所示。
圖7 四組對比標(biāo)定實驗Fig.7 Four calibration experiments for contrast
3.1.2 驗證實驗設(shè)計
由于四組標(biāo)定所獲圖像的場景各不相同,要進行結(jié)果對比,需設(shè)計一個統(tǒng)一的驗證實驗。在雜物較少的水平地面上擺放一張棋盤,棋盤長約1m,寬約0.6m,相機距地面高度1.2m。采集魚眼圖像作為測試圖像,如圖8。
圖8 測試圖像Fig.8 Test image
結(jié)合標(biāo)定實驗所得四組相機內(nèi)參,對測試圖像標(biāo)定外參。此過程只需通過求解超定線性方程組即可得到外參[15]。由此獲得同一場景的四組相機內(nèi)外參數(shù),用于對比分析。
3.2 實驗結(jié)果及分析
3.2.1 魚眼圖像畸變校正
首先利用四組參數(shù)對測試圖像進行畸變校正,從視覺效果上進行主觀評價。為了便于分析校正效果,在校正基礎(chǔ)上進行俯視投影。結(jié)果如圖9所示。
在校正效果圖中,A、B、C組的整體校正效果較好,將棋盤及地面的方格較好的還原;D組還原效果稍差,圖像左下角和右下角可看出彎曲變形未完全校正。
3.2.2 世界坐標(biāo)估計
利用標(biāo)定所得相機參數(shù),用角點的圖像坐標(biāo)逆投影得到其世界坐標(biāo)的估計值,計算估計坐標(biāo)與真實坐標(biāo)的距離作為估計誤差,如圖10。世界坐標(biāo)估計誤差分析見表1。
由以上數(shù)據(jù)可看出四組實驗中世界坐標(biāo)的估計誤差相近。粗略計算世界坐標(biāo)估計值的相對誤差,棋盤中心與相機距離取1 300mm,估計誤差取3mm,則相對誤差為0.23%,可認(rèn)為誤差較小,說明四組標(biāo)定都有較高的標(biāo)定精度。
圖9 魚眼圖像校正效果Fig.9 Fisheye image correction results
圖10 世界坐標(biāo)估計誤差Fig.10 World coordinates estimation errors
實驗組估計誤差均值/mm估計誤差標(biāo)準(zhǔn)差/mmA1.460.73B1.490.76C1.320.67D1.650.84
其中,C組標(biāo)定精度最高,A組與B組精度極為接近,D組精度相對略低。分析原因,A組與B組采用立體標(biāo)定板,雖然標(biāo)定板位置隨意擺放,但都保證了棋盤角點遍布整幅圖像,數(shù)據(jù)分布較好,因而求得的參數(shù)精度較高;C組標(biāo)定板擺放位置經(jīng)過精心設(shè)計以保證角點分布較均勻且遍布圖像,D組為隨意放置,角點分布散亂,無法保證獲取的角點數(shù)據(jù)的分布情況,因而出現(xiàn)標(biāo)定精度上的差異。
在標(biāo)定過程的復(fù)雜程度上,A、B組采用的立體標(biāo)定法,只需采集一幅圖像,且因其標(biāo)定板的立體設(shè)計,使得擺放棋盤時很容易將角點覆蓋整幅圖像,極易操作;C、D組采用的平面多圖標(biāo)定法,需多次采集圖像,若要實現(xiàn)高精度標(biāo)定,需要兼顧每幅圖像中的棋盤位置,且若無輔助設(shè)備則人工操作較為繁瑣。
本文提出了一種利用立體標(biāo)定板對魚眼相機進行快速標(biāo)定的方法,根據(jù)魚眼相機成像特點設(shè)計專用的立體標(biāo)定板,并提出適用于立體標(biāo)定的參數(shù)求解方法。經(jīng)實驗驗證,與傳統(tǒng)的平面標(biāo)定法相比,該方法具有較高的標(biāo)定精度和魯棒性,同時簡化了標(biāo)定流程,操作簡易,耗時較短。對于車載魚眼相機安裝等需要進行批量標(biāo)定的場合,該方法具有實際應(yīng)用意義。
無論是本文所述方法還是傳統(tǒng)標(biāo)定法,由于魚眼圖像邊緣區(qū)域畸變較大,與圖像中心區(qū)域相比樣點較密集且棋盤方格變形較大,樣點檢測精度降低,對標(biāo)定參數(shù)的精度存在一定影響。本文認(rèn)為可以嘗試樣點非均勻分布的標(biāo)定板,改善邊緣樣點檢測精度以提高相機參數(shù)標(biāo)定精度。
[1]張廣軍.視覺測量[M].北京:科學(xué)出版社,2008:102.
[2]遲瑞娟, 趙木禎, 王建強, 等. 一種基于折反射相機的客車全景環(huán)視系統(tǒng)[J]. 哈爾濱工程大學(xué)學(xué)報, 2013, 34(2): 190-196.CHIRuijuan,ZHAOMuzhen,WANGJianqiang,etal.Atop-viewsystemforbusesbasedoncatadioptricfisheyecamera[J].JournalofHarbinengineeringuniversity, 2013, 34(2): 190-196.
[3]張春燕, 鄒偉. 一種魚眼鏡頭標(biāo)定板的設(shè)計、檢測與排序方法[J]. 計算機工程與應(yīng)用, 2015, 51(15): 188-192.ZHAGNChunyan,ZOUWei.Design,detectionandrankingmethodforakindoffisheyecamera'scalibrationboard[J].Computerengineeringandapplications, 2015, 51(15): 188-192.
[4]ZHANGZhengyou.Aflexiblenewtechniqueforcameracalibration[J].IEEEtransactionsonpatternanalysisandmachineintelligence, 2000, 22(11): 1330-1334.
[5]SCARAMUZZAD,MARTINELLIA,SIEGWARTR.Atoolboxforeasilycalibratingomnidirectionalcameras[C]//Proceedingsofthe2006IEEE/RSJInternationalConferenceonIntelligentRobotsandSystems.Beijing,China:IEEE, 2006: 5695-5701.
[6]舒娜. 攝像機標(biāo)定方法的研究[D]. 南京: 南京理工大學(xué), 2014: 2-4, 14-20.SHUNa.Researchoncameracalibrationmethods[D].Nanjing:NanjingUniversityofScienceandTechnology, 2014: 2-4, 14-20.
[7]嚴(yán)春燕.全景攝像機標(biāo)定方法綜述[J].電腦知識與技術(shù),2014(12):8291-8292.YANChunyan.Overviewofpanoramiccameracalibrationmethod[J].Computerknowledgeandtechnology, 2014(12): 8291-8292.
[8]KIMJS,KWEONIS.Cameracalibrationsystemusingplanarconcentriccirclesandmethodthereof:US,US7155030B2[P]. 2006.
[9]馬頌德,張正友.計算機視覺-計算理論與算法基礎(chǔ)[M].北京:科學(xué)出版社,1998.
[10]孟曉橋,胡占義.?dāng)z像機自標(biāo)定方法的研究與進展[J].自動化學(xué)報,2003,29(l):110-124.MENGXiaoqiao,HUZhanyi.Recentprogressincameraself-calibration[J].Actaautomaticasinica, 2003, 29(l): 110-124.
[11]李排昌. 矩陣與解線性方程組[J]. 中國人民公安大學(xué)學(xué)報: 自然科學(xué)版, 2011(3): 106-108.LIPaichang.Matrixandlinearequationssolution[J].JournalofChinesepeople'spublicsecurityuniversity:naturalscienceedition, 2011(3): 106-108.
[12]楊曙光. 超定方程組殘量極小化的定向擾動最小二乘法[J]. 武漢大學(xué)學(xué)報: 自然科學(xué)版, 1990(3): 17-25.YANGShuguang.Directionalperturbationleast-squaresmethodofminimizingtheresidualofanoverdeterminedsystemoflinearequations[J].JournalofWuhanuniversity:naturalscienceedition, 1990(3): 17-25.
[13]崔明根,章森,胡乃麗.求解超定線性方程組的直接修正法[J].哈爾濱工業(yè)大學(xué)學(xué)報,1990(2):20-27.CUIMinggen,ZHANGSen,HUNaili.Adirectcorrectionalgorithmforsolvingoverdeterminedlinearequations[J].JournalofHarbininstituteoftechnology, 1990(2): 20-27.
[14]DUC-HUNGL,CONG-KHAP,TRANGNTT,etal.ParameterextractionandoptimizationusingLevenberg-Marquardtalgorithm[C]//Proceedingsofthe2012FourthInternationalConferenceonCommunicationsandElectronics(ICCE).Hue,Vietnam:IEEE, 2012: 434-437.
[15]張鴻燕, 耿征.Levenberg-Marquardt算法的一種新的解釋[J]. 計算機工程與應(yīng)用, 2009, 45(19): 5-8.ZHANGHongyan,GENGZheng.NovelinterpretationforLevenberg-Marquardtalgorithm[J].Computerengineeringandapplications, 2009, 45(19): 5-8.
[16]GONZALEZRC,WOODSRE. 數(shù)字圖像處理[M]. 3版. 阮秋琦,阮宇智, 譯. 北京: 電子工業(yè)出版社, 2011: 445-475.
Fastfisheyecameracalibrationmethodusingstereoscopiccalibrationboard
GAOXiuli1,CHIRuijuan1,WANGJianqiang2
(1.LabofVehicleErgonomicsandIntelligentControl,ChinaAgriculturalUniversity,Beijing100083,China; 2.StateKeyLaboratoryofAutomotiveSafetyandEnergy,TsinghuaUniversity,Beijing100084,China)
Aimingatthecomplexityofcurrentfisheyecameracalibrationprocedures,astudyonfastfisheyecameracalibrationmethodiscarriedoutinthispaper.Astereoscopiccalibrationboardisdesigned,whichcomprisesthreechessboardswithredboundaries.Afterimagesegmentationaccordingtotheplanesthatdifferentchessboardzonesbelongto,andrunningcornerdetectiononeachpartseparately,mappingbetween2Dimagecoordinatesand3Dworldcoordinatesisachieved.Basedonacatadioptricimagingmodel,amethodisintroducedtocalculatetheparametersforstereoscopiccalibration.Experimentsareconductedtocomparethisstereoscopiccalibrationwithusualplane-multi-imagecalibration.Thecalibrationaccuracyisevaluatedbyresultsofdistortioncorrectionandtheaccuracyofprojectionfromimagecoordinatestoworldcoordinates.Resultsindicatethatstereoscopiccalibrationhasthesameaccuracyasthatofplane-multi-imagescalibrationandhasevengreaterrobustness.Moreover,stereoscopiccalibrationsimplifiesthecalibrationprocessandshortensthetimeinvolvedtoagreatextent.
fisheyecamera;imagingmodel;calibrationmethod;calibrationreliability;imagesegmentation;parameteroptimization
2015-05-06.
日期:2016-10-12.
國家高技術(shù)研究發(fā)展計劃項目(2009AA11Z216); 汽車噪聲振動和安全技術(shù)國家重點實驗室開放基金項目(Q10111922).
高秀麗(1988-),女,博士; 遲瑞娟(1969-),女,副教授,博士生導(dǎo)師,博士后.
遲瑞娟,E-mail:chiruijuan@vip.sina.com.
10.11990/jheu.201505017
TP
A
高秀麗, 遲瑞娟, 王建強. 采用立體標(biāo)定板的魚眼相機快速標(biāo)定方法[J]. 哈爾濱工程大學(xué)學(xué)報, 2016, 37(11): 1594-1599.GAOXiuli,CHIRuijuan,WANGJianqiang.Fastfisheyecameracalibrationmethodusingstereoscopiccalibrationboard[J].JournalofHarbinEngineeringUniversity, 2016, 37(11): 1594-1599.
網(wǎng)絡(luò)出版地址:http://www.cnki.net/kcms/detail/23.1390.u.20161012.0927.002.html