代金科,鄭素
(1.西南石油大學(xué) 電氣信息學(xué)院,成都 610500;2.西南石油大學(xué) 理學(xué)院,成都 610500)
在測(cè)量與恢復(fù)物體3維面形的領(lǐng)域,以傳統(tǒng)結(jié)構(gòu)光法為原理的3維測(cè)量有著重要意義,如位相測(cè)量輪廓術(shù)法(phase measurement profilometry,PMP)和傅里葉變換輪廓術(shù)法(Fourier transform profilometry,FTP)等等。這些經(jīng)典方法對(duì)于3維面形的重建已經(jīng)有了非常大的成效,PMP法能夠進(jìn)行針對(duì)于點(diǎn)的初相位求解,解決了被測(cè)對(duì)象面形的非均勻反射引起的偏差,測(cè)量的準(zhǔn)確度為等效波長(zhǎng)的1%~10%;FTP法只需獲取單幅調(diào)制圖就可以復(fù)刻出被測(cè)對(duì)象的3維面形,并且含有高速和高精度恢復(fù)的優(yōu)點(diǎn)。但是PMP法對(duì)正弦光柵的穩(wěn)定性和相移設(shè)備的精密性要求都較高,否則就會(huì)存在比較大的測(cè)量誤差,其測(cè)量目標(biāo)也只適合于小尺寸物體;而FTP法存在頻譜混疊現(xiàn)象且缺乏遷移適用性,采用FTP法也有可能因?yàn)榛鶞?zhǔn)頻和零頻頻譜摻雜導(dǎo)致無(wú)法進(jìn)行準(zhǔn)確的窗口式波過(guò)濾,從而無(wú)法正確恢復(fù)被測(cè)對(duì)象的面形結(jié)構(gòu)。此類經(jīng)典方法在解相位步驟時(shí)都會(huì)過(guò)于繁瑣,亦或是噪聲過(guò)大光源混雜,或在測(cè)量斷崖式高度陡變物體等病態(tài)問題時(shí),效果往往不盡如人意。
隨著人工智能時(shí)代的到來(lái),算法圖像處理和神經(jīng)網(wǎng)絡(luò)于眾多方面迅速興起,其中非常多的算法和框架都被引入到了3維面形重建之中。MIN等人[1]利用最小二乘法測(cè)量3維物體面形粗糙度。GUO等人[2]以改進(jìn)簡(jiǎn)化的反向傳播(back propagation,BP)神經(jīng)網(wǎng)絡(luò)模型提高3維面形測(cè)量精度。本文作者通過(guò)對(duì)樣本數(shù)據(jù)特征的采集和算法優(yōu)化,訓(xùn)練一種深度神經(jīng)網(wǎng)絡(luò)模型來(lái)恢復(fù)物體的面形信息。
圖1 結(jié)構(gòu)光法面形恢復(fù)原理
通過(guò)相似三角形△ABG∽△CDG的幾何關(guān)系,化簡(jiǎn)并最終得到物體表面一點(diǎn)(x,y)的高度h,計(jì)算過(guò)程如下:
(1)
(2)
I(x,y)=R(x,y)·[A(x,y)+
B(x,y)·cosφ(x,y)]
(3)
(4)
式中,I(x,y)表示被測(cè)對(duì)象一點(diǎn)的光強(qiáng)值,R(x,y)表示被測(cè)對(duì)象表面非均勻反射系數(shù),A(x,y)為背景光強(qiáng)度,B(x,y)為調(diào)制度,φ(x,y)為相位值,N為相移總步數(shù),n為第1,2,3…步相移,In(x,y)為第n步相移時(shí)(x,y)點(diǎn)的光照強(qiáng)度。(3)式為CCD相機(jī)接收到的光強(qiáng)信息的表達(dá)式;分別設(shè)相移量為0,π/3,2π/3得到3個(gè)方程,并聯(lián)立求解,可得相位表達(dá)式(4)式(過(guò)程略)。3步相移變化如圖2所示,為一個(gè)相移方向上的條紋與調(diào)制條紋圖。圖中,φx,1表示投影條紋沿x方向上的第1步相移調(diào)制圖,φx,2表示投影條紋沿x方向上的第2步相移調(diào)制圖,φx,3表示投影條紋沿x方向上的第3步相移調(diào)制圖。
圖2 3步相移調(diào)制
不難看出,以PMP法還原高度信息,會(huì)在最后求取相位差時(shí),包含一個(gè)反正切解相位的步驟,而通過(guò)相移法求得的相位值域會(huì)被限制在(-π,π)的區(qū)間上,故必須對(duì)其進(jìn)行一個(gè)反正切運(yùn)算,即解包裹處理,才能正確恢復(fù)出被折疊的真實(shí)高度信息,而此過(guò)程往往會(huì)使得計(jì)算過(guò)程變得冗雜而困難。所以,本文作者嘗試以新的視角來(lái)思考這個(gè)問題,希望找到一個(gè)數(shù)學(xué)函數(shù),來(lái)擬合物體的光強(qiáng)信息和此點(diǎn)高度值的直接關(guān)系。
深度神經(jīng)網(wǎng)絡(luò)(deep neural network,DNN)的結(jié)構(gòu)如圖3所示。網(wǎng)絡(luò)框架由含32層中間隱藏層構(gòu)成。層間激活函數(shù)為tanh,以σ表示,層間連接采用可有效防止模型過(guò)擬合的隨機(jī)舍棄方式。每層隱含層含有18個(gè)記憶神經(jīng)元,輸入為單個(gè)像素點(diǎn)的9維光強(qiáng)特征,輸出為此點(diǎn)的對(duì)應(yīng)高度預(yù)測(cè)值。
圖3 深度神經(jīng)網(wǎng)絡(luò)拓?fù)鋱D
機(jī)器學(xué)習(xí)中的神經(jīng)網(wǎng)絡(luò)模型在本質(zhì)上是一種標(biāo)簽學(xué)習(xí)算法[3],通過(guò)使用樣本集訓(xùn)練學(xué)習(xí)模型f(·):Rm→Ro,其中f(·)表示兩集合間的映射邏輯關(guān)系,Rm和Ro分別表示有m和o個(gè)元素的集合。此種模型無(wú)需相機(jī)的標(biāo)定和解包裹等繁雜過(guò)程,直接建立輸入量和預(yù)測(cè)值之間的函數(shù)關(guān)系。Rm的下標(biāo)m在神經(jīng)網(wǎng)絡(luò)模型中表示輸入樣本的特征維度數(shù),Ro的下標(biāo)o為模型預(yù)測(cè)值的維度數(shù)[3],即輸入一條特征X=[x1x2…xm]T和標(biāo)簽y,神經(jīng)網(wǎng)絡(luò)通過(guò)學(xué)習(xí)訓(xùn)練,可以擬合出一個(gè)高緯非線性函數(shù)。在輸入結(jié)點(diǎn)與輸出結(jié)點(diǎn)之間,會(huì)存在一個(gè)層或者多層的非線性層,稱為隱藏層。
圖4是1維輸出且只含有1層隱藏層的多層感知機(jī)[4](multilayer perceptron,MLP)。在此MLP結(jié)構(gòu)中,樣本特征由輸入層導(dǎo)入,為一列代表樣本特征值的神經(jīng)元構(gòu)成。信息傳遞途徑隱藏層,上一層的信息經(jīng)過(guò)下一層隱藏層中的結(jié)點(diǎn)進(jìn)行加權(quán)求和:z=w1x1+w2x2+…+wmxn,其中參數(shù)wm為各輸入項(xiàng)的加權(quán)值,加上一個(gè)偏置項(xiàng)后,由非線性單元進(jìn)行z值的非線性轉(zhuǎn)換。最右邊的層叫做輸出層,其收到的傳遞值是最后一個(gè)隱藏層經(jīng)過(guò)非線性加權(quán)變換的輸出值。而DNN的核心原理就是對(duì)MLP的橫向方向進(jìn)行隱藏層的層數(shù)拓展[5]。當(dāng)網(wǎng)絡(luò)結(jié)構(gòu)確定后,神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過(guò)程就是求解所有層間權(quán)重和偏置的過(guò)程,在整個(gè)神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練完成后,即可對(duì)新的物體直接建立其光照強(qiáng)度和真實(shí)高度信息,如圖5所示。
圖4 多層感知器結(jié)構(gòu)
圖5 DNN 3維重建實(shí)現(xiàn)過(guò)程
DNN模型在本質(zhì)上是一個(gè)處處可導(dǎo)的多元復(fù)合函數(shù),在理論上能擬合出任意維度的超曲面,其訓(xùn)練過(guò)程是數(shù)據(jù)在網(wǎng)絡(luò)中正向傳播,再以反向傳播求取函數(shù)梯度更新權(quán)重,以進(jìn)行參數(shù)迭代求解目標(biāo)函數(shù)最優(yōu)解的過(guò)程。具體訓(xùn)練流程如圖6所示。
圖6 DNN訓(xùn)練流程圖
通過(guò)改變條紋光的投影角度,增加了神經(jīng)網(wǎng)絡(luò)訓(xùn)練樣本的特征維度。更多維度的光強(qiáng)信息訓(xùn)練,能使得模型魯棒性增加[6],使得訓(xùn)練好的模型在投影系統(tǒng)參數(shù)(如環(huán)境光強(qiáng)噪聲、測(cè)量深度等)強(qiáng)噪音的情況下能夠精確復(fù)現(xiàn)出被測(cè)對(duì)象的3維面形。在條紋光的部署上,與傳統(tǒng)N步相移法在單一方向上改變條紋光相位不同,將周期為T=8 pixel、變量區(qū)間為0~512 pixel的仿真余弦條紋以0°、45°和90°3個(gè)旋轉(zhuǎn)角度,以15°傾斜角投影在被測(cè)物體上。由于被測(cè)對(duì)象的面形起伏,當(dāng)正弦條紋光投影到被測(cè)對(duì)象上時(shí),會(huì)讓光柵條紋的相位發(fā)生調(diào)制型變化,再用CCD相機(jī)收集這些條紋光光強(qiáng)信息組,得到總共9幅條紋圖,如圖7所示。
圖7 條紋投影調(diào)制模式
圖7中,I0°,φ1,I0°,φ2,I0°,φ3為投影條紋光于0°旋轉(zhuǎn)角下沿水平方向經(jīng)3步相移調(diào)制后的調(diào)制條紋圖。I45°,φ1,I45°,φ2,I45°,φ3為投影條紋光于45°旋轉(zhuǎn)角下沿對(duì)角線方向經(jīng)3步相移調(diào)制后的調(diào)制條紋圖,以此類推。輸入層以條紋調(diào)制前后總計(jì)9個(gè)光強(qiáng)信息作為訓(xùn)練集維度特征,分別記為F1~F9,輸出值以每個(gè)點(diǎn)的真實(shí)高度值作為其自身標(biāo)簽,即y。投影儀本身不發(fā)生位置和角度改變,通過(guò)編碼調(diào)整投影條紋的旋轉(zhuǎn)角,可以得到同一點(diǎn)在不同條紋角度下的光強(qiáng)信息。單點(diǎn)光照強(qiáng)度的特征采集方式如圖8所示。
圖8 單點(diǎn)光照強(qiáng)度的樣本采集
在圖8的樣本集表格中,y1~yi表示各樣本點(diǎn)對(duì)應(yīng)的真實(shí)高度值,即為樣本標(biāo)簽。將每個(gè)樣本數(shù)據(jù)寫作計(jì)算機(jī)更易于處理的向量形式,以每個(gè)像素點(diǎn)在9幅調(diào)制圖中所對(duì)應(yīng)的光照強(qiáng)度值作為其特征值I1,1~I(xiàn)1,9。在訓(xùn)練時(shí),若取訓(xùn)練集的一個(gè)像素點(diǎn)的特征值和標(biāo)簽值組成向量X1,作為神經(jīng)網(wǎng)絡(luò)的輸入值,則其表達(dá)式為:
(5)
式中,X1表示此點(diǎn)是(1,1)位置的像素對(duì)應(yīng)的樣本點(diǎn),I1,1~I(xiàn)1,9表示同一點(diǎn)在3種旋轉(zhuǎn)角下3步相移的光強(qiáng)值,h1表示此點(diǎn)的真實(shí)高度值。對(duì)于一個(gè)分辨率為512×512的重建對(duì)象,一共具有512×512=262144個(gè)像素級(jí)樣本,記為訓(xùn)練集S={X1,X2,…,X262144},以訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的擬合函數(shù)。
圖9為簡(jiǎn)化的節(jié)點(diǎn)信息傳遞圖。紅色表示權(quán)重為負(fù),藍(lán)色連線表示權(quán)重為正,灰色連線表示隨機(jī)舍棄[7]的層節(jié)點(diǎn);方框中的綠色曲線表示激活函;a0,1表示神經(jīng)網(wǎng)絡(luò)輸入層的第1個(gè)輸入項(xiàng),ω1,1表示a0,1項(xiàng)在第1層神經(jīng)網(wǎng)絡(luò)的第1個(gè)權(quán)重系數(shù),b1,1表示第1層神經(jīng)網(wǎng)絡(luò)的第1個(gè)偏置系數(shù),以此類推。經(jīng)過(guò)激活函數(shù)將線性映射轉(zhuǎn)換為非線性關(guān)系,得到神經(jīng)網(wǎng)絡(luò)第1層的其中一個(gè)輸出a1,1,以tanh函數(shù)為線性轉(zhuǎn)非線性的映射激活,其轉(zhuǎn)換關(guān)系如下:
圖9 簡(jiǎn)化的節(jié)點(diǎn)信息傳遞圖
(6)
BP神經(jīng)網(wǎng)絡(luò)是一種采用梯度下降算法[8]進(jìn)行學(xué)習(xí)的多層信息前向傳遞誤差反向傳播神經(jīng)網(wǎng)絡(luò),根據(jù)深度信念網(wǎng)絡(luò)[9]理論,BP神經(jīng)網(wǎng)絡(luò)隱層的神經(jīng)結(jié)點(diǎn)數(shù)越多,就越可以以極大精度擬合任意連續(xù)超曲面。BP網(wǎng)絡(luò)有特征光強(qiáng)值的前饋傳導(dǎo)和逆向傳播兩個(gè)相互影響制約的步驟[10]。特征光強(qiáng)值的前饋傳導(dǎo)步驟是:輸入的特征光強(qiáng)值通過(guò)輸入結(jié)點(diǎn)和隨機(jī)舍棄的隱藏層逐一計(jì)算出各單元輸出值。逆向傳播步驟是:遞歸循環(huán)地計(jì)算模型預(yù)測(cè)值與樣本標(biāo)簽高度值的殘差,并根據(jù)代價(jià)函數(shù)最小化來(lái)自動(dòng)調(diào)整每個(gè)神經(jīng)元結(jié)點(diǎn)的權(quán)重比例和后續(xù)激活閾值[11],最后以全連接作為輸出預(yù)測(cè)值[12]。將神經(jīng)網(wǎng)絡(luò)中的權(quán)重和偏置參數(shù)以和的形式記錄,其中下標(biāo)i和下標(biāo)j分別表示此參數(shù)是屬于第i層網(wǎng)絡(luò)的j個(gè)權(quán)重或偏置參數(shù)。輸入量A1為樣本數(shù)據(jù)X1除去標(biāo)簽值h1的剩下部分,輸入量A1的各分量在神經(jīng)網(wǎng)絡(luò)中傳播時(shí)以an,m表示,其中n表示數(shù)值此刻正傳遞于神經(jīng)網(wǎng)絡(luò)的第n層,m表示此分量為A1的第m個(gè)特征數(shù)值。記神經(jīng)網(wǎng)絡(luò)第1層所有權(quán)重參數(shù)組成的系數(shù)矩陣為W1,所有偏置系數(shù)組成的偏置向量為B1,則神經(jīng)網(wǎng)絡(luò)第1層的層間線性矩陣映射關(guān)系如下:
W1A1+B1=
(7)
將上述結(jié)果記為Z1,再通過(guò)激活函數(shù)tanh對(duì)Z1的第1個(gè)分量z1,1為例,對(duì)于層間非線性軟化的轉(zhuǎn)換,可將(7)式簡(jiǎn)化,記Z1=W1A1+B1,其轉(zhuǎn)換關(guān)系如下:
(8)
B2]…+B31}+b32,1〉
(9)
(10)
本文中以彈性網(wǎng)絡(luò)[12]作為目標(biāo)函數(shù)懲罰項(xiàng),同時(shí)使用l1和l2范數(shù)進(jìn)行正則化,將二者的優(yōu)點(diǎn)都結(jié)合了起來(lái),兼顧了拉索回歸[13]和嶺回歸[14]的各自優(yōu)勢(shì),其目標(biāo)函數(shù)懲罰項(xiàng)Ω(W)的數(shù)學(xué)表達(dá)式如下:
(11)
(12)
問題轉(zhuǎn)化為求取目標(biāo)函數(shù)最小值時(shí)對(duì)應(yīng)的參數(shù)值,一旦將所有權(quán)重系數(shù)和偏置系數(shù),神經(jīng)網(wǎng)絡(luò)模型就確定了。現(xiàn)在轉(zhuǎn)化為如下數(shù)學(xué)問題:
(W,B)=arg minfobj
(13)
本文作者使用非常適合處理萬(wàn)量級(jí)以上樣本數(shù)的隨機(jī)梯度下降[16](stochastic gradient descent,SGD)的迭代算法來(lái)求解上述問題,如本訓(xùn)練對(duì)象的512×512=262144個(gè)像素級(jí)樣本。因SGD是針對(duì)每個(gè)樣本進(jìn)行逐一迭代的[17],所以SGD對(duì)樣本集的特征縮放非常敏感,需要將樣本特征即9維的光照強(qiáng)度信息,全部歸一化到均值為0、方差為1的區(qū)間內(nèi)。每次將樣本集S={X1,X2,…,X262144}中的多個(gè)樣本傳入算法流程,以迭代方式更新參數(shù)值,其迭代公式如下:
(14)
神經(jīng)網(wǎng)絡(luò)的反向傳播,是一種以鏈?zhǔn)椒▌t求取函數(shù)梯度分量的過(guò)程[19]。通過(guò)增加電腦內(nèi)存占用為代價(jià),提高神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度。目標(biāo)函數(shù)的梯度為:
(15)
式中,梯度的分量為目標(biāo)函數(shù)的偏導(dǎo)數(shù), 由于神經(jīng)網(wǎng)絡(luò)的層層復(fù)合,參數(shù)所在神經(jīng)網(wǎng)絡(luò)的層級(jí)越初級(jí),其偏導(dǎo)計(jì)算式越繁瑣:
(16)
反向傳播即以占用更多內(nèi)存為代價(jià),如圖10所示。算力較強(qiáng)的計(jì)算機(jī),在DNN架構(gòu)的設(shè)計(jì)策略上,可增加網(wǎng)絡(luò)的寬度和深度[20],或使用不同的處理器,如在圖形處理器上進(jìn)行并行運(yùn)算。在提高擬合精度的同時(shí),還能顯著減少神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時(shí)間[21]。
圖10 計(jì)算機(jī)內(nèi)存使用示意
將各個(gè)鏈?zhǔn)街虚g項(xiàng)寫入計(jì)算機(jī)內(nèi)存,便可快速求解任意第p層的第q個(gè)權(quán)重的偏導(dǎo)數(shù),讓神經(jīng)網(wǎng)絡(luò)可以較為快速地迭代出收斂區(qū)間下的神經(jīng)網(wǎng)絡(luò)全參數(shù)。只要訓(xùn)練完成,遷移適用性也會(huì)變得非常強(qiáng),這使得在測(cè)量新型面形時(shí),無(wú)需再重復(fù)訓(xùn)練,而神經(jīng)網(wǎng)絡(luò)權(quán)值參數(shù)的優(yōu)化更新,是一個(gè)可多次輸入樣本簇并迭代優(yōu)化的過(guò)程。
為了增加網(wǎng)絡(luò)的泛化能力,本文作者使用了總計(jì)260×104個(gè)像素級(jí)樣本點(diǎn)對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行參數(shù)訓(xùn)練,且對(duì)每類物體進(jìn)行多個(gè)輪次訓(xùn)練,體現(xiàn)了神經(jīng)網(wǎng)絡(luò)的進(jìn)階學(xué)習(xí)性。如加入刀鋒和波紋狀樣本進(jìn)行訓(xùn)練,可強(qiáng)化神經(jīng)網(wǎng)絡(luò)對(duì)物體表面劃痕或刮痕的重建魯棒性,如圖11a和圖11b所示。加入隨機(jī)噪點(diǎn)樣本進(jìn)行訓(xùn)練,可強(qiáng)化神經(jīng)網(wǎng)絡(luò)對(duì)表面含較多毛刺物體的重建魯棒性,如圖11c所示。
圖11 不同類型的仿真訓(xùn)練物體
將兩個(gè)呈共軛關(guān)系等階梯狀物體的像素點(diǎn)記為樣本集送入神經(jīng)網(wǎng)絡(luò)再次迭代參數(shù),既可優(yōu)化神經(jīng)網(wǎng)絡(luò)在斷崖式物體面形測(cè)量上表現(xiàn),同時(shí)又優(yōu)化了此類階梯型樣本數(shù)據(jù)在空間上分布不均衡所導(dǎo)致神經(jīng)網(wǎng)絡(luò)的欠魯棒性,如圖12和圖13所示。
圖13 倒置共軛階梯
總共進(jìn)行193個(gè) 輪次時(shí)均方誤差(mean square error,MSE)達(dá)到一個(gè)收斂區(qū)間(1.0×10-8~1.0×10-9)。圖14為深度神經(jīng)網(wǎng)絡(luò)模型輸出高度值的MSE隨迭代輪次的變化結(jié)果。圖15為其它性能指標(biāo)的參數(shù)走勢(shì)圖。當(dāng)然,如此高的測(cè)量精度只是在理想樣本集上精度的表現(xiàn)。在對(duì)實(shí)際物體進(jìn)行測(cè)量時(shí)精度會(huì)降低1~2個(gè)數(shù)量級(jí)。作者將收斂的DNN模型儲(chǔ)存起來(lái),然后在真實(shí)物體數(shù)據(jù)集上進(jìn)行面形重建實(shí)驗(yàn)。
圖14 MSE收斂過(guò)程
圖15 其它參數(shù)變化
因本文中重建物體面形的方法與其自身實(shí)驗(yàn)裝置的耦合性較強(qiáng),部分主要實(shí)驗(yàn)裝置配置和神經(jīng)網(wǎng)絡(luò)的最優(yōu)參數(shù)如表1所示。
表1 本文中的DNN訓(xùn)練參數(shù)與實(shí)驗(yàn)配置
本文作者使用相關(guān)軟件進(jìn)行仿真重建實(shí)驗(yàn),以訓(xùn)練好的深度神經(jīng)網(wǎng)絡(luò)重建了軟件中內(nèi)置山峰函數(shù)的絕對(duì)值函數(shù),還原結(jié)果和誤差分布圖如圖16和圖17所示。
圖16 山峰絕對(duì)值函數(shù)重建
圖17 重建誤差分布
經(jīng)典FTP法和PMP法的重建單點(diǎn)最大誤差大于1.00 mm,MLP法的重建單點(diǎn)最大誤差為1.00×10-2mm。GUO等人[2]的BP神經(jīng)網(wǎng)絡(luò)的平均重建時(shí)間為3.8 s,單點(diǎn)最大誤差為0.34×10-3mm。本文中的DNN單點(diǎn)最大誤差在1.42×10-4mm以下,重建時(shí)間達(dá)到了非常短的0.27 s之內(nèi)。因?yàn)檎麄€(gè)DNN的高度復(fù)原計(jì)算方法是對(duì)單點(diǎn)進(jìn)行的直接映射關(guān)系預(yù)測(cè),結(jié)構(gòu)相對(duì)簡(jiǎn)單,也沒有較大的區(qū)域性誤差。本文中的DNN對(duì)于物體面形的重建從速度和精度上相較于其它方法都存在著優(yōu)勢(shì),且對(duì)于反光材質(zhì)的物品(如鐵制鍍漆物品)的還原結(jié)果也較為優(yōu)良。
考慮到不同測(cè)量距離和測(cè)量環(huán)境對(duì)面形恢復(fù)精度的影響,對(duì)西南石油大學(xué)鐵制校徽進(jìn)行了對(duì)照重建實(shí)驗(yàn),如圖18所示。對(duì)本文中方法的面形重建能力進(jìn)行了定量評(píng)價(jià),具體數(shù)值如表2所示。
表2 不同條件下重建能力對(duì)比
圖18 鐵質(zhì)?;諏?duì)照重建實(shí)驗(yàn)
本文中的DNN具有一定的遷移泛化能力,即一旦網(wǎng)絡(luò)參數(shù)全部訓(xùn)練完畢,便可在無(wú)需再次訓(xùn)練情況下迅速重建物體面形信息。即使在光線干擾較強(qiáng)的室外,且測(cè)量距離小于10 m之內(nèi)的情況下,對(duì)物體的重建平均誤差不超過(guò)9.96×10-4mm。
為了驗(yàn)證本文中DNN在真實(shí)情況下的對(duì)物體面形恢復(fù)的效果,作者對(duì)太陽(yáng)神鳥(仿品)和某觀音飾品進(jìn)行了真實(shí)試驗(yàn),如圖19和圖20所示。
圖19 太陽(yáng)神鳥仿品重建
圖20 觀音飾品重建
同時(shí),為了對(duì)比本文中DNN對(duì)物體面形恢復(fù)效能,作者以同等階梯狀物體的面形恢復(fù)效果作了橫向?qū)Ρ?。其?樣本規(guī)模是指參與訓(xùn)練的總樣本數(shù)量,樣本規(guī)模和訓(xùn)練輪數(shù)越大,在相同性能的計(jì)算機(jī)下耗費(fèi)的計(jì)算資源和計(jì)算時(shí)間也就越大。對(duì)比結(jié)果如表3所示。
表3 不同方法重建階梯狀物體性能對(duì)照
本文中采用了以較多維度的相關(guān)參量作訓(xùn)練集來(lái)表征物體面形高度,即GUO等人[2]提出的進(jìn)一步優(yōu)化的方法之一。根據(jù)深度信念網(wǎng)絡(luò)理念,只要模型訓(xùn)練的批次取得合適范圍,訓(xùn)練后期步長(zhǎng)足夠小,并且整個(gè)模型有更多的神經(jīng)結(jié)點(diǎn)和隱藏層層數(shù),擬合任意連續(xù)超曲面都是可行的,甚至可以讓損失無(wú)限趨近于0。特征維度增加之后,需要更高質(zhì)量的樣本集來(lái)訓(xùn)練神經(jīng)網(wǎng)絡(luò),需要更精準(zhǔn)的儀器和低噪聲的光照環(huán)境中所收集的樣本集來(lái)進(jìn)一步提高面形恢復(fù)精確度。作者將相位測(cè)量輪廓術(shù)中的相移思想運(yùn)用到神經(jīng)網(wǎng)模型的樣本集收集中,通過(guò)不同角度的條紋增加了單點(diǎn)光強(qiáng)信息的特征數(shù),同時(shí)防止了神經(jīng)網(wǎng)模型欠擬合。本文中的方法省去了傳統(tǒng)相位測(cè)量輪廓術(shù)和傅里葉變換輪廓術(shù)的繁瑣計(jì)算過(guò)程,優(yōu)化了神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練樣本采集方式,在實(shí)踐中可降低計(jì)算時(shí)間和設(shè)備成本,為實(shí)時(shí)面形復(fù)原提供了一定的可行性。