陳益松, 夏 明, 沈 麗, 馮蓮娣, 張龍女, 馮蕊琪
(東華大學 a.服裝與藝術設計學院; b.現(xiàn)代服裝設計與技術教育部重點實驗室,上海 200051)
物體形貌掃描多使用結構光主動三維測量技術[1-2],不同于相移、傅里葉等需要光柵相位調(diào)制與解算的間接三角法,基于編碼圖案結構光[3]的直接三角法由測量系統(tǒng)的幾何關系并通過光面方程和共線方程來解算交線條紋的點坐標,重構物面輪廓[4-5]。
以格雷碼編碼的矩形光柵法屬于使用面結構光的直接三角法,其黑白矩形光柵條紋邊沿構成的光面與物體相交形成多條變形條紋。然而在實際解算過程中存在交線光紋識別并與光面方程匹配的問題,條紋密度越高,解析度也越高,因匹配不正確而出現(xiàn)解算錯誤的幾率也越高。
已有許多文獻使用3D Max、 Matlab等軟件仿真測量和解算過程[6-7],這雖簡化了研究過程,但也存在模擬條件與實際情況不符,以及無法展現(xiàn)實際解算過程中可能出現(xiàn)問題的情況。
本文綜合考慮投射和攝像裝置的特點,以平行光軸系統(tǒng)結合移軸和局部偏置拍攝技術搭建了人臺測量的試驗裝置,結合共線方程和光面方程,對矩形光柵條紋格雷碼編碼及運用原則、移軸投射、偏置攝像、鏡頭參數(shù)測量、交線條紋圖像處理以及實際解算過程進行探索研究,并取得了預期的結果。
文獻[8-9]最早提出使用格雷碼(Gray code)對時域投射光柵進行編碼,由于格雷碼獨特的性質(zhì),其編碼光柵的邊緣不重疊,因此沒有條紋邊沿間的相互干擾,從而減少了排序過程中可能的邏輯錯誤。文獻[10]給出了格雷碼與二進制碼之間的轉(zhuǎn)換關系。
運用格雷碼編碼的光柵需要由寬到窄依次投射,如圖1所示。
以迭代算法為基礎,可得到所投射光柵邊沿序號的公式[11],如式(1)所示。
k=2n-i(2j-1)
(1)
式中:k∈(1, 2n-1)為邊沿排列序號;n為圖像幅數(shù);i∈(1,n)為圖像序數(shù);j∈(1, 2i-1)為每幅圖像的條紋序號。
將式(1)進一步變換得:
k=2n-i+(j-1)2n-i+1
(2)
將(j-1)由十進制轉(zhuǎn)變?yōu)橛嬎銠C可識別的二進制,如式(3)所示,則得到文獻[12]所介紹的光柵投射時序可執(zhí)行編碼中條紋邊沿排列序號求取算法。
k=2n-i+((G0G1G2…Gi-1)2)10×2n-i+1
(3)
式中:Gi表示k條紋邊沿所對應第i幅圖像所在位置二值化后的灰度值(黑色為0,白色為1),其中定義第0幅圖像的灰度值為G0,G0的取值可以為0或1。但在計算過程中:若G0=0,則可直接按照式(3)進行計算;若G0=1,則在進行格雷碼轉(zhuǎn)換成十進制數(shù)字的過程中需要進行一步反射。括號外的下標2和10分別表示將該格雷碼轉(zhuǎn)換成二進制代碼和再轉(zhuǎn)換成十進制直觀數(shù)字。例如,投射4幅光柵圖像,計算第4幅圖像中的第5個邊緣:(j-1)十進制為4,轉(zhuǎn)換成二進制碼為0100,再轉(zhuǎn)換為格雷碼G0G1G2G3為0110,由式(2)和(3)計算得k=9。
本試驗系統(tǒng)是由攝像機、LCD投影儀、人臺及遮擋黑布等器材組成。
在一般交叉光軸系統(tǒng)中,雖然有效測量區(qū)域大,但存在光柵投射非線性分布問題。在相位法中,需要復雜的非線性校正[13];在面結構光直接三角測量法中,也存在投射的光柵分布不均、光面方程難以構建的問題。本文采用平行光軸系統(tǒng),結合投影儀的移軸投射及攝像機的區(qū)域偏置拍攝(相當于鏡頭移軸),不僅可以使系統(tǒng)的校正得到簡化,也可以擴大有效測量區(qū)域[14-15]。同時,由于攝像機和投影儀的鏡頭的景深區(qū)域均垂直于光軸,可以使兩者的景深區(qū)域重合并有效地將人臺納入其中。
試驗系統(tǒng)的測量坐標系如圖2所示,選取物空間坐標系與投影儀坐標系重合。在實際系統(tǒng)校準中,以垂直墻面為參考面調(diào)整投影儀,使其投影圖像的對角線完全相等,攝像機光軸與投影儀光軸平行,且投影儀鏡頭光心與攝像機光心在同一垂線上。
實際操作過程中,投影鏡頭和攝影鏡頭并不是具有明確的光心位置的薄鏡頭,而是具有前主點cf、后主點cr及光心距d的厚鏡頭,鏡頭前邊沿與前主點存在的距離為x,鏡頭的攝距為對焦平面P到鏡頭前沿的工作距離W與x之和,如圖3所示。因此,確定x值是準確構建測量系統(tǒng)幾何關系的必要條件。由于前主點可視作為薄透鏡的光心,后續(xù)成像可按理想透鏡處理(此時d=0,x可簡稱光心距)。
設投影鏡頭的焦距為fp,鏡頭在聚焦平面P1的投影高度為H1,P1與鏡頭前邊沿的工作距離為W1,后主點至像面的像距為S1,將鏡頭聚焦點沿軸線移動一個距離至聚焦平面P2,則參數(shù)分別為H2、W2和S2。由于像面尺寸固定,則根據(jù)高斯方程和三角相似關系得:
(4)
(5)
(6)
(7)
由式(4)~(7)聯(lián)解可以得到光心距xp的計算公式如式(8)所示。
(8)
雖然投影儀通常并不提供鏡頭焦距參數(shù),但只要能查證到其使用LCD芯片的尺寸,亦可通過上述方程組解得:
(9)
同理,攝像鏡頭的光心距xc及焦距fc可以通過拍攝不同工作距離下對焦平面的固定尺寸的標板,由式(10)、(11)分別計算得到。
(10)
(11)
式中:I1為在工作距離W1所拍固定高度H標板的像高;I2為在工作距離W2所拍固定高度H標板的像高。
根據(jù)設備已知參數(shù),經(jīng)過測量與計算,可以得到完整的系統(tǒng)參數(shù)。設備與系統(tǒng)的參數(shù)如表1。
表1 設備及系統(tǒng)參數(shù)
在攝影測量中,共線方程確立了攝像機圖像坐標系和物空間坐標系的邏輯關系,如式(12)所示[16]。
(12)
式中:[xw,yw,zw]和[x0,y0,z0]分別為物點和攝像機光心在物空間坐標系中的坐標;[X,Y]為物點在圖像坐標系中所對應的坐標;R-1為攝像機坐標系與物空間坐標系之間的旋轉(zhuǎn)變換矩陣;zc為物點在攝像機坐標系z軸中的坐標;l為攝像機鏡頭像距。
根據(jù)圖2的坐標系,攝像機坐標系和物空間坐標系x、y、z軸的方向完全一致,則旋轉(zhuǎn)矩陣R-1為
(13)
攝像機光心[x0,y0,z0]在物空間坐標系的坐標為[0,b, 0 ]。
根據(jù)鏡頭成像的高斯公式得:
(14)
將式(13)和(14)代入式(12)并轉(zhuǎn)換為代數(shù)形式,如式(15)和(16)所示。
Lfxw-(L-f)Xzw=0
(15)
Lf(yw+b)-(L-f)Yzw=0
(16)
由式(15)和(16)可知,一個攝像機所構成的兩個代數(shù)方程(共線方程)無法解出物點的3個空間坐標值,但確認了物點、光心、像點共線。
光面方程是投射的光柵黑白邊沿構成的光面在物空間坐標系下的數(shù)學表示。
現(xiàn)有的許多模擬仿真研究都是選擇中心投影的投影儀,然而在現(xiàn)實中基本采用固定移軸式投影儀,即投影鏡頭光軸(簡稱投射光軸)偏離圖像中垂線一定距離。本試驗采用常規(guī)的非對稱式移軸式投影儀,并提出了非對稱式投影中投射角的計算方法。
光柵移軸投射如圖4所示。根據(jù)圖4的幾何關系,光柵某一條紋邊沿的光面與水平面的的夾角α存在下面關系:
(17)
(18)
式中:α為第k條條紋邊沿與投射光軸的夾角;β為投影儀的移軸偏置角,即圖像中點和鏡頭光心連線與投射光軸(水平)的夾角;L為鏡頭對焦攝距;H為參考平面影像的高度;E為參考平面圖像中心到投射光軸的距離。
投影儀坐標系與物空間坐標系重合,所投射的矩形光柵邊沿光面方程,如式(19)所示。
yw=-zwtanα
(19)
將式(17)和(18)代入式(19),可得到以條紋邊沿序號k所表示的光面方程,如式(20)所示。
(20)
由共線方程式(15)、(16)和光面方程式(20)可知,在獲得k光面與物體交線的像點坐標[X,Y]后,可通過上述方程的聯(lián)解解算出所對應的物體表面的空間坐標[xw,yw,zw]。
試驗以黑布作為背景并在暗室進行,使人臺僅接受結構光的照射。選擇n=8, 即依次投射8幅圖像,共計256條條紋。通過布爾運算得到各光面與物體相交的圖像點所構成的變形條紋。
依據(jù)格雷碼光柵依次投射的原理,可以得到第一條(k=2n-1)交線條紋的像素點,以此為基礎分別向上和向下搜索第二幅圖像2個k光面所生成的交線條紋的像素,然后再以已賦值條紋的區(qū)間為區(qū)域搜索下一幅光柵圖所對應k光面的交線條紋的像素點,直到完成所有圖像交線條紋的像素點搜索。由此解決像素點與對應的條紋邊緣序號k值的匹配問題。
然而,由于陰影、暗點等因素,邏輯運算出的條紋通常存在多余點或缺失,即線條不是由連續(xù)單像素構成的理想條紋。當條紋密度較高時,還會出現(xiàn)匹配錯誤,因此要對條紋像素進行預處理[17-18],必要時需要手工干預。最后運用Canny算法來提取條紋。
經(jīng)過刪除重復點和插補缺失點的修正后所提取的交線條紋如圖5所示。由圖5可知,如果從BC線條向下搜索,必然會在條紋EG中出現(xiàn)EF段的盲區(qū),不能使被搜索的條紋完整再現(xiàn)。若條紋BC兩端添加AB和CD兩輔助線段,使搜索區(qū)域由BC段擴展到畫幅兩端,則可搜索整個畫幅像素。因此,由第一條解算出的條紋開始添加輔助線段是后續(xù)條紋匹配解算的關鍵。
圖6(a)是以黑背景全白光拍攝的圖像(人臺頭上部較多的空白是區(qū)域偏置拍攝所致);圖6(b)是經(jīng)過反二值化處理的圖像;圖6(c)為經(jīng)過處理后得到有效解算區(qū)域(空白部分),即后期圖像條紋的處理和解算都限制在該區(qū)域。
圖7(a)為投影的矩形光柵圖像;圖7(b)為通過布爾運算得到光面與人臺的交線條紋,存在重復、斷點等缺陷;圖7(c)為經(jīng)過處理后且添加了輔助線段的規(guī)整化條紋(參考圖5),該條紋上的圖像坐標[X,Y]都是唯一確定的。
根據(jù)2.4節(jié)解算原理步驟,借助文獻[19]給出的具體解算程序,即可解算出人臺形貌的空間坐標點云數(shù)據(jù),如圖8所示。從不同的角度看,在人臉比較復雜的五官特征以及身體胸部肌肉形態(tài)上都有比較準確的形貌體現(xiàn),證明本文的試驗裝置和解算方法是有效的。
本文針對格雷編碼的矩形光柵的物形掃描方法做了進一步的理論分析,給出矩形光柵條紋邊沿序號的一般表示法轉(zhuǎn)化為時序可執(zhí)行編碼的推演過程。以平行光軸系統(tǒng)結合移軸和局部偏置拍攝技術構建了形貌掃描試驗系統(tǒng),提出了試驗鏡頭參數(shù)的現(xiàn)場測量方法和基于移軸光柵投射的光面投影角的計算方法,使測量系統(tǒng)以及基于該系統(tǒng)的共線方程、光面方程可以在參數(shù)完全已知的條件下準確構建,減少測量誤差。通過對交線條紋的提取、處理和識別,并利用共線方程與光面方程的聯(lián)合解算,得到了試驗人臺三維數(shù)據(jù)點云,人臺比較復雜的面部結構和軀體的肌肉形態(tài)均得到了較好的再現(xiàn),證明了基本方法的可行性和系統(tǒng)的有效性。