孫 進,馬煜中,楊 晗,朱興龍,習俊通
(1.揚州大學機械工程學院,江蘇揚州 225100;2.上海交通大學,機械系統(tǒng)與振動國家重點實驗室,上海 200240)
相移輪廓術是一種非接觸式、全場測量的光學三維數(shù)字成像與測量方法。該方法采用投影-采集裝置獲取一組經(jīng)物體表面面形調(diào)制的條紋序列圖,結合相移算法計算有效測量點的相位,該相位即用于計算物體的三維表面信息。相移輪廓術由于其高成像密度、高成像速度、高測量精度和高測量普適性等特點而得到廣泛應用[1-3]。由于獲取數(shù)字化投影-采集信號的過程中存在輸入與輸出之間的非線性強度響應的問題,例如將余弦輸入信號響應為非余弦輸出信號,從而引入相位測量誤差,并最終影響三維重建的精度。上述非線性強度響應一般性的被稱為gamma效應[4]。為了減小gamma效應引入的測量誤差,現(xiàn)有技術提出了一些相位誤差補償或gamma校正的方法,主要分為主動校正法和被動校正法[5-6]。
主動校正法通過改變投影儀的輸出條紋灰度值直接校準投影儀。HOANG[7]等提出一種標定得到的gamma系數(shù)的預編碼的方法,通過對計算機產(chǎn)生的用于投影的余弦光柵進行預編碼,經(jīng)過預編碼調(diào)制后的光柵圖像用于相移法測量物體表面,不需要進行相位補償,即可取得較高的精度。該方法首先要計算出余弦光柵所需的預編碼值,需要復雜的運算,且如果輸出條紋不滿足gamma模型時則不適用。另外可以增大相移步數(shù),由HOANG[7]和PAN[8]的理論可知,相移步數(shù)足夠大時(步數(shù)>10),相位誤差極小可以忽略不計,但是增加相移步數(shù)意味著測量時間的增加,降低了系統(tǒng)的靈活性。
相反,被動誤差補償方法不修改投影儀的輸入條紋圖案,而是從校準的gamma曲線確定相位誤差,然后補償相位域中的相位誤差[6]。李中偉[9]采用查表法將預先計算出的相位誤差存儲在一個查找表里,在測量時用于相位誤差補償,由于誤差直接從真實數(shù)據(jù)獲得,不需要假設特定的非線性模型。因此,它可以應用于任何非線性測量系統(tǒng),包括gamma模型。但需要對查找表256個灰度值的相位進行一一標定,非常耗時。周平[10]利用數(shù)學方法直接處理伽馬非線性,考慮最高八次諧波分量的相位誤差,用于補償,并且考慮了不同環(huán)境光的影響。CHEN[11]提出基于平滑樣條插值的方法,許偉[12]等采用二次多項式最小二乘擬合法近似輸出條紋光強分布,實現(xiàn)了包裹相位波動誤差的補償,減小了投影儀非線性導致的系統(tǒng)測量誤差,然而這些方法增加了求解相位的計算量且只針對特定步數(shù)的相移測量。
本文提出一種投影儀gamma畸變主動校正法,該方法只需要在測量系統(tǒng)標定時采集1組灰度圖案,就可以通過圖像處理及數(shù)學分析擬合輸入光強和輸出光強的關系。優(yōu)點在于利用較少投影圖片進行校準,直接改變投影的光柵圖像,達到主動校正的目的,本方法的實現(xiàn)更為簡單快速,相比于被動誤差補償方法,不增加解包運算計算量且適用于各種步數(shù)的相移測量,相比于已有的投影光柵預編碼的主動gamma校正技術,所提方法不局限于gamma模型,提高了其靈活性,同時該方法不依賴于相機、投影儀具體參數(shù),具有很好的通用性。
在相移結構光測量中,由計算機產(chǎn)生豎直余弦分布光柵圖案并經(jīng)投影儀投射至被測物體表面,光柵條紋光強分布沿水平方向可表示為
In=Ia+Ibcos(φ+2nπ/N)
(1)
式中:I為光強即灰度值,下同;In為第n幅光柵圖案投射的光強分布(n=1,2,…,N);N為相移步數(shù);Ia為背景光強;Ib為自定義常數(shù);φ為相位值,rad。
此時物面上的相位分布可由下式計算獲?。?/p>
(2)
特別地,對于四步相移,相位每次移動的增量為π/2,產(chǎn)生的4幅光柵條紋圖案可表示為
Iq=Ia+Ibcos(φ+qπ/2),q=1,2,3,4
(3)
則可解得包裹相位理論值:
(4)
進一步還需采取一定的解包裹方法以消除相位的跳躍。
在商業(yè)視頻投影儀中,gamma調(diào)制是表示輸入灰度值與輸出灰度值之間關系的灰度曲線,是人為有目的失真,以便獲得最佳的人眼視覺效果。該效應稱為gamma效應,雖然迎合了人眼的反映但對于科學測量是不利的。
進行相移法測量時,在理想情況下(無gamma畸變),輸出的條紋分布滿足f(In)=In。
實際測量中,當信號通過帶有gamma非線性誤差的系統(tǒng)時,產(chǎn)生系統(tǒng)誤差,此時輸出條紋分布可由下式表示:f(In)=[In]γ。
圖1顯示了gamma調(diào)制對相位測量的影響,其中強度值已由灰度值0~255歸化為0~1,圖1(a)為經(jīng)伽馬非線性調(diào)制后輸出帶失真的非余弦信號,其中虛線表示當γ=3.2時的輸出,實線表示標準余弦輸入信號;圖1(b)為采用四步相移的方法解得包裹相位由余弦信號解得的理想相位與非余弦信號解得的實際相位,其中虛線為理想相位,實線為實際相位;圖1(c)為采用四步相移時產(chǎn)生的相位誤差。
在實際投射光柵圖像時,鑒于系統(tǒng)的復雜性,除了有gamma畸變的影響,還有環(huán)境光源的干擾、鏡頭的影響等其他干擾,在此選擇利用多項式來近似則可以解決此問題??杉僭O輸出為
(5)
式中:Iout為輸出光強;Iin為輸入光強。
(a)光強畸變
(b)相位畸變
(c)相位誤差圖1 gamma調(diào)制的影響
由此得出輸出光強對輸入光強的響應,進一步求得f的反函數(shù)f-1,然后將f-1作用于輸入Iin進行光柵的投射。最后得到的結果即為Iout=f(f-1(Iin))=Iin。
但是以上的方法有一個問題,就是在求反函數(shù)的時候會發(fā)現(xiàn)f的反函數(shù)f-1不唯一,在進一步運算的時候會出現(xiàn)錯誤。
于是對上述方法進行改進,使用逆向思維,即假設輸入Iin是由輸出Iout經(jīng)過一種變化得到的,這里假設表達式為
(6)
于是自然可知Iout=f-1(Iin)。
通過實驗擬合若干點得到Iin=f(Iout)的表達式,然后將f作用于輸入Iin,即為f(Iin),最后得到的結果即為Iout=f-1(f(Iin))=Iin。
使用這種方法不僅簡化了步驟,而且防止了在求反函數(shù)時可能出現(xiàn)的錯誤。
(7)
寫成矩陣形式為
(8)
這是一個矛盾方程組,可由最小二乘法原理求得最優(yōu)解a、b、c、d、e的值。
為了驗證本誤差補償方法的有效性,首先,使用計算機對該gamma校正方法進行仿真,并分析其相位分布以對本文提出的測量系統(tǒng)gamma校正方法進行定量評估。使用計算機編程產(chǎn)生標準余弦四步相移圖像[(圖2(a))]以及經(jīng)過gamma調(diào)制的相移圖像[(圖2(b),gamma系數(shù)為3.2)]。然后使用本文方法對gamma調(diào)制的圖像進行校正,得到校正后的相移圖像[(圖2(c)],進一步進行相位求解,其結果如圖2(e)所示。接著進行相位求解得到校正前后的相位誤差,圖2(f)為圖像中間某一像素行進行gamma校正前后相位與其理想相位間的偏差分布。由圖2(f)可知,經(jīng)測量系統(tǒng)gamma畸變校正后,被測平面的相位偏差最大值可從0.08 rad減少至0.008 rad,獲得了90%的改進。
(a)標準余弦條紋
(b)gamma調(diào)制條紋
(c)gamma校正條紋
(d)gamma調(diào)制強度分布
(e)校正后強度分布
(f)校正前與校正后的相位誤差
搭建了如圖3所示的結構光測量系統(tǒng)進行實驗,該系統(tǒng)包含一個投影儀和一個工業(yè)相機,投影儀型號為LG PB66G-JE,其分辨率為1 360 pixel×768 pixel,工業(yè)相機為Basler acA1300-30gm,其分辨率1 296 pixel×966 pixel。使用該系統(tǒng)對標準平板進行測量,投影方案采用四步相移的方法,在測量過程中,參考平面與投影儀光心的距離約為220 cm,投影的測量范圍約為150 cm× 150 cm。
圖3 結構光測量裝置
采用上文所述的擬合方法得到參數(shù)為a=0.063 82、b=1.505 6、c=1.111 6、d=-0.468 17、e=1.797 5,進而得到函數(shù)的表達式為
圖4 采集到的灰度圖像
然后將該表達式應用于輸入光柵表達式即可。
利用該系統(tǒng)對真實物體進行測量,首先對一平面進行測量,取校正前后的其中一幅相移圖像如圖5所示。其中被測平面理想相位由未進行補償?shù)谋粶y平面測量相位經(jīng)擬合獲得。取某一行的誤差如圖6所示。可見用本文方法進行誤差補償后的模型比補償前相比誤差更小,更為光順,測量精度更高。
(a)校正前 (b)校正后圖5 校正前與校正后的的其中一幅相移圖像
圖6 實際平面測量誤差對比
上述2組實驗結果表明,該gamma校正方法可以顯著降低結構光測量系統(tǒng)的相位波動誤差,提高其測量精度。
本文在分析gamma非線性對包裹相位誤差影響的基礎上,使用了一種主動的gamma校正技術,極大地削弱了gamma失真現(xiàn)象帶來的影響,提高了測量精度。通過投影8幅設計好的均勻強度的灰度圖像,對拍攝得到的灰度圖像進行運算求解,擬合輸入光強與輸出光強的關系,得到合適的模型,將該模型反作用于輸入光柵代替原來的余弦條紋進行投影。驗證得到,在計算機仿真測量中,經(jīng)過gamma校正后的相移算法的相位誤差要遠低于校正之前,提高了90%的測量精度,最終將經(jīng)過gamma校正后的光柵圖像用于實際測量,即可取得良好的測量效果。與現(xiàn)有的被動相位補償算法相比不需要計算每個相位的誤差且不局限于特定的相移步數(shù)及解包裹方法,簡單且有效;與已有的基于投影光柵預編碼的主動gamma校正技術相比,所提方法不局限于gamma模型,提高了其靈活性。