王景隆,曹益平,李城夢(mèng),付光凱,萬(wàn)瑩瑩,王亞品,王 璐
(四川大學(xué) 電子信息學(xué)院,成都 610064)
光學(xué)式三維測(cè)量具有高精度測(cè)量、非接觸性、無(wú)損測(cè)量等優(yōu)點(diǎn),已被廣泛用于逆向工程、生物與醫(yī)學(xué)工程、工業(yè)檢測(cè)、質(zhì)量控制等領(lǐng)域[1-5].其中相位測(cè)量輪廓術(shù)(PMP)[6-7]具有點(diǎn)對(duì)點(diǎn)相位計(jì)算及全場(chǎng)分析等優(yōu)點(diǎn),更倍受業(yè)界青睞.在PMP系統(tǒng)中,帶有相移量的正弦條紋由投影裝置將其逐一投射到被測(cè)物體表面,由成像裝置逐一對(duì)應(yīng)采集被物體表面調(diào)制的變形相移條紋,最后由數(shù)據(jù)處理裝置對(duì)采集的數(shù)據(jù)進(jìn)行處理,得到物體表面的相位分布[8].要得到被測(cè)物體的真實(shí)高度,就要建立相位到高度的映射關(guān)系.相位—高度映射關(guān)系的待定系數(shù),可由成像裝置光心與投影裝置光心之間的距離,參考面與投影裝置光心之間的距離以及兩裝置光軸之間的夾角等系統(tǒng)結(jié)構(gòu)參數(shù)確定,這種需要測(cè)量系統(tǒng)結(jié)構(gòu)參數(shù)的高度校準(zhǔn)方法為顯式校準(zhǔn)[9-10],但在實(shí)際測(cè)量中很難精確測(cè)量這些參數(shù)值.通常通過(guò)建立相位-高度映射關(guān)系,由已知平面高度與測(cè)得的對(duì)應(yīng)相位來(lái)標(biāo)定映射關(guān)系中的待定系數(shù),這種高度校準(zhǔn)方法為隱式校準(zhǔn)[11-13],避免了直接測(cè)量系統(tǒng)結(jié)構(gòu)參數(shù)困難的問(wèn)題.
傳統(tǒng)的相位—高度映射算法要求成像裝置光軸與投影裝置光軸共面且交于參考面內(nèi)的一點(diǎn),成像裝置光軸平行于參考平面的法線,參考面平行于兩裝置光心的連線,但在測(cè)量中要全部滿足這些條件是很苛刻的,在搭建系統(tǒng)時(shí)很難精確實(shí)現(xiàn).為此,業(yè)界學(xué)者對(duì)搭建的測(cè)量系統(tǒng)結(jié)構(gòu)進(jìn)行了改進(jìn),并提出了相應(yīng)的相位—高度映射算法.文獻(xiàn)[14]介紹了相位—高度的映射關(guān)系,并且證明了當(dāng)投影裝置光軸和成像裝置光軸不共面時(shí),傳統(tǒng)的相位—高度的映射關(guān)系也是適用的,但仍然要求參考面必須平行于投影裝置光心與成像裝置光心的連線.文獻(xiàn)[15]提出既不用保證參考面平行于投影裝置光心與成像裝置光心的連線,也不要求成像裝置光軸垂直參考面,但兩光軸必須共面且交于參考面一點(diǎn)的相位—高度映射關(guān)系.本文在傳統(tǒng)的相位—高度映射算法的基礎(chǔ)上,提出一種新的具有寬松約束的相位—高度映射算法.這種算法不要求投影光心和成像光心的連線平行于參考平面,也不要求投影光軸與成像光軸共面且交于參考面一點(diǎn),只要保證成像裝置光軸垂直于參考平面,即可實(shí)現(xiàn)相位到高度的映射.通過(guò)數(shù)學(xué)模型推導(dǎo)發(fā)現(xiàn)所提相位—高度映射中的待定系數(shù)不僅與系統(tǒng)的結(jié)構(gòu)參數(shù)有關(guān),也與參考平面的相位分布有關(guān).
投影裝置將帶有相移量的正弦條紋投影到被測(cè)物體表面,其光強(qiáng)I(x,y)為[16]
I(x,y)=R(x,y)[A(x,y)+B(x,y)cos(φ(x,y)+δ)].
(1)
式中:R(x,y)為物體表面不均勻的反射率,A(x,y)為背景光強(qiáng),B(x,y)為條紋對(duì)比度,φ(x,y)為受物體高度調(diào)制的相位分布,δ為條紋每次的相移量.對(duì)于N(N≥3)步相移法,光強(qiáng)In(x,y)為
(2)
式中n為N步相移法的步數(shù),由式(2)計(jì)算可得相位φ(x,y)為
此時(shí)相位φ(x,y)被截?cái)嘣诜凑泻瘮?shù)的主值范圍(-π,π]內(nèi),因而是不連續(xù)的,需要進(jìn)行相位展開(kāi)將其恢復(fù)成原有的相位分布,連續(xù)相位分布記為φ(x,y).要由物體的相位分布得到物體的三維形貌,需要建立相位—高度的映射關(guān)系.
傳統(tǒng)相位—高度映射算法和所提相位—高度映射算法的測(cè)量光路如圖1(a)、(b)所示:
圖1 測(cè)量原理
在圖1(a)中,DLP為數(shù)字投影裝置,CCD為成像裝置,P是DLP的光心,E是CCD的光心,PO是投影裝置的光軸,EO是CCD的光軸并垂直于參考面,PO和EO相交于參考平面上的O點(diǎn),D是物體上的任一點(diǎn).l是投影裝置光心到參考平面上O點(diǎn)的距離、d是兩裝置光心之間的距離、L是CCD光心與參考面之間的距離、θ是投影裝置光軸和CCD光軸之間的夾角,它們都是系統(tǒng)的結(jié)構(gòu)參數(shù).從圖1(a)分析可知,要求投影裝置的光心和CCD的光心連線與參考平面平行,并且要求兩光軸共面并交于參考面一點(diǎn).
圖1(b)中的P點(diǎn)、E點(diǎn)、A點(diǎn)、B點(diǎn)、D點(diǎn)、l以及L和圖1(a)中相同.DLP的光軸PO與參考面相交于O點(diǎn),CCD的光軸EO′垂直于參考面并交于O′點(diǎn),EF平行于OO′,平面PGH平行于參考面,交FO于G點(diǎn),交EO′于H點(diǎn).P點(diǎn)到G點(diǎn)之間的距離為d,DLP的光軸PO與FO之間的夾角為θ.由于DLP和CCD的光心和光軸都是不可見(jiàn)的,因此在實(shí)驗(yàn)中很難保證DLP與DLP光心的連線恰好平行于參考面,也難以保證兩裝置的光軸共面且恰好相交于參考平面上一點(diǎn).而在圖1(b)中,不再要求兩裝置的光心連線平行于參考平面,也不再要求兩光軸共面且交于參考面上一點(diǎn),只需保證CCD的光軸垂直于參考平面,以便于建立圖像坐標(biāo)與世界坐標(biāo)的簡(jiǎn)單映射.因而圖1(b)所示測(cè)量光路約束更寬松,更易于搭建.
(3)
式中φ為D點(diǎn)的相位,考慮到CCD探測(cè)器的陣列特性,式(3)可被寫為
文獻(xiàn)[14]提出當(dāng)系統(tǒng)結(jié)構(gòu)一定時(shí),a1(x,y)和b1(x,y)應(yīng)該是恒定不變的,可由標(biāo)定獲得.后來(lái),文獻(xiàn)[13]提出要考慮鏡頭畸變的影響,式(3)被修正為
(4)
式(4)在PMP系統(tǒng)中經(jīng)常用于系統(tǒng)標(biāo)定,以下簡(jiǎn)稱為L(zhǎng)i′s算法.
從圖1(b)可看出,兩裝置的光心連線PE與參考平面不平行, 且PO與EO′不共面,推導(dǎo)物體表面任一點(diǎn)D點(diǎn)的高度h的過(guò)程如下:
當(dāng)采用遠(yuǎn)心光路的PMP系統(tǒng)時(shí),在參考平面上看到的投影正弦光柵是等周期分布的,其周期為p0,在參考平面上的相位分布φ(x)是坐標(biāo)x的線性函數(shù)[17],記為
當(dāng)PMP系統(tǒng)是發(fā)散光路時(shí),正弦光柵被投影到參考平面上,φ(x)是x的非線性函數(shù),但是參考平面上每一點(diǎn)相對(duì)于參考點(diǎn)O的相位值是唯一的且單調(diào)變化的.此時(shí)參考平面上條紋周期的分布為[18]
(5)
從式(5)可看出,參考平面上的條紋周期p(x)與x成非線性的關(guān)系,各點(diǎn)的周期分布隨點(diǎn)的變化而改變.這種非線性給各點(diǎn)的相位計(jì)算帶來(lái)了不便.因此,在計(jì)算參考面上各點(diǎn)的相位值時(shí),將其映射到周期p0上.同樣,在計(jì)算物體上各點(diǎn)的相位時(shí),也將其映射到周期p0上,測(cè)得的物體上各點(diǎn)相位與對(duì)應(yīng)點(diǎn)在參考平面上的相位差,即反映了物體高度的相位信息.因此,可得圖1(b)中參考平面上A,B,C點(diǎn)的相位φ:
(6)
由于D點(diǎn)被投射到參考平面A點(diǎn)處,A點(diǎn)與D點(diǎn)具有相同的相位,即
(7)
由三角形BCD和OCF相似可得出
(8)
再由三角形BDA和PPA′相似可得出
(9)
(10)
(11)
式(10)即可寫為
(12)
式中:φC為參考平面的相位分布,φCD為物體上各點(diǎn)的連續(xù)相位與參考平面上對(duì)應(yīng)點(diǎn)相位的差值.
當(dāng)兩裝置的光心連線平行于參考平面且O與O′重合時(shí),圖1(b)與圖1(a)相同,此時(shí)從圖1(a)中可知lcosθ=L,由式(11)可知,b22=0,即式(12)可化為式(3).表明圖1(a)所示測(cè)量光路是圖1(b)所示測(cè)量光路的一個(gè)特例.
從式(12)可知,所提出的相位—高度的映射算法不僅與系統(tǒng)的結(jié)構(gòu)參數(shù)有關(guān),還與參考面上的相位分布有關(guān).所提算法對(duì)應(yīng)的系統(tǒng)結(jié)構(gòu),不要求投影裝置光心和成像裝置光心的連線平行于參考平面,也不要求投影光軸與成像光軸共面,使得系統(tǒng)的搭建更加容易.所以為了得到物體的真實(shí)高度,實(shí)現(xiàn)相位到高度的映射,所提算法相比傳統(tǒng)的算法更具優(yōu)勢(shì).當(dāng)考慮CCD探測(cè)器的陣列特性,可將式(12)表達(dá)為
(13)
式(13)φC(x,y)為參考平面的相位,可事先通過(guò)測(cè)量參考平面得到并存于計(jì)算機(jī).因此,在標(biāo)定a2(x,y)、b21(x,y)和b22(x,y)時(shí),則需要測(cè)量4個(gè)或者4個(gè)以上已知高度的平面(包括參考平面),以求出所測(cè)平面的連續(xù)相位,將平面的高度和對(duì)應(yīng)的相位代入式(13)中,求得對(duì)應(yīng)的a2(x,y)、b21(x,y)和b22(x,y)即完成標(biāo)定.
搭建的實(shí)驗(yàn)裝置如圖2所示,其中使用的數(shù)字光投影儀型號(hào)為PLED-W200 DLP,成像系統(tǒng)CCD型號(hào)為MVC1 000MF.測(cè)量前利用型號(hào)為Zolix TSA300-B的電動(dòng)平移臺(tái)帶動(dòng)一個(gè)標(biāo)準(zhǔn)平面沿z軸移動(dòng)并結(jié)合CCD圖像,反復(fù)調(diào)整CCD,直至CCD光軸垂直標(biāo)準(zhǔn)平面.
圖2 實(shí)驗(yàn)裝置
通過(guò)計(jì)算機(jī)產(chǎn)生周期為20像素的768×1 024大小的正弦光柵圖,采用5步相移技術(shù).使用標(biāo)準(zhǔn)平面相對(duì)于參考面沿z軸移動(dòng)預(yù)設(shè)高度的方法進(jìn)行參數(shù)標(biāo)定.考慮到CCD各像元之間的靈敏度差異性和隨機(jī)誤差的影響,a1(x,y),b1(x,y)和c1(x,y)應(yīng)該呈現(xiàn)具有一定波動(dòng)厚度的特征分布.在大量的系統(tǒng)標(biāo)定實(shí)驗(yàn)結(jié)果中選取兩組不同結(jié)構(gòu)參數(shù)下b1(x,y)的分布圖如圖3所示.圖3(a)為結(jié)構(gòu)參數(shù)1(Structural Parameters 1,SP1)下的實(shí)驗(yàn)結(jié)果,圖3(b)結(jié)構(gòu)參數(shù)2(Structural Parameters 2,SP2)下的實(shí)驗(yàn)結(jié)果.
圖3 b1(x,y)分布
從圖3可看出,在不同結(jié)構(gòu)參數(shù)下,b1(x,y)具有不同的波動(dòng)厚度且呈現(xiàn)不同的傾斜角度特征.在式(13)中1/φ(x,y)的系數(shù)可寫為b21(x,y)+b22(x,y)φC(x,y),為了比較兩者的區(qū)別,通過(guò)大量的實(shí)驗(yàn),發(fā)現(xiàn)b21(x,y)+b22(x,y)φC(x,y)是呈有一定波動(dòng)厚度且有一定傾角的斜平面的特征分布.兩組代表性的不同結(jié)構(gòu)參數(shù)下的實(shí)驗(yàn)結(jié)果如圖4所示,圖4(a)~(b)為結(jié)構(gòu)參數(shù)3(Structural Parameters 3,SP3)下的實(shí)驗(yàn)結(jié)果,圖4(c)~(d)為改變DLP和CCD的位置后重新測(cè)量的結(jié)果,即結(jié)構(gòu)參數(shù)4(Structural Parameters 4,SP4)下的一組實(shí)驗(yàn)結(jié)果.
圖4(a)為SP3下b1(x,y)的分布,b1(x,y)是一個(gè)具有一定傾角的斜面且具有一定波動(dòng)厚度,正如上圖3中所示.圖4(b)為SP3下b21(x,y)+b22(x,y)φC(x,y)的分布,也是一個(gè)具有一定傾角且有一定波動(dòng)厚度的斜平面.由圖4(a)和圖4(b)可知,二者的傾斜角大致相同,但是后者的斜面波動(dòng)厚度明顯小于前者且表面更光滑.由于波動(dòng)厚度是由測(cè)量誤差等因素引入的,波動(dòng)厚度越小則表征測(cè)量精度越高.由此可知,運(yùn)用1/φ(x,y)的系數(shù)為b21(x,y)+b22(x,y)φC(x,y)的式(13)進(jìn)行相位到高度的映射,重建效果更好,精度更高.
為了證明上述實(shí)驗(yàn)的可重復(fù)性,對(duì)測(cè)量系統(tǒng)的結(jié)構(gòu)參數(shù)進(jìn)行了多次改變,即隨意改變投影裝置和成像裝置的位置,然后進(jìn)行測(cè)量.圖4(c)、(d)為代表SP4下的一組實(shí)驗(yàn)數(shù)據(jù).結(jié)果同樣表明,圖4(d)和圖4(c)的傾斜角基本相同,但仍然是后者的斜平面的波動(dòng)厚度明顯小于前者.
圖4 兩組不同結(jié)構(gòu)參數(shù)(SP3和SP4)下驗(yàn)證b1(x,y)與b21(x,y)+b22(x,y)φC(x,y)的關(guān)聯(lián)性的實(shí)驗(yàn)結(jié)果
Fig.4 Experimental results of the correlation betweenb1(x,y) andb21(x,y)+b22(x,y)φC(x,y) under two groups of structure parameters SP3 and SP4
通過(guò)對(duì)上述實(shí)驗(yàn)結(jié)果的分析可知:在相同的結(jié)構(gòu)參數(shù)下,利用所提算法式(13)進(jìn)行標(biāo)定得到的b21(x,y)+b22(x,y)φC(x,y)的分布,其斜面波動(dòng)厚度要明顯小于利用式(4)標(biāo)定得到的b1(x,y)的分布的波動(dòng)厚度.正如上文所說(shuō)波動(dòng)厚度是由測(cè)量誤差等因素引入的,波動(dòng)厚度越小表征測(cè)量精度越高.因此,可表明所提算法在測(cè)量精度上要優(yōu)于傳統(tǒng)的算法,且所搭建的測(cè)量系統(tǒng)結(jié)構(gòu)也更易于實(shí)現(xiàn).
為了驗(yàn)證所提測(cè)量方法的精確性,測(cè)量3 mm到24 mm等若干已知高度平面的相位分布,并分別通過(guò)式(4)和式(13)進(jìn)行相位高度映射.得到平均絕對(duì)誤差(MAE)和均方根誤差(RMS)的對(duì)比結(jié)果如圖5所示.表1中列出其中3 mm、8 mm、16 mm 3個(gè)測(cè)量結(jié)果,包括平面真實(shí)高度h0,由兩種算法恢復(fù)出平面的平均高度havg,平均絕對(duì)誤差(MAE)和均方根誤差(RMS).
表1 對(duì)已知高度平面測(cè)量復(fù)結(jié)果對(duì)比
Tab.1 Comparison of measuring results of the planes with known heights mm
圖5 各平面的平均絕對(duì)誤差(MAE)和均方根誤差(RMS)對(duì)比
從表1和圖5可看出,所提算法所恢復(fù)平面的平均高度都比Li′s算法更接近平面的真實(shí)高度,同時(shí)平面的平均絕對(duì)誤差和均方根誤差也均小于Li′s算法.在高度平面較低的區(qū)域,Li′s算法恢復(fù)平面的精度較低,隨著測(cè)量平面高度的增加,Li′s算法所恢復(fù)平面的精度逐步提高并在測(cè)量高度大于10 mm的平面時(shí),其精度逐漸趨于穩(wěn)定,但仍低于所提算法的精度.而所提算法一直保持了較好的測(cè)量精度,較之更加穩(wěn)定.因此可得,所提的相位—高度映射算法的準(zhǔn)確性和可重復(fù)性都要優(yōu)于Li′s相位—高度映射算法.
為了驗(yàn)證該方法的實(shí)用性,對(duì)如圖6(a)中所示的“心”形物體進(jìn)行了三維形貌的測(cè)量.圖6(b)為由CCD采集所得的一幀物體變形條紋,圖6(c)為根據(jù)采集所得物體變形條紋中得到的物體截?cái)嘞辔坏男畔⒎植?圖8為分別采用Li′s算法和所提算法來(lái)實(shí)現(xiàn)相位到高度的映射對(duì)比效果.圖8(a)為所測(cè)“心”形物體的連續(xù)相位信息分布,圖8(b)為L(zhǎng)i′s算法重構(gòu)出的三維物體形貌.圖8(c)為所提算法重構(gòu)出的三維物體形貌.
圖6 “心”形物體測(cè)量數(shù)據(jù)
為了驗(yàn)證該方法在不同特征環(huán)境下的可重復(fù)性,對(duì)如圖7(a)中所示的“米奇”形物體進(jìn)行了三維形貌的測(cè)量.圖7(b)為由CCD采集所得的一幀物體變形條紋,圖7(c)為根據(jù)采集所得物體變形條紋中得到的物體截?cái)嘞辔坏男畔⒎植?圖9為分別采用Li′s算法和所提算法來(lái)實(shí)現(xiàn)相位到高度的映射對(duì)比效果.圖9(a)為所測(cè)“米奇”形物體的連續(xù)相位信息分布,圖9(b)為L(zhǎng)i′s算法重構(gòu)出的三維物體形貌.圖9(c)為所提算法重構(gòu)出的三維物體形貌.
圖7 “米奇”形物體測(cè)量數(shù)據(jù)
圖8 “心”形物體相位到高度的重構(gòu)結(jié)果
由圖8(b)可看出,Li′s算法雖然恢復(fù)出了物體的三維形貌,但是在一些局部區(qū)域出現(xiàn)了毛刺,使得在這些點(diǎn)上相位到高度的映射呈現(xiàn)難以對(duì)應(yīng)的關(guān)系,并且在圖8(b)中所重構(gòu)出的物體表面出現(xiàn)了一定失真.而由圖8(c)可看出,所提算法很好地恢復(fù)了物體面形,整體沒(méi)有出現(xiàn)毛刺現(xiàn)象,而且表面輪廓也比較光滑,使測(cè)量的精度得到了保證,有效實(shí)現(xiàn)了相位到高度的一一映射.對(duì)于高度更高的“米奇”形物體,由圖9(b)可看出,Li′s算法所重構(gòu)出物體的三維面形存在一定程度的失真,而由圖9(c)可看出,所提算法所重構(gòu)的面形區(qū)域則更加光滑,尤其是在面形頂部區(qū)域.并且所提算法的測(cè)量精度也較Li′s算法的高,綜上可得,所提出相位—高度映射算法在實(shí)現(xiàn)相位到高度的映射效果上要優(yōu)于Li′s算法.
圖9 “米奇”形物體相位到高度的重構(gòu)結(jié)果
本文從實(shí)驗(yàn)系統(tǒng)的實(shí)際光路出發(fā),考慮到實(shí)際光路難以精確達(dá)到理想模型要求,提出了一種新的具有寬松約束的相位—高度映射算法.這種算法既不需要滿足成像裝置光軸與投影裝置光軸共面且交于參考面內(nèi)的一點(diǎn),參考面平行于兩裝置光心的連線的要求,也不需要滿足兩光軸必須共面且交于參考面一點(diǎn)的要求.只要求成像裝置光軸垂直于參考平面,即可實(shí)現(xiàn)相位到高度的映射.理論分析和實(shí)驗(yàn)驗(yàn)證發(fā)現(xiàn),當(dāng)投影裝置光心與成像裝置光心的連線不平行于參考平面時(shí),相位—高度映射不只與系統(tǒng)的結(jié)構(gòu)參數(shù)有關(guān),還與參考平面的相位分布有關(guān).完成了對(duì)比測(cè)量實(shí)驗(yàn),在對(duì)高度分別為3 mm、8 mm和16 mm的平面測(cè)量中,使用傳統(tǒng)算法進(jìn)行的相位—高度映射時(shí),其平均絕對(duì)誤差和均方根誤差最大可達(dá)0.152 mm和0.202 mm.而使用所提算法進(jìn)行的相位—高度映射時(shí),其平均絕對(duì)誤差和均方根誤差最大不超過(guò)0.031 mm和0.040 mm,有效驗(yàn)證了所提算法的準(zhǔn)確性和可重復(fù)性.通過(guò) “心”形物體的面形測(cè)量驗(yàn)證了所提算法的實(shí)用性.