劉波,李秀副
(濟(jì)源職業(yè)技術(shù)學(xué)院機(jī)電工程學(xué)院,河南 濟(jì)源 459000)
在工業(yè)制造過(guò)程中,由于受到加工工藝以及設(shè)備磨損等不同原因的影響,導(dǎo)致部分生產(chǎn)的機(jī)械零件存在缺陷或者誤差,影響產(chǎn)品質(zhì)量.不合格的零件不僅無(wú)法滿足使用者的需求,還會(huì)造成各種安全事故.質(zhì)量監(jiān)測(cè)是確保零件質(zhì)量的重要手段,傳統(tǒng)的質(zhì)量檢測(cè)方法大部分為人工檢測(cè),存在檢測(cè)效率比較低以及檢測(cè)結(jié)果不準(zhǔn)確等問(wèn)題.相關(guān)專家將三維重建技術(shù)引入到機(jī)械零件質(zhì)量檢測(cè)中,但是由于目前對(duì)三維重建技術(shù)[1-2]具有比較高的要求,因此,仍然存在很多問(wèn)題需要進(jìn)一步解決.為此,相關(guān)領(lǐng)域的專家在傳統(tǒng)研究的基礎(chǔ)上給出了一些研究成果,例如馬世博等人[3]通過(guò)Matlab平臺(tái)完成目標(biāo)輪廓特征提取,引入圖像處理算法和三維模型重構(gòu)算法實(shí)現(xiàn)最終的三維重構(gòu).張雅麗等人[4]對(duì)三維重構(gòu)實(shí)驗(yàn)獲取的全部圖像展開(kāi)目標(biāo)提取和拼接處理,獲取沒(méi)有經(jīng)過(guò)處理的拼接圖像,采用regionprops函數(shù)和形態(tài)學(xué)完成質(zhì)心和質(zhì)心連通區(qū)域的特征提取,同時(shí)對(duì)其展開(kāi)顏色轉(zhuǎn)換,最終結(jié)合插值擬合算法完成三維重構(gòu).由于上述兩種方法在三維重建過(guò)程中沒(méi)有對(duì)目標(biāo)圖像進(jìn)行預(yù)處理,進(jìn)而導(dǎo)致獲取的三維重建效果并不理想.因此,結(jié)合虛擬現(xiàn)實(shí)技術(shù),提出一種基于虛擬現(xiàn)實(shí)技術(shù)的機(jī)械零件三維重構(gòu)方法,實(shí)驗(yàn)測(cè)試結(jié)果表明,所提方法可以獲取高精度的機(jī)械零件三維重構(gòu)結(jié)果.
光照因素在機(jī)械零件圖像內(nèi)可以描述為是一種乘性因素,將其表示為公式(1)的形式:
I(x,y)=R(x,y)×L(x,y).
(1)
式(1)中,I(x,y)代表機(jī)械零件圖像的灰度值;R(x,y)代表機(jī)械零件圖像在設(shè)定點(diǎn)對(duì)應(yīng)的反射率;L(x,y)代表光照情況.
由于光照在機(jī)械零件上會(huì)隨著時(shí)間的變化而變化,在確定機(jī)械零件圖像在(x,y)點(diǎn)的光照區(qū)概況后,通過(guò)分析(x,y)周圍的平均光照情況即可大致確定光照變化規(guī)律.在此基礎(chǔ)上,將Retinex理論的核心Retinex(x,y)表示為公式(2)的形式:
(2)
式(2)中,F(x,y)代表環(huán)繞函數(shù),將式(1)代入到式(2)中,則可以得到:
(3)
經(jīng)過(guò)上述分析可知,Retinex輸出機(jī)械零件圖像并不能夠精準(zhǔn)掌握光照變化情況,所以需要對(duì)不同光照下的機(jī)械零件圖像進(jìn)行預(yù)處理[5-6],主要步驟如下所示.
1)采用Retinex對(duì)輸入機(jī)械零件圖像進(jìn)行預(yù)處理
將待處理的機(jī)械零件圖像輸入到計(jì)算機(jī)內(nèi),為了有效確保平滑圖像的高斯窗不能偏大,需要設(shè)定尺度參數(shù)的取值.對(duì)于灰度機(jī)械零件圖像,采用單尺度Retinex理論進(jìn)行預(yù)處理,對(duì)應(yīng)的表達(dá)式如下所示:
Retinex(x,y)=lgI(x,y)-lgI(x,y)?F(x,y).
(4)
2)進(jìn)一步對(duì)機(jī)械零件圖像進(jìn)行灰度值歸一化處理
通過(guò)直方圖歸一化方法對(duì)圖像進(jìn)行灰度值歸一化處理,對(duì)應(yīng)的計(jì)算式如下:
(5)
式(5)中,H(x,y)代表灰度值歸一化處理的機(jī)械零件圖像;mold和mnew分別代表輸出機(jī)械零件圖像的均值和標(biāo)準(zhǔn)差;βold和βnew分別代表歸一化處理后機(jī)械零件圖像的均值和標(biāo)準(zhǔn)差.
在計(jì)算機(jī)內(nèi)采用虛擬現(xiàn)實(shí)技術(shù)對(duì)機(jī)械零件進(jìn)行三維重構(gòu)[7-8],優(yōu)先對(duì)全部機(jī)械零件圖像進(jìn)行預(yù)處理,完成預(yù)處理以后通過(guò)VTK軟件完成三維重構(gòu),圖1給出了機(jī)械零件三維重構(gòu)的流程圖.
圖1 基于虛擬現(xiàn)實(shí)技術(shù)的機(jī)械零件三維重構(gòu)流程圖
通過(guò)分析圖1可知,機(jī)械零件三維重構(gòu)[9-10]可以劃分為三個(gè)階段,分別為距離測(cè)量、三維重構(gòu)以及三維顯示.通過(guò)Visual和VTK軟件完成基于虛擬現(xiàn)實(shí)技術(shù)的機(jī)械零件三維重構(gòu)[11-12].其中,通過(guò)Visual軟件不僅可以有效實(shí)現(xiàn)展示界面的設(shè)計(jì),同時(shí)還可以實(shí)現(xiàn)機(jī)械零件數(shù)據(jù)集成等相關(guān)工作.VTK軟件主要負(fù)責(zé)機(jī)械零件圖像重構(gòu)以及三維可視化處理,是實(shí)現(xiàn)機(jī)械零件三維重構(gòu)的重要工具.在啟動(dòng)VTK軟件前期,利用圖2實(shí)現(xiàn)不同機(jī)械零件目標(biāo)圖像的源文件目錄以及編譯目錄的設(shè)定,全部工作均是在Windows平臺(tái)實(shí)現(xiàn)的.
圖2 源文件目錄和編譯目錄的設(shè)定
在完成圖2的相關(guān)設(shè)定后,需要進(jìn)一步分析VTK軟件中的管道機(jī)制,可以有效實(shí)現(xiàn)數(shù)據(jù)或者圖像可視化處理.選取包圍盒作為基于虛擬現(xiàn)實(shí)技術(shù)的機(jī)械零件三維重構(gòu)[13-14].另外,采用VTK軟件還可以實(shí)現(xiàn)機(jī)械零件的三維可視化.
首先,采用局部圖像梯度信息得到機(jī)械零件圖像對(duì)應(yīng)的三維坐標(biāo),將原始機(jī)械零件圖像坐標(biāo)設(shè)定為(x,y),則圖像重構(gòu)后獲取的機(jī)械零件輪廓長(zhǎng)度l可以表示為公式(6)的形式:
l=ψ(Ilbf+(1-ψ)Ilgf)+u(l(τ)+φ(p(i))) ,
(6)
式(6)中,ψ代表局部機(jī)械零件圖像中不同像素領(lǐng)域的灰度值;Ilbf代表邊緣輪廓長(zhǎng)度對(duì)應(yīng)的約束項(xiàng);ψ代表稀疏系數(shù);Ilgf代表機(jī)械零件圖像的局部灰度信息;u代表能量項(xiàng);l(τ)代表機(jī)械零件圖像的局部梯度;φ代表常數(shù);p(i)代表空間掃描向量.
根據(jù)對(duì)機(jī)械零件圖像目標(biāo)區(qū)域以及背景區(qū)域展開(kāi)平滑度演化博弈處理,進(jìn)而得到如公式(7)所示的盒子模型:
(7)
式(7)中,N(φ)代表盒子模型;Δρ代表正則項(xiàng);α代表像素稀疏度.
采用包圍盒法可以獲取機(jī)械零件圖像在設(shè)定范圍內(nèi)的高斯概率分布H(φ),對(duì)應(yīng)的計(jì)算式如下所示:
(8)
結(jié)合公式(7)可以獲取機(jī)械零件圖像對(duì)應(yīng)的三維坐標(biāo)p(f1,f2),對(duì)應(yīng)的表達(dá)式如下:
(9)
結(jié)合公式(9),通過(guò)Euler—Lagrange方程組建三維數(shù)據(jù)場(chǎng),對(duì)應(yīng)的表達(dá)式如下所示:
(10)
式(10)中,?代表機(jī)械零件圖像重構(gòu)灰度值;t和Δt代表運(yùn)行時(shí)間和采樣時(shí)間;(λ1,λ2)代表空間掃描向量.
在得到機(jī)械零件對(duì)應(yīng)的三維數(shù)據(jù)場(chǎng)后,需要通過(guò)三維數(shù)據(jù)場(chǎng)完成機(jī)械零件的繪制,為了實(shí)現(xiàn)機(jī)械零件重構(gòu)[15],需要將目標(biāo)圖像對(duì)應(yīng)的像素作為模板完成匹配Z(ij)(h),計(jì)算公式如下所示:
(11)
通過(guò)機(jī)械零件圖像的三維直接體就可以得到三維圖像重構(gòu)表達(dá)式f1(x)和f2(x),如公式(12)所示:
(12)
式(12)中,E(x,y)代表機(jī)械零件圖像固定模板.
為了驗(yàn)證所提基于虛擬現(xiàn)實(shí)技術(shù)的機(jī)械零件三維重構(gòu)方法的有效性,通過(guò)Delphi語(yǔ)言進(jìn)行編程,分別選取不同類型的機(jī)械零件作為被測(cè)對(duì)象.
1)簡(jiǎn)單機(jī)械零件三維重構(gòu)效果分析
選取幾種比較簡(jiǎn)單的機(jī)械零件圖像進(jìn)行三維重建,獲取的實(shí)驗(yàn)結(jié)果如圖3表示.分別采用兩種不同方法對(duì)幾個(gè)比較簡(jiǎn)單的機(jī)械零件進(jìn)行三維重構(gòu),其中通過(guò)所提方法可以更加精準(zhǔn)刻畫(huà)和描述各個(gè)機(jī)械零件的細(xì)節(jié)部分,而使用文獻(xiàn)[3]方法進(jìn)行三維重構(gòu)過(guò)程中,會(huì)出現(xiàn)圖像細(xì)節(jié)丟失等情況.由此可見(jiàn),采用所提方法可以獲取更加理想的三維重構(gòu)效果.
(a)所提方法 (b)文獻(xiàn)[3]方法
2)復(fù)雜機(jī)械零件三維重構(gòu)結(jié)果分析
實(shí)驗(yàn)測(cè)試選取結(jié)構(gòu)相對(duì)比較復(fù)雜的機(jī)械零件進(jìn)行三維重構(gòu),通過(guò)圖4可以看出,在實(shí)驗(yàn)對(duì)象變?yōu)楸容^復(fù)雜的機(jī)械零件后,文獻(xiàn)[3]方法獲取機(jī)械零件三維重構(gòu)結(jié)果邊緣化更加嚴(yán)重,機(jī)械零件的細(xì)節(jié)部分無(wú)法精準(zhǔn)描述,進(jìn)而造成獲取的三維重構(gòu)結(jié)果并不理想,而所提方法獲取的三維重構(gòu)結(jié)果明顯優(yōu)于文獻(xiàn)[3]方法,更進(jìn)一步驗(yàn)證了所提方法的優(yōu)越性,同時(shí)也充分證明所提方法更加適用于機(jī)械零件三維重構(gòu).
(a)所提方法 (b)文獻(xiàn)[3]方法
3)輸出三維重構(gòu)圖像遍歷覆蓋度對(duì)比
為了更進(jìn)一步衡量各個(gè)方法的機(jī)械零件三維重構(gòu)結(jié)果,實(shí)驗(yàn)將輸出三維重構(gòu)圖像平均遍歷覆蓋度作為測(cè)試指標(biāo)進(jìn)行實(shí)驗(yàn)分析,實(shí)驗(yàn)結(jié)果如圖5所示.通過(guò)分析圖5中的實(shí)驗(yàn)數(shù)據(jù)可知,所提方法獲取的輸出三維重構(gòu)圖像平均遍歷覆蓋度明顯更高,說(shuō)明采用所提方法進(jìn)行機(jī)械零件三維重構(gòu)覆蓋區(qū)域更加廣泛,充分證明所提方法具有良好的重構(gòu)性能.
圖5 不同方法的輸出三維重構(gòu)圖像平均遍歷覆蓋度實(shí)驗(yàn)結(jié)果對(duì)比
4)機(jī)械零件三維重構(gòu)耗時(shí)對(duì)比
表1給出各個(gè)方法的機(jī)械零件三維重構(gòu)耗時(shí)結(jié)果,從表1能夠看出,通過(guò)本文所提方法可以更快的完成機(jī)械零件三維重構(gòu),說(shuō)明所提方法具有比較高的運(yùn)行效率.
表1 不同方法的機(jī)械零件三維重構(gòu)耗時(shí)結(jié)果對(duì)比
為了有效改善傳統(tǒng)三維重構(gòu)方法存在重構(gòu)效果不理想以及耗時(shí)較長(zhǎng)等問(wèn)題,結(jié)合虛擬現(xiàn)實(shí)技術(shù),提出一種基于虛擬現(xiàn)實(shí)技術(shù)的機(jī)械零件三維重構(gòu)方法.實(shí)驗(yàn)證明,采用本文所提方法可以有效提升輸出三維重構(gòu)圖像平均遍歷覆蓋度,減少三維重構(gòu)耗時(shí),獲取更加滿意的機(jī)械零件三維重構(gòu)結(jié)果,同時(shí)也證明所提方法適用于機(jī)械零件的三維重構(gòu).