李宗楠,朱 丹,佟新鑫
?
散焦投影三維測量中一種改進的誤差擴散核
李宗楠1,2,3,朱 丹1,2,3,佟新鑫1,3
( 1. 中國科學院沈陽自動化研究所,沈陽 110016;2. 中國科學院大學,北京 100049;3. 中國科學院光電信息處理重點實驗室,沈陽 110016 )
為了提高二值散焦光柵的正弦性,本文基于傳統(tǒng)圖像半色調(diào)領(lǐng)域的Floyd-Steinberg誤差擴散抖動算法,提出了一種新的誤差擴散算法。首先擴大誤差擴散核以減小正弦光柵二值化的量化誤差,同時抑制非對稱紋理;然后采用線性分配的誤差擴散系數(shù)來進一步平滑光柵,增強光柵的彌散效果。軟件仿真和實驗結(jié)果表明,與傳統(tǒng)Floyd-Steinberg抖動算法相比,所提算法進一步平滑了光柵,減小了三維測量的相位誤差。
散焦投影;抖動算法;三維重建;誤差擴散
面結(jié)構(gòu)光三維測量方法中的相位測量輪廓術(shù)(Phase Measuring Profilometry,PMP)具有高效率、高精度的優(yōu)點[1-2]。依據(jù)數(shù)字光處理(Digital Light Procession,DLP)的工作原理,將正弦光柵進行二值化并以散焦的方式模擬正弦光柵的投影,不僅能夠克服投影儀的非線性輸出問題,還能夠大大提升投影速度(10 kHz以上),實現(xiàn)高速測量[3]。
為了得到具有高度正弦特性的光柵,首先是電力電子領(lǐng)域的脈寬調(diào)制技術(shù)(PWM)被引入[4]。該方法具有良好的測量效果,但只是條紋圖案在一維上的優(yōu)化[5],當條紋較寬時效果將受到限制。除此之外,傳統(tǒng)的圖像半色調(diào)技術(shù)或者稱之為圖像抖動技術(shù),也被應用到正弦光柵二值化領(lǐng)域。常用的圖像抖動算法有Bayer有序抖動算法和Floyd-Steinberg誤差擴散抖動算法等[6-7]。Bayer有序抖動算法是基于圖像與閾值矩陣的比較來獲得二值化圖像,優(yōu)點是計算簡單,易于實現(xiàn);缺點是在投影儀接近聚焦的情況下,容易產(chǎn)生可辨識的規(guī)律性結(jié)構(gòu)紋理。Floyd-Steinberg誤差擴散抖動算法根據(jù)誤差擴散核將單個像素的量化誤差分配到未處理的鄰域像素,鄰域像素重復相同操作并最終獲得二值化圖像,亮暗點分布相對隨機。
不同的誤差擴散算法,由于其在掃描方式或者誤差擴散核上的差異,都會對散焦投影效果產(chǎn)生一定影響,因此誤差擴散算法仍然有提升空間[7]。本文提出一種基于Floyd-Steinberg誤差擴散抖動算法的改進方法,主要在兩個方面進行改進:一方面通過擴大誤差擴散核函數(shù)區(qū)域,進一步減小正弦光柵二值化的量化誤差;另一方面改進誤差擴散權(quán)重,采用線性分配的方式,增強圖像的平滑效果。以上改進在一定程度上改善了二值化光柵的正弦性,提高了光柵在DLP近似聚焦情況下的測量效果。
1.1 相移法
采用三步相移法來求解相位。在一次測量中,DLP連續(xù)地將三幅相位差為的正弦光柵投射到待測物體表面,相機同步采集的圖像分別為
1.2 Floyd-Steinberg誤差擴散算法
誤差擴散的基本原理是將灰度圖像的當前像素值和閾值進行比較,輸出一個0或255灰度級,同時將量化誤差按照一定權(quán)重傳遞到鄰域未處理的像素灰度值中[10]。鄰域像素灰度值更新之后,按照相同準則進行遍歷,直至得到二值化的圖像,其原理框圖如圖1所示。其中,表示輸入灰度圖像,為像素灰度值和累積量化誤差的和,[ ]表示閾值量化操作,為輸出的二值圖像,表示量化誤差,為誤差擴散核函數(shù)。該原理可表示為
圖1 誤差擴散算法原理框圖
[ ]操作通常取127為閾值。對于Floyd-Steinberg誤差擴散抖動算法,其采用的誤差擴散核函數(shù)為
式中:“-”表示已經(jīng)處理過的像素,“*”表示當前正在處理的像素,相鄰的數(shù)字表示該位置分配到的誤差的比例。這里,右邊鄰接像素獲得7/16的誤差,其它位置以此類推。
1.3 改進的誤差擴散算法
Floyd-Steinberg誤差擴散抖動算法能夠獲得效果良好的二值化圖像,在圖像半色調(diào)領(lǐng)域獲得了廣泛應用。然而在印刷、顯示技術(shù)不發(fā)達的時代,抖動算法的發(fā)展是以優(yōu)化人類視覺感官為目的,并不完全適用于測量領(lǐng)域。例如為了盡可能保持二值化圖像的邊緣信息,傳統(tǒng)算法以最小的誤差擴散核(2×3)向鄰域分配誤差,同時誤差分配系數(shù)呈近似高斯分布。而在散焦投影測量系統(tǒng)中,正弦光柵經(jīng)二值化處理之后,以DLP散焦投影的方式投射,然后彌散為近似標準的正弦光柵,因此傳統(tǒng)含有邊緣信息的二值圖像并不適合現(xiàn)代光學測量要求,需要進一步優(yōu)化?;谠搼帽尘埃瑸榱嗽鰪姸祷瘓D像的彌散平滑效果,采取兩點改進措施:1) 將誤差擴散核函數(shù)大小由2×3擴大到3×5,將誤差充分分配到鄰域空間;2) 將原誤差擴散核函數(shù)類似高斯分配誤差的方式,改為線性分配誤差方式。改進后的誤差擴散核:
圖2為計算機生成的相關(guān)條紋圖案,其中圖2(a)為投影系統(tǒng)所需模擬的8 bit標準正弦光柵;圖2(b)、圖2(c)分別為采用傳統(tǒng)Floyd-Steinberg抖動算法和改進算法對圖2(a)進行二值化的結(jié)果。從圖2(b)可以看到較為明顯的非均勻紋理,在DLP近似散焦情況下將影響光柵質(zhì)量;而改進的算法由于優(yōu)化了量化誤差的分布特性,像素分布較為隨機,在一定程度上改善了光柵質(zhì)量,正弦特性沒有變化,在DLP散焦后可以用于三維測量。為了量化兩種誤差擴散算法對測量的影響,需進一步對相位圖的相位誤差進行對比。實驗中以由標準正弦光柵獲得的相位圖為參考面,以由兩種抖動光柵獲得的相位圖與參考面誤差的標準差作為相位誤差,進而獲得以百分比表示的相對相位誤差。其中,二值化光柵的散焦過程采用高斯濾波器來仿真實現(xiàn)[6]。
圖2 抖動光柵比較(a) 標準正弦光柵;(b) Floyd-Steinberg抖動光柵;(c) 改進的Floyd-Steinberg抖動光柵
首先對比兩種二值化光柵在相同散焦程度、不同條紋周期下的相對相位誤差。散焦過程分別采用窗口s為5、15,對應標準差為5/3、15/3的高斯濾波器來模擬。同時,逐漸增加條紋周期,變化范圍從10到500像素,實驗結(jié)果如圖3所示。從圖中可以看出:兩種方法的相位誤差隨著條紋周期的增大而增大;改進的Floyd-Steinberg抖動算法的相位誤差小于傳統(tǒng)方法,光柵質(zhì)量更好。
其次,進一步對比在不同散焦情況下的效果。實驗采用的條紋周期分別為=100 pixel、=300 pixel,散焦程度分別以窗口大小s為5、7、9、11、13和15,標準差為s/3的高斯濾波器模擬,實驗結(jié)果如圖4所示。由仿真結(jié)果可知,兩種方法的相位誤差都隨散焦程度的增加而降低;改進的抖動算法比傳統(tǒng)算法的相位誤差更小,更有利于減小投影系統(tǒng)的散焦量,對于散焦測量系統(tǒng)的標定更有意義[11]。
圖3 不同條紋周期下相位誤差比較(a) fs=5; (b) fs=15
圖4 不同散焦程度下相位誤差比較(a) T=100; (b) T=300
為了驗證改進方法在實際3D測量中的效果,以標準白板和石膏頭像為測量對象開展實驗。3D測量系統(tǒng)的硬件包括DLP投影儀(DLP LightCrafter,分辨率為684×608)和CCD相機(Imperx IGV-B1310M)。
首先分別使用Floyd-Steinberg抖動光柵和改進的光柵測量標準白板,光柵周期變化范圍為10到500像素。在每組實驗中,以計算機模擬的相位平面為參考面,分別基于該參考面計算相對相位誤差。由于在DLP充分散焦狀態(tài)下,二值化光柵和標準正弦光柵的投影效果趨于一致[5],失去對比意義,因此本實驗中DLP調(diào)整為輕微散焦狀態(tài)。圖5(a)、圖5(b)分別為CCD相機拍攝的一張Floyd-Steinberg抖動光柵和改進的光柵圖像,圖5(c)為兩種方法在不同條紋周期下的相位誤差對比結(jié)果。兩張光柵圖像從肉眼觀察效果較為接近,但是圖5(c)中曲線表明在一定條紋周期范圍內(nèi),改進光柵的相位誤差小于傳統(tǒng)Floyd-Steinberg抖動光柵,證明了改進方法的有效性。實驗結(jié)果與圖3仿真結(jié)果基本一致。
圖5 不同條紋周期下實驗驗證(a) Floyd-Steinberg抖動光柵;(b) 改進的Floyd-Steinberg抖動光柵;(c) 相位誤差比較
除此之外,利用該實驗裝置對形貌更加復雜的石膏頭像進行了三維重建,圖6顯示了兩種二值化光柵的測量結(jié)果。調(diào)整DLP為輕微散焦狀態(tài),分別使用傳統(tǒng)Floyd-Steinberg抖動光柵和改進的光柵進行三維重建,結(jié)果分別如圖6(a)和圖6(b)所示。同時,為清楚地對比改進效果,圖6(c)顯示了三維圖像第650行的局部相位剖面曲線。然后調(diào)整DLP至適當散焦位置,再次使用兩種光柵進行重建,結(jié)果如圖6(d)~6(f)所示。通過對比可以發(fā)現(xiàn),改進算法的重建圖像比傳統(tǒng)算法平滑,效果有一定提升,證實了改進算法的彌散平滑效果;同時隨著散焦程度的加大,兩種二值光柵的測量效果趨于一致。
圖6 石膏頭像二值化光柵測量結(jié)果(a) 輕微散焦下Floyd-Steinberg抖動光柵3D重建結(jié)果;(b) 輕微散焦下改進的抖動光柵3D重建結(jié)果;(c) 輕微散焦下局部相位剖面圖;(d) 充分散焦下Floyd-Steinberg抖動光柵3D重建結(jié)果;(e) 充分散焦下改進的抖動光柵3D重建結(jié)果;(f) 充分散焦下局部相位剖面圖
提出了一種改進的Floyd-Steinberg抖動算法,通過擴大誤差擴散核以及線性分配誤差擴散系數(shù),抑制光柵的非對稱紋理,平滑二值化光柵,最終提高光柵的正弦性。論文通過計算機仿真對比了傳統(tǒng)方法以及改進算法在不同光柵周期、不同散焦程度下的相位誤差,同時對白板和石膏頭像進行了測量和三維重建。仿真及實驗證明,所提方法能夠進一步提高光柵質(zhì)量,減小相位誤差,更加適合散焦投影測量輪廓術(shù)。
[1] Srinivasan V,LIU H C,Halioua M. Automated phase-measuring profilometry: a phase mapping approach [J]. Applied Optics(S1559-128X),1985,24(2):185-188.
[2] 馬永壯,劉偉軍. 一種基于雙目主動視覺的線性自標定算法[J]. 機器人,2004,26(6):486-490.
MA Yongzhuang,LIU Weijun. A Linear Self-calibration Algorothm Based on Binocular Active Vision [J]. Robot,2004,26(6):486-490.
[3] GONG Yuanzheng,ZHANG Song. Ultrafast 3-D shape measurement with an off-the-shelf DLP projector [J]. Optics Express(S1094-4087),2010,18(19):19743-19754.
[4] Ajubi G A,Ayubi J A,Martino J M D,. Pulse-width modulation in defocused 3-D fringe projection [J]. Optics Letters(S0146-9592),2010,35(21):3682-3686.
[5] WANG Yajun,ZHANG Song. Comparison among square binary, sinusoidal pulse width modulation and optimal pulse width modulation, methods for three- dimensional shape measurement [J]. Applied Optics(S1559-128X),2012,51(7):861-872.
[6] DAI Junfei,ZHANG Song. Phase-optimized dithering technique for high-quality 3D shape measurement [J]. Optics and Laser in Engineering(S0143-8166),2013,51(6):790-795.
[7] LI Beiwen,WANG Yajun,DAI Junfei,. Some recent advances on superfast 3D shape measurement with digital binary defocusing techniques [J]. Optics and Laser in Engineering(S0143-8166),2014,54:236-246.
[8] Ghiglia D C,Pritt M D. Two-dimensional Phase Unwrapping: Theory, Algorithms, and Software [M]. New York:John Wiley & Sons,1998:4-57.
[9] 李勇,蘇顯渝. 用于可靠性導向相位展開的快速算法 [J]. 光電工程,2005,32(11):76-79.
LI Yong,SU Xianyu. Fast algorithm for reliability-oriented phase unwrapping [J]. Opto-Electronic Engineering,2005,32(11):76-79.
[10] Floyd R,Steinberg L. An adaptive algorithm for spatial gray scale [J]. Proceedings of the Society for Information Display(S0036-1496),1976,17(2):75-77.
[11] Bell T,XU Jing,ZHANG Song. Method for out-of focus camera calibration [J]. Applied Optics(S1559-128X),2016,55(9): 2346-2352.
An Improved Error-diffusion Algorithm for Projector Defocusing Profilometry
LI Zongnan1,2,3,ZHU Dan1,2,3,TONG Xinxin1,3
( 1. Shenyang Institute of Automation, Chinese Academy of Sciences, Shenyang 110016, China;2. University of Chinese Academy of Sciences, Beijing 100049, China;3. Key Laboratory of Opto-Electronic Information Processing, Chinese Academy of Sciences, Shenyang 110016, China )
To improve the sinusoidal feature of binarized sinusoidal fringe pattern, a new error-diffusion method based on Floyd-Steinberg error-diffusion dithering algorithm in traditional halftoning is proposed. Firstly, the error-diffusion kernel is expanded to reduce quantization error of the binarized sinusoidal fringe pattern and restrain the unsymmetrical texture. And then the error-diffusion coefficients are distributed linearly to smooth the fringe pattern and enhance the dispersion. The simulations and experiments indicate that, the proposed method smoothes the fringe pattern and reduces the phase error of 3D measurement compared with traditional Floyd-Steinberg dithering algorithm.
defocusing projection; dithering algorithm; three-dimensional (3D) reconstruction; error-diffusion
1003-501X(2016)12-0034-06
TH741
A
10.3969/j.issn.1003-501X.2016.12.006
2016-06-06;
2016-08-11
中國科學院重點實驗室科研基金(Y3A4072402)資助
李宗楠(1987-),男(漢族),河南三門峽人。碩士研究生,主要研究結(jié)構(gòu)光和視覺檢測。E-mail: lizongnan2007@126.com。