屈玉福 章平
摘要:為獲得微小器件的三維形貌,該文利用單視旋轉(zhuǎn)顯微鏡通過(guò)旋轉(zhuǎn)被測(cè)物體或成像系統(tǒng)采集被測(cè)物體的多角度圖像序列,應(yīng)用多視三維重建算法處理序列圖像。通過(guò)改進(jìn)宏觀視覺領(lǐng)域基于面片的立體視覺方法,實(shí)現(xiàn)單目旋轉(zhuǎn)視頻顯微鏡的被測(cè)工件三維重建技術(shù):并根據(jù)物體相對(duì)于相機(jī)傾斜角度的范圍來(lái)細(xì)化擴(kuò)展半徑,增加原算法中的擴(kuò)展方向,針對(duì)擴(kuò)展面片法向量相對(duì)于相機(jī)角度的不同,設(shè)置不同擴(kuò)展半徑和擴(kuò)展次數(shù),解決重建過(guò)程中物體90°垂直側(cè)面重建面片成條狀和稀疏的問(wèn)題。實(shí)驗(yàn)結(jié)果表明:通過(guò)改進(jìn)算法,相同的顯微鏡圖像序列進(jìn)行三維重建的點(diǎn)個(gè)數(shù)增加2.2倍;同時(shí)對(duì)于物體側(cè)面等垂直表面處,重建表面的漏洞和分層問(wèn)題有明顯的改善,最小相對(duì)測(cè)量誤差達(dá)0.44%。
關(guān)鍵詞:顯微鏡;多視角;PMVS;三維重建;三維檢測(cè)
0引言
操作簡(jiǎn)單、成本低、效率高的微小器件三維檢測(cè)技術(shù)是當(dāng)前高精度制造領(lǐng)域的迫切所需。明場(chǎng)光學(xué)顯微鏡具有光通量大、檢測(cè)效率高、可以在位甚至在線檢測(cè)的優(yōu)點(diǎn),是微小器件高精度檢測(cè)的理想手段。但顯微鏡較小的視場(chǎng)范圍和較淺的景深,只能對(duì)物體成二維圖像。為了能更加直觀準(zhǔn)確地觀察物體的三維結(jié)構(gòu)和表面形貌信息,使光學(xué)顯微鏡具有三維觀察和檢測(cè)能力一直是領(lǐng)域內(nèi)的研究熱點(diǎn)。目前所提出的光學(xué)顯微鏡三維重建的方法可歸納為3類:1)散焦或聚焦顯微鏡三維重建,該方法通過(guò)顯微物鏡或被測(cè)工件在垂直方向上的移動(dòng)采集多幅圖像,然后通過(guò)離焦深度法或聚焦深度法獲得被測(cè)工件的三維圖像:但該方法不能測(cè)量大傾角表面工件和表面起伏較大的工件。2)基于立體體視顯微鏡三維成像技術(shù),該方法用光電成像器件代替體視顯微鏡兩臂上的目鏡,采集雙目立體圖像對(duì),然后通過(guò)系統(tǒng)標(biāo)定和立體匹配算法獲得被測(cè)工件的三維圖像;這種方法實(shí)現(xiàn)簡(jiǎn)單,但只適用于低放大倍率的被測(cè)工件三維成像。3)基于明場(chǎng)光學(xué)顯微鏡的旋轉(zhuǎn)多視圖三維重建技術(shù),這種方法利用一臺(tái)固定位置的攝像機(jī),通過(guò)旋轉(zhuǎn)被測(cè)物體或成像系統(tǒng)實(shí)現(xiàn)對(duì)被測(cè)物體的多角度圖像序列采集,然后應(yīng)用多角度三維重建算法處理序列圖像獲得被測(cè)工件的三維圖像:但由于顯微鏡具有視場(chǎng)小、擺放角度有限等缺點(diǎn),如果用傳統(tǒng)的基于面片的三維重建方法,往往達(dá)不到理想的效果。
針對(duì)以上問(wèn)題,本文將面片的多視立體重建(patch-based multi-view stereo,PMVS)算法用于顯微鏡拍攝物體的三維重建,針對(duì)利用PMVS算法進(jìn)行重建時(shí)尤其是在傾角過(guò)大的側(cè)面位置,容易造成點(diǎn)云分層和漏洞多的狀況,導(dǎo)致三維重建精度下降甚至無(wú)法測(cè)量工件尺寸,本文改進(jìn)了PMVS算法中的面片擴(kuò)展的部分。通過(guò)增加原算法中的擴(kuò)展方向,并根據(jù)物體相對(duì)于相機(jī)傾斜角度的范圍來(lái)設(shè)置不同擴(kuò)展半徑和擴(kuò)展次數(shù),從而達(dá)到理想的效果。
1系統(tǒng)結(jié)構(gòu)及三維重建方法
1.1旋轉(zhuǎn)顯微視覺系統(tǒng)
單目旋轉(zhuǎn)顯微視覺系統(tǒng)如圖1所示。旋轉(zhuǎn)視頻顯微鏡使用兩片旋轉(zhuǎn)反射鏡,第一反射鏡與水平面成一定夾角,通過(guò)第一反射鏡與第二反射鏡將觀察對(duì)象的圖像反射到顯微鏡主機(jī),能夠?qū)Ρ粶y(cè)物體的側(cè)面進(jìn)行360°的旋轉(zhuǎn)采集圖像。這樣不需要將成像系統(tǒng)和被測(cè)物體傾斜,也不需要進(jìn)行復(fù)雜的調(diào)整,就能完全自由地對(duì)被測(cè)物體的三維形貌進(jìn)行觀察。旋轉(zhuǎn)拍攝時(shí),CCD位置保持不變。本文采用東莞市普密斯精密儀器有限公司的旋轉(zhuǎn)視頻顯微鏡。鏡頭可360°旋轉(zhuǎn),對(duì)觀測(cè)物體進(jìn)行全方位立體觀察:連續(xù)變倍,放大倍率范圍為0.7x-4x;視野范圍為30mm;安裝有45°旋轉(zhuǎn)組件,其由旋轉(zhuǎn)連接座與旋轉(zhuǎn)觀察模組組成,觀察模組中安裝有兩片反射鏡和LED環(huán)形燈,可確保三維成像清晰。
本文選用了加拿大Point Grey Reseach公司的FL2G-13S2C-C相機(jī),該相機(jī)體積小,適用于高端監(jiān)控、檢測(cè)和高速裝配等要求較高的應(yīng)用領(lǐng)域。電機(jī)驅(qū)動(dòng)器選用的是日本安川公司產(chǎn)品SGMMJ-A282BJC61。電機(jī)控制卡選用深圳市雷塞公司生產(chǎn)的DMC2210運(yùn)動(dòng)控制卡,可輕松控制電機(jī)的扭矩、速度、位置等信息。
1.2單目旋轉(zhuǎn)顯微多視三維重建方法
本文采用運(yùn)動(dòng)恢復(fù)結(jié)構(gòu)(struct from motion,SFM)算法和PMVS算法相結(jié)合的方法進(jìn)行三維重建,重建算法流程如圖2所示。首先對(duì)顯微視覺系統(tǒng)進(jìn)行標(biāo)定,然后控制伺服電機(jī)轉(zhuǎn)動(dòng),每隔12°采集一次圖像。將標(biāo)定的顯微鏡內(nèi)部參數(shù)和多視角圖像序列作為SFM算法的輸入,PMVS算法利用圖像序列和SFM算法輸出的攝像機(jī)矩陣進(jìn)行三維重建。
PMVS算法主要分為匹配、擴(kuò)展和過(guò)濾3部分:
1)通過(guò)Harris和DOG算子提取特征點(diǎn),在每幅圖像中分別取βxβ大小的網(wǎng)格,然后在每個(gè)網(wǎng)格中檢測(cè)出8個(gè)角點(diǎn)和特征點(diǎn),在圖像序列之間進(jìn)行匹配,利用三角測(cè)量原理重建出稀疏的面片空間。
2)將上述稀疏面片作為擴(kuò)展的種子點(diǎn),根據(jù)相鄰面片與其有近似法向量的特性進(jìn)行擴(kuò)展。為了避免物體側(cè)面等垂直表面的區(qū)域出現(xiàn)重建結(jié)果中空洞過(guò)多的現(xiàn)象,擴(kuò)展時(shí)根據(jù)擴(kuò)展面片的法向量與法向量到相機(jī)連線所在向量的夾角來(lái)確定擴(kuò)展半徑。
3)根據(jù)可見一致性約束和光照一致性約束對(duì)錯(cuò)誤面片進(jìn)行剔除。
2改進(jìn)三維重建方法
根據(jù)第1節(jié)的介紹,基于PMVS算法的關(guān)鍵步驟是面片擴(kuò)展,其方式?jīng)Q定了最終重建結(jié)果的精度和稠密度。在擴(kuò)展面片所在的平面上進(jìn)行擴(kuò)展,面片擴(kuò)展的方向會(huì)影響重建結(jié)果的稠密度。本文將擴(kuò)展方向由6個(gè)方向改為8個(gè)方向,以增加擴(kuò)展結(jié)果中側(cè)面的稠密度。同時(shí),由于顯微鏡的視場(chǎng)小,旋轉(zhuǎn)視頻顯微鏡拍攝角度一定,90°垂直側(cè)面的表面區(qū)域成像小,所以根據(jù)圖像上相同的像素寬度所對(duì)應(yīng)的半徑進(jìn)行擴(kuò)展,但會(huì)導(dǎo)致重建結(jié)果中側(cè)面區(qū)域孔洞過(guò)多。如圖3所示,所有圖像中該側(cè)面部分相對(duì)于相機(jī)夾角都比較大,如果按照傳統(tǒng)的擴(kuò)展半徑進(jìn)行重建,會(huì)造成側(cè)面區(qū)域重建結(jié)果稀疏的問(wèn)題。
如圖4所示,a1和a2分別代表法向量為n1和法向量為n2時(shí),法向量與C到相機(jī)連線所在向量的夾角,GH在圖像平面上表示像素長(zhǎng)度,線段CB在平面XOY上,線段CD在平面YOZ上。當(dāng)對(duì)點(diǎn)C進(jìn)行擴(kuò)展時(shí),如果擴(kuò)展半徑對(duì)應(yīng)于二維圖像的相同像素長(zhǎng)度GH,在YOZ面上的擴(kuò)展半徑CD將明顯大于點(diǎn)C在面XOY上擴(kuò)展時(shí)的半徑CB。如果兩個(gè)平面的擴(kuò)展半徑相同,那么在平面YOZ上的擴(kuò)展效果將會(huì)出現(xiàn)漏洞,三維點(diǎn)之間的間隔過(guò)大。所以位于側(cè)面區(qū)域面片的法向量相對(duì)于其他區(qū)域面片的夾角a會(huì)過(guò)大。為了防止面片擴(kuò)展后位于物體側(cè)面的點(diǎn)云結(jié)果呈現(xiàn)條狀和缺失,需要根據(jù)面片的法向量與面片到相機(jī)連線所在向量的夾角a來(lái)適當(dāng)減小擴(kuò)展半徑并進(jìn)行多次擴(kuò)展。經(jīng)過(guò)多次實(shí)驗(yàn),給出擴(kuò)展半徑的計(jì)算公式:
3實(shí)驗(yàn)結(jié)果與分析
3.1三維重建結(jié)果
本文首先通過(guò)旋轉(zhuǎn)反射鏡每隔12°拍攝一幅被測(cè)物體的圖像,共采集30幅圖像從而獲得被測(cè)物體360°方位角的圖像,采集的圖像如圖5所示。然后用第2節(jié)介紹的內(nèi)容重建出被測(cè)工件的三維點(diǎn)云,重建結(jié)果如圖6所示。再用軟件Geomagic Studio 2015對(duì)重建后的三維點(diǎn)云進(jìn)行插值。本文首先選中物體的一側(cè)外表面,利用Geomagic Studio 2015軟件的填充孔功能進(jìn)行點(diǎn)云插值,之后按同樣的方法選取其他側(cè)的外表面進(jìn)行點(diǎn)云插值。
由圖6可知,原始PMVS算法有分層現(xiàn)象,尤其在深度變化明顯的側(cè)面區(qū)域孔洞很多。本文通過(guò)增加擴(kuò)展方向、優(yōu)化擴(kuò)展半徑,很大程度上改善了三維重建效果。原始PMVS算法得到的三維模型點(diǎn)云的頂點(diǎn)數(shù)為13810,本文算法得到的三維模型點(diǎn)云的頂點(diǎn)數(shù)為44511,是原算法的3.2倍。
3.2三維檢測(cè)結(jié)果與分析
本文使用Geomagic Studio 2015軟件對(duì)被測(cè)工件的三維點(diǎn)云進(jìn)行剖切測(cè)量,如圖7所示。為獲得工件的實(shí)際參考尺寸,本文利用精度為0.02mm的游標(biāo)卡尺對(duì)工件不同位置進(jìn)行測(cè)量,測(cè)量結(jié)果如圖8所示。在利用點(diǎn)云數(shù)據(jù)測(cè)量尺寸時(shí),為盡可能地減少人為因素的干擾,本文對(duì)工件的各個(gè)位置分別測(cè)量5次,測(cè)量結(jié)果如表1所示。
由表中測(cè)量數(shù)據(jù)可知,貼片LED測(cè)量尺寸的最大偏差為0.21mm,最小偏差為0.01mm,平均偏差為0.099 mm,測(cè)量位置L處的相對(duì)誤差為0.44%,測(cè)量位置W處的相對(duì)誤差為0.76%,測(cè)量位置H處的相對(duì)誤差為5.20%,測(cè)量位置D處的相對(duì)誤差為3.05%。
4結(jié)束語(yǔ)
本文在顯微視覺的光學(xué)成像系統(tǒng)中添加旋轉(zhuǎn)反射鏡,獲得微小工件表面微細(xì)結(jié)構(gòu)大尺度、90°傾角、大軸向范圍的大量中間多視圖像,通過(guò)增加面片的擴(kuò)展方向提高點(diǎn)云稠密度:同時(shí),根據(jù)面片的法向量與面片到相機(jī)連線所在向量的夾角a優(yōu)化擴(kuò)展半徑并進(jìn)行多次擴(kuò)展,改進(jìn)了PMVS算法。結(jié)果表明,本文改進(jìn)的算法在較大程度上改善了90°垂直側(cè)面的漏洞問(wèn)題。改進(jìn)的算法通用性增強(qiáng),可用于單目旋轉(zhuǎn)視頻顯微鏡下多視圖三維重建。