999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

快速三維重建的N級(jí)灰度編碼法

2022-05-22 10:21:26童陳恩蔡柏林
無(wú)線電通信技術(shù) 2022年3期
關(guān)鍵詞:測(cè)量方法

童陳恩,蔡柏林,2,梁 棟,2*

(1.安徽大學(xué) 互聯(lián)網(wǎng)學(xué)院,安徽 合肥 230039;2.農(nóng)業(yè)生態(tài)大數(shù)據(jù)分析與應(yīng)用技術(shù)國(guó)家地方聯(lián)合工程研究中心,安徽 合肥 230601)

0 引言

基于結(jié)構(gòu)光技術(shù)的物體三維形狀測(cè)量已經(jīng)應(yīng)用于逆向工程、生物醫(yī)學(xué)工程、在線檢測(cè)等各個(gè)領(lǐng)域[1-4]。在現(xiàn)有的結(jié)構(gòu)光技術(shù)中,條紋投影輪廓術(shù)(Fringe Projection Profilometry,FPP)以其非接觸、速度快、精度高等優(yōu)點(diǎn)受到了研究者的廣泛關(guān)注[5]。在FPP中,相位圖主要通過(guò)相移技術(shù)[6]或基于變換的算法[7-8]恢復(fù)。但是,由于求解相位的過(guò)程中出現(xiàn)反正切函數(shù),因此上述方法得到的相位被包裹在[-π,π)的范圍內(nèi),需要進(jìn)行相位展開來(lái)獲取連續(xù)的相位。

現(xiàn)有的相位展開技術(shù)主要分為兩大類:空間相位展開法[9-12]和時(shí)間相位展開法[13-15]。空間相位展開法主要通過(guò)空間幾何關(guān)系將編碼信息蘊(yùn)含于條紋圖案中,解碼時(shí)通過(guò)查找左右條紋的信息來(lái)獲取碼字,空間方法包括可靠性圖指導(dǎo)法[9-10]、最小范數(shù)法[11]和貝葉斯法[12]。顯然這種解碼方法在遇到表面形貌陡峭的物體時(shí)會(huì)導(dǎo)致誤差通過(guò)路徑傳播,從而使得最終的測(cè)量結(jié)果變得不可靠。與此相比,時(shí)間相位展開法通過(guò)投射多幅條紋圖像,逐像素地對(duì)相位信息進(jìn)行展開,有效降低了表面突變導(dǎo)致的誤差影響。盡管時(shí)間相位展開法需要額外的條紋圖像進(jìn)行相位展開,但由于其可靠的精度,在考慮測(cè)量速度和精度的實(shí)際情況中有著不錯(cuò)的應(yīng)用前景。目前典型的時(shí)間相位展開法主要有多頻率方法[14]、相位編碼方法[15-17]和灰度編碼方法[18-22]。

灰度編碼法由于其易于編碼和解碼,在相位展開中有著廣泛的應(yīng)用。該方法通過(guò)設(shè)置條紋圖中像素的灰度值來(lái)進(jìn)行編碼,例如簡(jiǎn)單二進(jìn)制編碼法[23]和格雷碼[24]。這些方法主要采用二級(jí)灰度條紋進(jìn)行編碼,在生成64個(gè)碼字時(shí)至少需要lb64幅條紋圖,測(cè)量速度因此受到限制。為此,Zheng等人[25]用三級(jí)灰度編碼提出了一種三值格雷碼方法,此方法需要log364幅條紋圖來(lái)生成64個(gè)碼字。隨后,Zheng等人[26]又提出了一種四元格雷碼方法,進(jìn)一步將編碼64個(gè)碼字所需要的條紋圖數(shù)量減少到log464幅。由此可見,通過(guò)增加條紋圖的灰度級(jí)可以降低編碼時(shí)所需要的條紋圖像數(shù)量,此外隨著灰度級(jí)增加的同時(shí)各灰度級(jí)之間的灰度差也在逐漸減小,這會(huì)導(dǎo)致解碼時(shí)容易產(chǎn)生灰度混淆的情況。因此在考慮灰度級(jí)數(shù)和解碼誤差的情況下Cai等人[27]提出了一種雙灰度編碼方法(PWGL)。該方法只需用兩幅四級(jí)灰度編碼圖像就可以編碼64個(gè)碼字。由于PWGL方法相較于傳統(tǒng)的四級(jí)灰度編碼策略在編碼相同碼字的情況下所需的條紋幅數(shù)較少,在一些時(shí)效性要求較高的場(chǎng)合下具有一定的應(yīng)用潛力。但該方法在解碼過(guò)程中需要6個(gè)解碼掩膜,導(dǎo)致解碼過(guò)程的時(shí)間開銷較大,影響了測(cè)量速度,并且在條紋缺失、碼字丟失等情況時(shí),解碼掩膜容易受到誤差影響,因此魯棒性較低。針對(duì)PWGL方法在解碼過(guò)程中的問(wèn)題,本文對(duì)其解碼算法進(jìn)行改進(jìn),提出一種相互交叉的二值掩膜取代原有的解碼掩膜,對(duì)同級(jí)碼字的碼區(qū)進(jìn)行統(tǒng)一解碼,從而減少了解碼過(guò)程中的時(shí)間開銷,同時(shí)也降低了因條紋丟失或圖像噪點(diǎn)等誤差造成的解碼異常。實(shí)驗(yàn)結(jié)果驗(yàn)證了本文所提解碼算法的有效性。

1 原理

1.1 N步相移算法

N步相移算法主要是通投射多幅具有相位差的正弦條紋圖像來(lái)獲取相位信息,常見的算法有三步相移法、四步相移法和五步相移法。相移算法中使用的條紋圖案的強(qiáng)度可以表示為:

In(x,y)=A(x,y)+B(x,y)cos[φ(x,y)+δn],

(1)

式中,n表示相位步數(shù),A(x,y)和B(x,y)分別表示背景和調(diào)制強(qiáng)度;(x,y)表示圖像的像素坐標(biāo);φ(x,y)為待求解的相位;δn是指相移圖像的相移量,可表示為:

δn=2π(n-1)/N。

(2)

結(jié)合N步相移圖像的表達(dá)式可以分別求出A(x,y),B(x,y),φ(x,y):

(3)

(4)

(5)

通過(guò)對(duì)包裹相位φ(x,y)進(jìn)行相位展開以獲得絕對(duì)相位Φ(x,y)。引入條紋級(jí)次K(x,y)可將Φ(x,y)表示為:

Φ(x,y)=φ(x,y)+2πK(x,y),

(6)

所以求絕對(duì)相位的問(wèn)題也就轉(zhuǎn)化為求出每個(gè)條紋的級(jí)次K(x,y)。

1.2 雙灰度編碼方案

雙灰度編碼方法進(jìn)行物體三維表面測(cè)量需要兩組條紋。一組用于包裹相位計(jì)算的,另一組則用于求條紋級(jí)次。由于三步相移算法需要最少的模式數(shù)來(lái)計(jì)算相位圖,因此選用三步相移算法來(lái)求取包裹相位。再用兩幅灰度編碼條紋圖求取條紋級(jí)次,用于確定局部順序K1(x,y)的灰度編碼條紋圖G1(x,y)為四級(jí)灰度編碼,其周期T1和相移條紋周期T相等。G1(x,y)的圖像強(qiáng)度可表示為式(7)。式中ceil(m)表示對(duì)m向上取整;A(x,y)和B(x,y)與式(1)中的A(x,y)和B(x,y)相同;CS(i),(i=1,2,3,4)代表四級(jí)灰度編碼。另一灰度編碼條紋圖G2(x,y)用于計(jì)算區(qū)域順序K2(x,y)。G2(x,y)的每個(gè)周期被分成兩個(gè)相等的部分CS1和CS2,并且使用不同的代碼序列對(duì)這兩個(gè)部分進(jìn)行編碼。CS1和CS2都包含64個(gè)碼字,其中CS1編碼G2的第一部分,CS2編碼G2(x,y)的第二部分。使用這兩個(gè)代碼序列,G2(x,y)可以表示為式(8),式中mod(m,n)返回m除以n后的余數(shù);CS1(i),CS2(i)表示CS1,CS2中的第i個(gè)代碼。A(x,y)和B(x,y)可以在得到S1(x,y),S2(x,y),S3(x,y)后通過(guò)式(4)計(jì)算出。CS1和CS2編碼的2位碼字C1和C2與區(qū)域順序K2(x,y)的對(duì)應(yīng)關(guān)系見表1。

表1 K2與C1,C2的對(duì)應(yīng)關(guān)系Tab.1 Corresponding relationship between K2 and C1, C2

M=ceil(x/T1),

(7)

(8)

(9)

由上述可知,區(qū)域順序K2(x,y)直接由G2(x,y)決定。對(duì)于G2(x,y)的每個(gè)周期,其順序可以通過(guò)組合其第一部分和第二部分的碼字來(lái)確定,K2(x,y)可以由式(9)計(jì)算獲得。圖1顯示了PWGL方法中使用的編碼策略及其相應(yīng)的細(xì)節(jié)。在求得K1(x,y)和K2(x,y)后,條紋階數(shù)K(x,y)可以計(jì)算為:

圖1 PWGL方法的編碼策略Fig.1 Coding strategy of the PWGL method

K(x,y)=K1(x,y)+K2(x,y)。

(10)

最后,將K(x,y)代入式(6)即可求得絕對(duì)相位Φ(x,y)。圖2說(shuō)明了整個(gè)PWGL方法求絕對(duì)相位的流程。

圖2 PWGL方法流程圖Fig.2 Flowchart of the PWGL method

1.3 解碼算法

1.3.1 PWGL解碼算法

為了獲得條紋階數(shù),PWGL方法提出了一種解碼算法。該算法的主要目的是確定區(qū)域順序K2(x,y),因?yàn)榫植宽樞騅1(x,y)可以根據(jù)G1(x,y)圖像的灰度強(qiáng)度獲得。在獲取條紋編碼時(shí),可以借助相位值將條紋圖像進(jìn)行分割。由于包裹相位的范圍為[-π,π),因此選擇相位值0可將條紋分成兩部分,從而獲得兩個(gè)二值掩模:

(11)

(12)

掩膜maskp(x,y)和maskn(x,y)分別與G2(x,y)點(diǎn)乘便可以區(qū)分出C1和C2。此外為求得區(qū)域順序K2(x,y),還需要利用局部順序K1(x,y),因?yàn)镵1(x,y)的周期與條紋的周期相同,可以使用它來(lái)正確地逐個(gè)匹配C1和C2。具體方法是先用K1(x,y)產(chǎn)生4個(gè)二值掩膜:

(13)

然后標(biāo)記Bi(x,y)的連通域,逐個(gè)提取每個(gè)連通域并與C1,C2點(diǎn)乘。按照這個(gè)方法只要遍歷整個(gè)連通域后就可以求出C1,C2所有的編碼,然后根據(jù)式(9)求得區(qū)域順序K2(x,y)。解碼掩膜Bi(x,y),解碼細(xì)節(jié)如圖3所示。

圖3 PWGL的解碼原理Fig.3 Decoding principle of PWGL

所有解碼操作完成后,就確定了局部順序K1(x,y)和區(qū)域順序K2(x,y)。然后,可以使用式(10)計(jì)算條紋階數(shù)K(x,y)。由于在逐個(gè)求取C1,C2的編碼時(shí)使用的二值掩膜Bi(x,y)的每個(gè)連通域只包含C1,C2的一個(gè)編碼。即在大部分情況下區(qū)域順序K2(x,y)的每個(gè)條紋級(jí)次都要進(jìn)行4次組合求解,時(shí)間開銷較大。另外Bi(x,y)由于其覆蓋范圍只有一個(gè)相移條紋周期,容易受到條紋丟失或圖像噪點(diǎn)的干擾,盡管可以通過(guò)查找左右條紋序列解決,但還是在一定程度上影響了所求條紋級(jí)次的準(zhǔn)確度。

1.3.2 改進(jìn)的解碼算法

針對(duì)所提出的問(wèn)題,本文對(duì)區(qū)域順序K2(x,y)的解碼過(guò)程進(jìn)行了一些改進(jìn)。首先仍然是利用相位值0獲取兩個(gè)二值掩模maskp(x,y)和maskn(x,y),并用其區(qū)分出C1,C2的每個(gè)編碼。由于K2(x,y)的每個(gè)序列中的C1,C2編碼相同,所以實(shí)際上可以對(duì)相同碼區(qū)的碼字進(jìn)行統(tǒng)一求解,而不必逐一對(duì)每個(gè)編碼進(jìn)行求解,也就不需要為每個(gè)碼字都設(shè)置一個(gè)掩膜。根據(jù)連通域劃分的原理,本文提出的方法只需設(shè)置兩個(gè)解碼掩膜便可以求出C1,C2的所有碼字。這兩個(gè)掩模mask1(x,y)和mask2(x,y)利用局部順序K1(x,y)的值可以表示為:

(14)

(15)

改進(jìn)的解碼掩膜覆蓋了3個(gè)相移條紋周期,通過(guò)對(duì)mask1(x,y)和mask2(x,y)進(jìn)行連通域標(biāo)記逐一求解每個(gè)連通域的編碼。為了方便說(shuō)明,以圖4中的區(qū)域j1和h1的解碼過(guò)程為例。首先根據(jù)連通域L1的值篩選出mask1(x,y)的連通域L1,將其命名為maskj,然后將maskj分別與C1,C2點(diǎn)乘并用結(jié)果矩陣中的唯一非零眾位數(shù)覆蓋整個(gè)區(qū)域j1的編碼,區(qū)域h1的編碼也可以用同樣的方法得出。最后組合兩部分的編碼就可以還原出區(qū)域j1和h1的區(qū)域順序K2(x,y)。同理j2和h2區(qū)域的編碼也可如此求出。K2(x,y)的解碼細(xì)節(jié)如圖4所示。求得K1(x,y),K2(x,y)后,同樣使用式(10)計(jì)算出條紋階數(shù)K(x,y)。最后將K(x,y)代入式(6)求得絕對(duì)相位Φ(x,y)。

圖4 改進(jìn)的PWGL解碼原理Fig.4 Decoding principle of improved PWGL

2 實(shí)驗(yàn)

2.1 仿真實(shí)驗(yàn)

首先,為驗(yàn)證本文方法的有效性,對(duì)一個(gè)平面進(jìn)行仿真,并用兩種解碼算法分別對(duì)其進(jìn)行三維測(cè)量,比較二者的測(cè)量誤差。另外對(duì)條紋圖像添加了高斯噪聲,從而模擬真實(shí)測(cè)量環(huán)境中的系統(tǒng)誤差,圖5為添加高斯噪聲后的條紋圖像。圖6(a)為本文方法的測(cè)量結(jié)果,圖6(b)為傳統(tǒng)方法的測(cè)量結(jié)果,對(duì)兩個(gè)測(cè)量結(jié)果進(jìn)行誤差分析得到圖6(c)和圖6(d)。由誤差分析的結(jié)果可以看出傳統(tǒng)解碼算法對(duì)圖像噪點(diǎn)更加敏感,因此測(cè)量結(jié)果中的誤差更大。

圖5 仿真條紋圖Fig.5 Simulation of fringe pattern

(a) 本文方法

(c) 本文方法的誤差分析

(d) 傳統(tǒng)方法的誤差分析

2.2 真實(shí)實(shí)驗(yàn)

為了測(cè)試改進(jìn)的解碼算法在實(shí)際測(cè)量中的性能,建立了一個(gè)FPP系統(tǒng),該系統(tǒng)由一個(gè)攝像頭(Point Grey Chameleon3)和一個(gè)投影儀(DLP Light Crafter 4500)組成。相機(jī)和投影儀的分辨率分別為1280×1024 px和912×1140 px。

第一個(gè)實(shí)驗(yàn),對(duì)一個(gè)石膏球分別用本文的解碼算法和傳統(tǒng)的解碼算法進(jìn)行測(cè)量。圖7(a)為被測(cè)物體,圖7(b)~(d)為三步相移條紋圖,圖7(e)和圖7(f)分別為兩幅四級(jí)灰度圖。首先通過(guò)三步相移圖像獲得包裹相位,然后利用相位值精準(zhǔn)分割獲得兩個(gè)掩膜maskn(x,y),maskp(x,y)。有了這兩個(gè)掩膜后便可將圖7(f)中G2(x,y)的編碼C1,C2區(qū)分開,同時(shí)maskn(x,y),maskp(x,y)結(jié)合圖7(e)中的G1(x,y)也可求出圖7(i)中的K1(x,y)。利用K1(x,y)的值可以得出兩種解碼算法所需的二值掩膜,圖7(g)和圖7(h)分別為本文方法的解碼掩膜mask1(x,y)和mask2(x,y)。mask1(x,y)和mask2(x,y)與C1,C2相結(jié)合便可求出圖7(j)中的K2(x,y),進(jìn)而求出圖7(k)中的K(x,y)。最后進(jìn)行相位展開獲得圖7(l)中的絕對(duì)相位,并繪制三維形貌。圖8(a)為本文方法的測(cè)量結(jié)果,圖8(b)為傳統(tǒng)方法的測(cè)量結(jié)果。由結(jié)果可見,本文方法進(jìn)行三維表面測(cè)量時(shí)對(duì)物體表面形貌恢復(fù)得更加精確,特別是物體邊緣處的測(cè)量結(jié)果更完整。

(a) 被測(cè)物體

(b) 三步相移圖像I1(x,y)

(c) 三步相移圖像I2(x,y)

(d) 三步相移圖像I3(x,y)

(e) 灰度圖G1(x,y)

(f) 灰度圖G2(x,y)

(g) 掩膜maskp(x,y)

(h) 掩膜maskn(x,y)

(i) 局部順序K1(x,y)

(j) 區(qū)域順序K2(x,y)

(k) 條紋級(jí)次K(x,y)

(l) 絕對(duì)相位

為了進(jìn)一步驗(yàn)證改進(jìn)解碼算法的有效性,進(jìn)行了第二個(gè)實(shí)驗(yàn),對(duì)一個(gè)雕像進(jìn)行測(cè)量。圖9(a)為相移圖像,圖9(b)、圖9(c)分別為灰度圖G1(x,y)、G2(x,y)。首先通過(guò)三步相移算法獲得包裹相位圖9(a),接著由解碼算法分別求出圖9(d)中的K1(x,y)和圖9(e)中的K2(x,y),并根據(jù)式(10)求出圖9(f)中的K(x,y)。最后再將K(x,y)代入式(6)求得圖9(e)中的絕對(duì)相位Φ(x,y)。圖10對(duì)比了兩種解碼算法的三維測(cè)量結(jié)果,其中圖10(a)為本文改進(jìn)的解碼算法,圖10(b)為傳統(tǒng)的解碼算法。由結(jié)果可以看出,在測(cè)量復(fù)雜物體表面三維形貌時(shí)本文解碼算法對(duì)物體表面細(xì)節(jié)的還原度較高,另外由圖10的放大對(duì)比處可反映出改進(jìn)的解碼算法對(duì)物體邊緣處的還原程度更高。

(a) 本文方法

(b) 傳統(tǒng)方法

(a) 三步相移條紋圖

(b) 灰度圖G1(x,y)

(c) 灰度圖G2(x,y)

(d) 局部順序K1(x,y)

(e) 區(qū)域順序K2(x,y)

(f) 條紋級(jí)次K(x,y)

(a) 本文方法測(cè)量結(jié)果

(b) 傳統(tǒng)方法測(cè)量結(jié)果

3 結(jié)束語(yǔ)

本文改進(jìn)的算法中所用到的掩模mask1(x,y)和mask2(x,y)相較于原PWGL算法的解碼掩膜Bi(x,y)覆蓋范圍更廣,因此對(duì)圖像噪點(diǎn)等異常值的魯棒性更高。此外,由于只需要兩幅mask1(x,y)和mask2(x,y)求解C1,C2所有的編碼,而原算法需要四幅解碼掩膜,因此算法的時(shí)間復(fù)雜度也相對(duì)減少,有效地提升了測(cè)量速度。

用本文改進(jìn)解碼算法可以使PWGL作為一種快速三維重建方法在實(shí)際測(cè)量過(guò)程中有著更好的時(shí)效性,同時(shí)也可以獲取更加精準(zhǔn)的物體表面三維形貌信息。

猜你喜歡
測(cè)量方法
把握四個(gè)“三” 測(cè)量變簡(jiǎn)單
學(xué)習(xí)方法
滑動(dòng)摩擦力的測(cè)量和計(jì)算
滑動(dòng)摩擦力的測(cè)量與計(jì)算
測(cè)量的樂(lè)趣
用對(duì)方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
測(cè)量
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 亚洲国产欧美中日韩成人综合视频| 手机永久AV在线播放| 少妇精品网站| 国产国语一级毛片| 欧美激情综合| 99久久国产自偷自偷免费一区| 丁香婷婷综合激情| 亚洲精品亚洲人成在线| 国内精品视频| 亚洲第一视频网站| 成年人视频一区二区| 欧美亚洲日韩中文| 色视频国产| 一本久道热中字伊人| 国产精品第一区| 被公侵犯人妻少妇一区二区三区| 国产不卡一级毛片视频| 美女视频黄又黄又免费高清| 青青操国产| 看国产毛片| 欧美人与性动交a欧美精品| 狠狠色狠狠色综合久久第一次| 18禁影院亚洲专区| 国产精品部在线观看| 激情爆乳一区二区| 欧美人与动牲交a欧美精品| 蜜臀AVWWW国产天堂| 亚洲天堂777| 国产亚洲精品97在线观看| 青青青国产精品国产精品美女| 亚洲国产精品不卡在线| 日本91在线| 欧美a在线看| 在线色国产| 青青青视频91在线 | 日韩毛片免费观看| 蜜桃臀无码内射一区二区三区 | 亚洲va视频| 国产精品亚洲欧美日韩久久| 午夜久久影院| 国产玖玖视频| 精品一区二区三区自慰喷水| 91破解版在线亚洲| 不卡国产视频第一页| 秘书高跟黑色丝袜国产91在线 | 欧美h在线观看| 中文字幕在线日本| 2021国产在线视频| 伊人久久久大香线蕉综合直播| 亚洲黄色视频在线观看一区| 在线免费观看AV| 日韩精品成人网页视频在线| 国产三级a| 国产成本人片免费a∨短片| 一级一毛片a级毛片| 看av免费毛片手机播放| 好吊色妇女免费视频免费| 99国产精品国产高清一区二区| 99精品在线看| 欧美高清三区| 中文字幕在线观| 日韩大乳视频中文字幕| 91精品在线视频观看| 欧美中文字幕在线视频 | 这里只有精品在线| 伊人成人在线视频| 日韩视频免费| 亚洲AⅤ永久无码精品毛片| 国产欧美视频在线| 欧美激情,国产精品| 又黄又爽视频好爽视频| 五月天在线网站| 无码电影在线观看| 亚洲经典在线中文字幕| 亚洲另类国产欧美一区二区| 国产杨幂丝袜av在线播放| 91亚洲国产视频| 国产成人禁片在线观看| swag国产精品| 欧美激情视频一区| 久久网欧美| 一区二区在线视频免费观看|