楊建柏,趙 建 ,孫 強(qiáng)
(1.中國科學(xué)院長春光學(xué)精密機(jī)械與物理研究所,吉林 長春 130033;2.中國科學(xué)院大學(xué),北京 100049)
數(shù)字光柵投影三維測量技術(shù)作為主要的非接觸測量方法,因具有精度高、分辨率高、成本低、速度快等優(yōu)點(diǎn),在工業(yè)檢測、文物重建、逆向工程、輔助醫(yī)療等領(lǐng)域得到了廣泛應(yīng)用[1-4]。光柵投影三維測量技術(shù)是將正弦光柵圖案由投影儀投射到場景中并采集相應(yīng)的變形光柵圖案;然后通過算法處理獲取的調(diào)制光柵圖像,提取相位分布;進(jìn)而用已經(jīng)標(biāo)定好的幾何關(guān)系在三維空間中重建被測物表面[5-7]。
在光柵投影三維測量過程中,系統(tǒng)的參數(shù)標(biāo)定精度是保證測量精度的關(guān)鍵。相機(jī)的標(biāo)定技術(shù)已經(jīng)發(fā)展的很成熟[8?11],而投影儀不能像相機(jī)那樣可以找到像素點(diǎn)與世界坐標(biāo)的準(zhǔn)確關(guān)系,因此一直是研究的重點(diǎn)。為解決這一問題,研究人員提出了很多有效的方法,包括基于坐標(biāo)映射的投影儀標(biāo)定方法[12?15]和基于坐標(biāo)變換的投影儀標(biāo)定方法[16?18]。與基于坐標(biāo)映射的標(biāo)定方法相比較,基于坐標(biāo)變換的標(biāo)定方法因不需投射大量的圖案,操作簡單,易于計(jì)算,應(yīng)用十分廣泛?;谧鴺?biāo)變換的投影儀標(biāo)定方法是將生成的帶有特征點(diǎn)的圖案投射到標(biāo)定板上,采集到同時(shí)帶有標(biāo)定板特征和投射特征點(diǎn)的圖像,然后提取投射特征點(diǎn)在圖像中的坐標(biāo),再使用已標(biāo)定的相機(jī)參數(shù)求得投射特征點(diǎn)在標(biāo)定板上的位置。
然而傳統(tǒng)的基于坐標(biāo)變換的投影儀標(biāo)定方法存在兩個(gè)主要問題:投射到標(biāo)定板上的圖案會與已有的標(biāo)定板圖案發(fā)生干擾,影響投射特征點(diǎn)與板上特征點(diǎn)的提??;使用已標(biāo)定好的相機(jī)參數(shù)計(jì)算投影儀的像素變換,產(chǎn)生了相機(jī)參數(shù)的誤差傳遞,限制了標(biāo)定精度。為了解決圖案干擾問題,Audet[16]提出了使用二次投影的方式將特征點(diǎn)投射到標(biāo)定板空白位置,這樣便可同時(shí)采集標(biāo)定板上的特征點(diǎn)圖案和投射特征點(diǎn)圖案。為了防止相機(jī)參數(shù)的誤差傳遞,Anwar 等[17]提出了一種固定相機(jī)和標(biāo)定板,移動投影儀進(jìn)行標(biāo)定的方法,從而避免了相機(jī)的標(biāo)定誤差轉(zhuǎn)遞,但是該方法無法計(jì)算系統(tǒng)的整體參數(shù)。高治華等[18]使用全局單應(yīng)性矩陣進(jìn)行坐標(biāo)變換,避免了相機(jī)參數(shù)的誤差傳遞,但全局單應(yīng)性矩陣不能準(zhǔn)確反映投影平面與標(biāo)定板平面的變換關(guān)系,需要對誤差使用四次函數(shù)進(jìn)行擬合并補(bǔ)償,計(jì)算復(fù)雜,操作不便。
為了解決上述問題,本文提出了一種新的投影儀標(biāo)定方法:采用二次投影技術(shù)解決圖案干擾問題;對投射特征點(diǎn)及周圍標(biāo)定板特征點(diǎn)進(jìn)行建模,使用交比不變性計(jì)算投射特征點(diǎn)在標(biāo)定板的位置。這種坐標(biāo)變換方法未使用相機(jī)參數(shù),避免了誤差傳遞,有較高的精度。
投影儀可以看作是相機(jī)的逆過程,因此,投影儀同樣也可以用針孔模型以及徑向和切向鏡頭畸變來描述[12]。如圖1 所示,為了描述標(biāo)定板上的特征點(diǎn)與相機(jī)成像平面上的像素點(diǎn)以及投影儀平面像素點(diǎn)之間的對應(yīng)關(guān)系,設(shè)置3 個(gè)坐標(biāo)系,包括世界坐標(biāo)系OW?XWYWZW、相機(jī)坐標(biāo)系Oc?XcYcZc、投影儀坐標(biāo)系Op?XpYpZp。
圖1 測量系統(tǒng)簡化示意圖Fig.1 Schematic diagram of simplified measurement system
圖1 中,P(XW,YW,ZW)表示標(biāo)定板上特征點(diǎn)的三維坐標(biāo),Pp(up,vp)表示投影儀平面投射到該特征點(diǎn)的對應(yīng)像素點(diǎn)坐標(biāo),則Pp(up,vp)與P(XW,YW,ZW)之間的關(guān)系為:
其中,sp為尺度因子,Ap為投影儀的內(nèi)參矩陣,αp=fp/dup,βp=fp/dvp,fp為投影儀鏡頭的焦距,dup和dvp是兩個(gè)坐標(biāo)軸上的像素尺寸,(up0,vp0)為投影儀的主點(diǎn)坐標(biāo),γp為兩個(gè)坐標(biāo)軸的傾斜程度。Rp和Tp為投影儀的旋轉(zhuǎn)矩陣和平移矩陣。如果將世界坐標(biāo)系設(shè)置在標(biāo)定板的表面,即Z=0,則上式可簡化為:
投影儀的鏡頭也存在畸變,需要對其進(jìn)行校正。存在畸變的情況下,理想的投影儀平面像素坐標(biāo)(up,vp)和畸變后像素坐標(biāo)(upd,vpd)之間的關(guān)系為:
在二次投影方法中,首先需要找到相機(jī)和標(biāo)定板之間的單應(yīng)性,
也可以寫成,
圖2 基于二次投影的防圖案干擾方法Fig.2 Method for preventing pattern interference based on secondary projection
相對于其他防圖案干擾方法,這種方法操作簡單,空間利用率高,一張圖即可包含兩種模式的特征點(diǎn),對于相應(yīng)特征點(diǎn)的提取更加有效、準(zhǔn)確,應(yīng)用十分廣泛。
如果忽略相機(jī)畸變,則相機(jī)成像即為標(biāo)定板平面的射影變換,可以利用射影變換的性質(zhì)來計(jì)算成像平面與標(biāo)定板平面的變換關(guān)系。其中,交比是射影變換中最重要的不變量之一[19]。如果平面中A,B,C,D為共線的4 個(gè)點(diǎn),則它們的交比可以寫成:
射影變換示意圖如圖3 所示。
圖3 射影變換示意圖Fig.3 Schematic diagram of projective transformation
如圖3 所示,由射影變換將直線L1上共線的4 個(gè)點(diǎn)a,b,c,d映射到L2上的4 個(gè)共線點(diǎn)A,B,C,D,則有:
在標(biāo)定板平面和成像平面分別找到滿足上式對應(yīng)關(guān)系的共線點(diǎn)。使用投影儀標(biāo)定算法時(shí),最重要的便是找到標(biāo)定板上特征點(diǎn)與投影儀圖像上相應(yīng)點(diǎn)的對應(yīng)關(guān)系。在標(biāo)定過程中,投影儀投射出的特征點(diǎn)坐標(biāo)是已知的,因此如何找到特征點(diǎn)在標(biāo)定板上的對應(yīng)位置是投影儀標(biāo)定能否準(zhǔn)確的關(guān)鍵。在采集到的有投射特征點(diǎn)的標(biāo)定板圖像中,通過圖像處理可以獲得較高精度的標(biāo)定板特征點(diǎn)的像素位置和投射特征點(diǎn)的像素位置。而在標(biāo)定板平面坐標(biāo)系中,特征點(diǎn)的位置已知,這樣只要找到其中共線點(diǎn)的對應(yīng)關(guān)系,即可通過射影幾何中的交比不變性求得在標(biāo)定板平面上投射特征點(diǎn)的位置,進(jìn)而完成投影儀的標(biāo)定。
利用交比不變性求取投射特征點(diǎn)在標(biāo)定板坐標(biāo)系中的坐標(biāo)值,首先需要構(gòu)造出4 個(gè)共線點(diǎn),其中包含所要求取的位置[14]。如圖4 所示,AW,BW,CW,DW為標(biāo)定板上相鄰的4 個(gè)已知位置的標(biāo)志點(diǎn),EW為直線AWCW與BWDW的交點(diǎn),PW為投影儀投射的特征點(diǎn)在標(biāo)定板上的位置。使用二次投影技術(shù)時(shí),投影特征點(diǎn)的位置范圍基本可以確定。假設(shè)PW點(diǎn)位置如圖4 所示,BWPW與直線AWCW交于點(diǎn)FW,AWPW與直線BWDW交于點(diǎn)GW。
圖4 交比構(gòu)成示意圖Fig.4 Schematic diagram of cross-ratio construction
AW,BW,CW,DW通過射影變換在圖像平面的對應(yīng)點(diǎn)為AC,BC,CC,DC,如圖4 所示。由于鏡頭存在畸變,所有連線都會有一定的失真,但是,由于AW,BW,CW,DW包圍的區(qū)域較小,因此可以近似認(rèn)為該區(qū)域與AC,BC,CC,DC所包圍的區(qū)域?yàn)橐粋€(gè)平面,形成沒有畸變影響的射影變換。點(diǎn)EC,F(xiàn)C,GC,PC對應(yīng)圖中的EW,F(xiàn)W,GW,PW。這樣,共線的兩組點(diǎn)AW、EW、FW、CW和BW、EW、GW、DW的交比不變性可表示為:
設(shè)向量a=AW,b=EW?AW,c=BW,d=EW?BW,則
根據(jù)采集到的圖像提取的特征點(diǎn)坐標(biāo)可以求得交比(AC,EC;FC,CC)及(BC,EC;GC,DC),也就是交比(AW,EW;FW,CW)及(BW,EW;GW,DW)的值,不妨分別設(shè)為k和k′,則可求得
由此可求得點(diǎn)FW,GW,即可得到直線AWGW和BWFW,它們的交點(diǎn)即為所要求的投射到標(biāo)定板上的位置PW。這樣就可以求得投影儀特征點(diǎn)與標(biāo)定板位置之間的對應(yīng)關(guān)系。再利用張正友提出的相機(jī)標(biāo)定方法,即可對投影儀進(jìn)行精確標(biāo)定。投射特征點(diǎn)在標(biāo)定板位置的計(jì)算是通過對相機(jī)采集圖像進(jìn)行特征點(diǎn)提取,計(jì)算出來的,因此與相機(jī)標(biāo)定結(jié)果無關(guān),不會受它的誤差干擾。與全局單應(yīng)性矩陣方法相比,構(gòu)造交比的區(qū)域更符合射影變換的性質(zhì),因此精度更高,且整體實(shí)驗(yàn)不用復(fù)雜的操作即可完成,更簡單準(zhǔn)確。
根據(jù)上述的基于交比不變性的投影儀標(biāo)定方法,標(biāo)定過程可歸納為以下幾個(gè)步驟:
(1)將投影儀和相機(jī)固定在實(shí)驗(yàn)臺上,標(biāo)定板放置在相機(jī)視野內(nèi),將帶有已知位置十字標(biāo)記的圖案輸入到投影儀中,并投射到標(biāo)定板上,保證4 個(gè)十字圖案均在標(biāo)定板上呈現(xiàn)且十字中心盡量沒有遮擋,用相機(jī)采集圖像并保存。
(4)將新的投影圖案輸入到投影儀,投射到標(biāo)定板上,并用相機(jī)采集圖像并保存。
(5)步驟(4)采集的二次投影圖像中,投射標(biāo)志點(diǎn)為白色圓點(diǎn),將圖像進(jìn)行灰度翻轉(zhuǎn),使用OPENCV 中用于相機(jī)標(biāo)定的函數(shù)findCirclesGrid提取出這些投射標(biāo)志點(diǎn)在圖像中的中心像素坐標(biāo),并找到其對應(yīng)的鄰近的標(biāo)定板標(biāo)志點(diǎn)的坐標(biāo),在標(biāo)定板坐標(biāo)系中找到這些標(biāo)志點(diǎn)的位置,使用3.3 節(jié)所提出的交比不變性法計(jì)算出投射標(biāo)志點(diǎn)在標(biāo)定板坐標(biāo)系中的位置。
(6)變換標(biāo)定板的姿態(tài),并重復(fù)(1)到(5)的步驟,至少需要3 種不同的姿態(tài)。
(7)用張正友相機(jī)標(biāo)定方法[8]估計(jì)投影儀的內(nèi)部參數(shù)和畸變系數(shù)。
為驗(yàn)證本文提出方法的正確性,搭建了實(shí)驗(yàn)系統(tǒng),根據(jù)上述步驟對提出方法的有效性進(jìn)行驗(yàn)證。圖5 為搭建的實(shí)驗(yàn)系統(tǒng)圖,由相機(jī)、投影儀及標(biāo)定板構(gòu)成。本實(shí)驗(yàn)所用相機(jī)為大恒水星系列MER-131-210,分辨率為1 280×1 024;投影儀為DLP6500,分辨率為1 920×1 080;標(biāo)定板為白色底板,黑色圓形標(biāo)志點(diǎn)作為特征點(diǎn),這樣在空白位置投射標(biāo)志點(diǎn),更加清晰,易于提取。投射的標(biāo)志點(diǎn)為圓形,這樣從圖像中提取的標(biāo)志點(diǎn)中心更加準(zhǔn)確。
圖5 實(shí)驗(yàn)系統(tǒng)Fig.5 Experimental system
根據(jù)上述步驟,在每個(gè)姿態(tài)下采集一幅帶有投射十字標(biāo)志的標(biāo)定板圖像,如圖6 所示,本實(shí)驗(yàn)將標(biāo)定板放置了9 個(gè)不同的姿態(tài),選取其中3 個(gè)姿態(tài)來示意說明。
圖6 第一次投影并采集的圖像:(a)姿態(tài)1,(b)姿態(tài)2,(c)姿態(tài)3Fig.6 The acquired images for the first projection:(a)gesture 1,(b)gesture 2,(c)gesture 3
圖7 投射位置示意圖Fig.7 Schematic diagram of the projection position
投射位置示意圖和生成的二次投影圖像如圖8 和圖9 所示。第一次投影處理完畢,將得到的二次投影圖案輸入到投影儀中,投射到標(biāo)定板并采集,如圖10 所示。從二次采集的圖像中提取出投射標(biāo)志點(diǎn)的像素坐標(biāo),即可根據(jù)3.3 小節(jié)中的方法計(jì)算出在標(biāo)定板坐標(biāo)系下,投射標(biāo)志點(diǎn)的坐標(biāo),完成標(biāo)定。
圖8 各姿態(tài)投射位置圖:(a)姿態(tài)1,(b)姿態(tài)2,(c)姿態(tài)3Fig.8 Projection positions of each gesture:(a)gesture 1,(b)gesture 2,(c)gesture 3
圖9 各姿態(tài)生成投射標(biāo)志點(diǎn)圖案:(a)姿態(tài)1,(b)姿態(tài)2,(c)姿態(tài)3Fig.9 The generated projection point patterns of each gesture:(a)gesture 1,(b)gesture 2,(c)gesture 3
圖10 二次投影后采集的標(biāo)定板圖案:(a)姿態(tài)1,(b)姿態(tài)2,(c)姿態(tài)3Fig.10 Calibration plate patterns acquired after the second projection:(a)gesture 1,(b)gesture 2,(c)gesture 3
根據(jù)上述實(shí)驗(yàn)步驟,獲得了較精確的標(biāo)定結(jié)果。表1 和表2 列出了本方法和需要相機(jī)參數(shù)標(biāo)定法以及全局單應(yīng)性標(biāo)定法的實(shí)驗(yàn)結(jié)果。
表1 標(biāo)定的投影儀內(nèi)部參數(shù)Tab.1 Calibrated intrinsic parameters of the projector
表2 標(biāo)定的投影儀鏡頭畸變系數(shù)Tab.2 Calibrated lens distortion coefficients of the projector
為了驗(yàn)證該方法的有效性,對3 種方法的反投影誤差進(jìn)行了評估,得到的反投影誤差如圖11 所示。表3 列出了反投影誤差在各軸上的標(biāo)準(zhǔn)差(STD)和最大值(MAX)。
從圖11 和表3 可以明顯看出,需要相機(jī)參數(shù)輔助計(jì)算的標(biāo)定方法,因?yàn)橐肓讼鄼C(jī)的標(biāo)定誤差,因此反投影誤差最大,其標(biāo)準(zhǔn)差是(0.227 5,0.226 4)像素,誤差的最大值是1.222 像素。而使用全局單應(yīng)性變換的標(biāo)定方法,避免了相機(jī)標(biāo)定誤差的傳遞,反投影誤差有所降低,其標(biāo)準(zhǔn)差是(0.139 7,0.099 7)像素,誤差的最大值是0.561 7 像素。本文提出的基于交比不變性的投影儀標(biāo)定方法,采用二次投影技術(shù)解決了圖案干擾問題,利用交比不變性求取投射在標(biāo)定板上的特征點(diǎn)位置,避免了相機(jī)標(biāo)定誤差的引入,而且構(gòu)造交比的區(qū)域更符合射影變換的性質(zhì),反投影誤差最低,其標(biāo)準(zhǔn)差是(0.064 5,0.060 1)像素,其最大值是0.242 1 像素。
圖11 幾種方法的反投影誤差結(jié)果。(a)需要相機(jī)參數(shù)法;(b)全局單應(yīng)性變換法;(c)本文方法Fig.11 Reprojection error distribution of different methods.(a)Method requiring camera parameters;(b)the global homography transformation method;(c)the method proposed in this paper
表3 幾種方法的反投影誤差Tab.3 Reprojection errors of different methods(pixel)
采用本方法可以同時(shí)直接標(biāo)定相機(jī),獲得整個(gè)三維測量系統(tǒng)的參數(shù)。相機(jī)內(nèi)部參數(shù)標(biāo)定結(jié)果如表4 所示。
表4 相機(jī)內(nèi)部參數(shù)和畸變系數(shù)標(biāo)定結(jié)果Tab.4 Calibration results of camera intrinsic parameters and distortion coefficients
相機(jī)的反投影誤差的標(biāo)準(zhǔn)差在x,y兩坐標(biāo)軸分別為0.065 8 和0.053 9 像素,與投影儀的反投影誤差的標(biāo)準(zhǔn)差在同一個(gè)量級。誤差示意圖如圖12 所示。
同時(shí)標(biāo)定相機(jī)和投影儀之后,以投影儀作為參考,可得到兩設(shè)備的相對外部參數(shù)矩陣,如式(20)和式(21)所示。
得到外部參數(shù)后,結(jié)合內(nèi)部參數(shù)即可獲得整體測量系統(tǒng)的參數(shù),從而完成系統(tǒng)標(biāo)定。根據(jù)標(biāo)定的內(nèi)外參數(shù),以投影儀作為世界坐標(biāo)系原點(diǎn),標(biāo)定后的三維測量系統(tǒng)示意圖如圖13(彩圖見期刊電子版)所示。其中左側(cè)為投影儀,右側(cè)為相機(jī),不同顏色的特征點(diǎn)代表不同的標(biāo)定板姿態(tài)。從圖中可以看出相機(jī)和投影儀的空間相對位置關(guān)系,以及標(biāo)定過程中每個(gè)姿態(tài)下標(biāo)定板上各個(gè)特征點(diǎn)的世界坐標(biāo)。
圖12 相機(jī)標(biāo)定反投影誤差示意圖Fig.12 Schematic diagram of reprojection error in camera calibration
圖13 整體系統(tǒng)三維示意圖Fig.13 3 D schematic diagram of the system
在數(shù)字光柵投影三維測量系統(tǒng)中,投影儀的參數(shù)標(biāo)定直接影響著整個(gè)系統(tǒng)的測量精度。為了提高投影儀的標(biāo)定精度,使用二次投影方法解決了投射圖案與標(biāo)定板圖案的干擾問題,使用交比不變性求取標(biāo)定板上投射標(biāo)志點(diǎn)的位置,避免了相機(jī)標(biāo)定參數(shù)的誤差傳遞,并且交比的構(gòu)造區(qū)域更符合射影變換的性質(zhì),因此具有更高的精度。與需要相機(jī)參數(shù)的傳統(tǒng)標(biāo)定方法以及使用全局單應(yīng)性變換的標(biāo)定方法進(jìn)行了實(shí)驗(yàn)對比。結(jié)果表明,采用本方法,其反投影誤差的最大值分別從1.222 像素和0.561 7 像素降到了0.242 1 像素,標(biāo)準(zhǔn)差分別從(0.227 5,0.226 4)像素和(0.139 7,0.099 7)像素降到了(0.064 5,0.060 1)像素。另外,采用本文的方法,在標(biāo)定投影儀的同時(shí)可以直接標(biāo)定相機(jī),從而獲得整個(gè)三維測量系統(tǒng)的標(biāo)定參數(shù)。