<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > MEMS/NEMS表面3-D輪廓測(cè)量中基于模板的相位解包裹算法

          MEMS/NEMS表面3-D輪廓測(cè)量中基于模板的相位解包裹算法

          作者: 時(shí)間:2011-12-05 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/161354.htm

          在對(duì)微/納機(jī)電系統(tǒng)(micro/nano electro me-chanical system, )結(jié)構(gòu)的特性參數(shù)進(jìn)行可靠性進(jìn)行測(cè)試的過程中,常要求對(duì)結(jié)構(gòu)的三維、粗糙度、微小的位移和變形等物理量做精密[1-3].目前顯微干涉法憑借其高精度、高垂直分辨率、簡(jiǎn)單快捷、無損等優(yōu)點(diǎn),成為這類測(cè)量中最常用的手段之一[3-5].


          在使用相移顯微干涉法對(duì)結(jié)構(gòu)進(jìn)行測(cè)量時(shí),先通過驅(qū)動(dòng)電路驅(qū)動(dòng)參考鏡產(chǎn)生次波長量級(jí)的光程變化,即可由電荷耦合器件攝像機(jī)(CCD)和圖像采集卡獲得一組時(shí)間序列上的相關(guān)干涉圖像,然后由干涉圖的光強(qiáng)信息解算出被測(cè)值,提取信息,最后通過一定的得到被測(cè)表面真實(shí)的相位信息和相應(yīng)的表面高度,從而得到被測(cè)結(jié)構(gòu)表面的[5-6].由此可見,相位解,也就是相位展開是微結(jié)構(gòu)表面測(cè)量中至關(guān)重要的一步.用于相位展開的方法很多,但通常都具有很強(qiáng)的針對(duì)性和局限性.而微納結(jié)構(gòu)的表面輪廓復(fù)雜,并且經(jīng)常含有孔洞、溝槽、突起等特征形狀,傳統(tǒng)的解包裹不能繞過這些非理想數(shù)據(jù)區(qū)域,并且導(dǎo)致的誤差會(huì)在被測(cè)面內(nèi)傳播,以致影響整個(gè)相位展開的結(jié)果.這里提出一種的廣度優(yōu)先搜索的相位解包裹方法,它通過的使用來剔除對(duì)相位展開有影響的非理想數(shù)據(jù)區(qū)域,使解包裹能夠繞過這些區(qū)域進(jìn)行,從而得到比較可靠的結(jié)果.


          1 的相位解包裹
          1.1 相位解包裹


          通過相位提取算法,包含在光強(qiáng)中的代表被測(cè)物表面高度信息的相位值被提取出來.但在實(shí)際測(cè)量中,由于物體表面高度的相位變化通常都遠(yuǎn)遠(yuǎn)超出一個(gè)波長周期.因此,各種相位提取算法計(jì)算出來的相位值均是以反正切函數(shù)的形式表示,即得到的相位分布被截?cái)喑蔀槎鄠€(gè)2π范圍內(nèi)變化的區(qū)域,形成包裹相位.為最終得到被測(cè)表面真實(shí)的高度信息,必須將多個(gè)截?cái)嘞辔坏膮^(qū)域拼接展開成連續(xù)相位,這個(gè)過程稱為相位解包裹,或相位展開[6].干涉測(cè)量中要求相鄰兩像素點(diǎn)的相位差小于2π,否則無法恢復(fù)其真實(shí)相位.當(dāng)滿足這個(gè)要求時(shí),真實(shí)相位的差值則與包裹相位間差值再進(jìn)行包裹運(yùn)算W2的結(jié)果相等,即:


          Δφ(n) = W2{ΔW1[φ(n)]} (n =1,2,…,N) (1)


          式中Δ為差值運(yùn)算,φ(n)是第n個(gè)像素點(diǎn)對(duì)應(yīng)其包裹相位W1[φ(n)]的真實(shí)相位,N為像素點(diǎn)數(shù).因此,通過對(duì)包裹的反正切函數(shù)主值差進(jìn)行求和運(yùn)算即可實(shí)現(xiàn)相位展開[7]:


          φ(m) =φ(0)+∑mn=1W2{ΔW1[φ(n)]}(2)
          MEMS/NEMS表面輪廓測(cè)量針對(duì)的通常都是連續(xù)變化的結(jié)構(gòu)表面,符合相鄰像素點(diǎn)相位差小于2π的要求,因此依據(jù)式(2)所示的原理即可逐點(diǎn)實(shí)現(xiàn)相位展開.

          1.2 模板的相位解包裹


          隨著相位展開技術(shù)的深入發(fā)展,相位解包裹算法層出不窮[7-8].如果僅僅應(yīng)用于簡(jiǎn)單區(qū)域(未展開相位圖中不存在非理想數(shù)據(jù)點(diǎn))的相位展開,使用普通的基于深度的優(yōu)先搜索算法即可達(dá)到目的.它通過使用閾值來判斷2π相位跳變,然后建立補(bǔ)償函數(shù),最后將未展開相圖與補(bǔ)償函數(shù)相加,得到展開后的相位圖.此算法非常簡(jiǎn)單快捷,圖1是應(yīng)用于一個(gè)簡(jiǎn)單區(qū)域的相位展開結(jié)果,左邊為被測(cè)表面的包裹相位圖,右邊為其相位解包裹后的表面輪廓圖.

          2.JPG

          圖1 使用傳統(tǒng)相位解包裹算法對(duì)簡(jiǎn)單區(qū)域進(jìn)行相位展開的結(jié)果

          然而, MEMS/NEMS結(jié)構(gòu)經(jīng)常具有比較復(fù)雜的輪廓,含有孔洞、溝槽、突起等特征形狀,被測(cè)表面也可能存在缺陷,例如表面鍍膜脫落或者粘附上灰塵等,再加上陰影和噪聲等的影響,用普通的相位展開方法就可能引入誤差,并且誤差會(huì)傳播到在當(dāng)前像素點(diǎn)之后展開的所有點(diǎn).圖2為使用傳統(tǒng)相位解包裹算法對(duì)含有非理想數(shù)據(jù)點(diǎn)的圓形薄膜進(jìn)行相位展開的結(jié)果,左邊為薄膜表面的包裹相位圖,右邊為其相位解包裹后的表面輪廓圖.

          1.JPG
          圖2 使用傳統(tǒng)相位解包裹算法對(duì)含有非理想數(shù)據(jù)區(qū)域進(jìn)行相位展開的結(jié)果


          為了能在相位展開過程中繞過非相容點(diǎn)(包裹相位圖中的非數(shù)據(jù)點(diǎn)和進(jìn)行相位展開運(yùn)算時(shí)可能產(chǎn)生誤差的非理想數(shù)據(jù)點(diǎn)的總稱),引入基于模板的廣度優(yōu)先搜索算法,它是一種逐點(diǎn)展開的生長算法.在相位展開運(yùn)算之前,先用模板將非相容點(diǎn)標(biāo)記出來.相位展開過程是從任意的一個(gè)相容點(diǎn)開始,然后均勻地向其鄰域彌散生長,得出其鄰域的展開相位值,再一周一周擴(kuò)大,直至整幅圖像.在其遍歷過程中,遇到由模板標(biāo)記的非相容點(diǎn)時(shí),就暫時(shí)繞過而不做處理.用此方法處理的像素點(diǎn)都是相容點(diǎn),即好的數(shù)據(jù)點(diǎn),因而能夠大幅度地提高相位展開的質(zhì)量.

          2 標(biāo)記模板的方法及實(shí)驗(yàn)結(jié)果
          用以標(biāo)記非相容點(diǎn)的模板可以通過多種途徑獲得.根據(jù)不同應(yīng)用的需要,可以選擇實(shí)現(xiàn)不同功能的不同復(fù)雜程度和不同靈敏程度的模板標(biāo)記方法.本文提出三種不同類型的模板標(biāo)記方法,用以在不同的應(yīng)用需求下選擇使用:1、子區(qū)域相容性判斷法;2、邊緣檢測(cè)法;3、干涉圖灰度差值提取法.對(duì)應(yīng)于不同標(biāo)記模板的方法,我們給出了它們應(yīng)用于相位解包裹算法中的具體應(yīng)用實(shí)例,各方法均由MATLAB編程實(shí)現(xiàn).
          2.1 子區(qū)域相容性判斷法
          2.1.1 方 法
          這種方法在包裹相位圖的基礎(chǔ)上進(jìn)行判斷.判斷一個(gè)像素點(diǎn)是否相容,需要利用其周圍的另外三個(gè)像素點(diǎn)的信息.這四個(gè)像素點(diǎn)組成一個(gè)2×2的子區(qū)域(圖3).按順時(shí)針方向計(jì)算這四個(gè)像素點(diǎn)兩兩之間的灰度值之差,得到Δ1、Δ2、Δ3、Δ4;然后確定一個(gè)閾值T(如T=π),該閾值就是用來判斷相位條紋跳變邊界的那個(gè)“固定閾值”,并由此閾值判斷Δk,(k=1,2,3,4):如果|Δk|>T,即可認(rèn)為路徑穿過了跳變的界線,此時(shí),若Δk>0,則Δk=Δk-2π,若Δk0,則Δk=Δk+2π,目的是將Δk限定在-π到π之間;最后求ΣΔk,再次作判斷:如果ΣΔk=0,則該點(diǎn)定義為相容點(diǎn),如果ΣΔk≠0,則該點(diǎn)定義為非相容點(diǎn)[6].

          3.JPG
          圖3 標(biāo)記2×2區(qū)域相容性示意圖
          2.1.2 實(shí)驗(yàn)結(jié)果
          圖4是一幅通過模擬得到的包裹相位圖(左)及使用子區(qū)域相容性判斷法得到的模板圖(右).包裹相位圖中的黑色小方塊是加入的非相容區(qū)域,從模板圖可以看出,使用子區(qū)域相容性判斷法可以將此非相容區(qū)域很好地提取出來,然而,它在識(shí)別出噪聲點(diǎn)的同時(shí),一部分相位跳變邊緣也被識(shí)別成了非相容點(diǎn),以至于相位解包裹之后一些原本好的數(shù)據(jù)點(diǎn)也被繞過,見圖5.

          4.JPG

          圖4 模擬的包裹相位圖(左)及使用子區(qū)域相容性判斷法得到的模板圖(右)

          5.JPG
          圖5 使用子區(qū)域相容性判斷法獲取模板得到的相位展開結(jié)果
          子區(qū)域相容性判斷法理論上可行,但實(shí)驗(yàn)結(jié)果證明其不太適合用于實(shí)際應(yīng)用,特別是噪聲多,結(jié)構(gòu)復(fù)雜的測(cè)試.但由于此方法運(yùn)算速度非???而且對(duì)噪聲、斷點(diǎn)等靈敏度很高,所以當(dāng)圖像區(qū)域小,噪聲點(diǎn)遠(yuǎn)離相位跳變邊緣時(shí),仍可以考慮使用.
          2.2 邊緣檢測(cè)法
          2.2.1 方 法
          此方法在由干涉圖合成的亮場(chǎng)圖像上運(yùn)用邊緣檢測(cè)算法來提取非相容區(qū)域的邊緣.在五步相移干涉測(cè)量中,由得到的五幅干涉圖像可以合成為被測(cè)表面的亮場(chǎng)圖像[9],公式為:
          6.JPG

          式中的Ii為第i幅干涉圖中一個(gè)像素點(diǎn)的灰度值(i=1,2,3,4,5),Ibf為對(duì)應(yīng)像素點(diǎn)亮場(chǎng)圖像的灰度值.得到整個(gè)待測(cè)區(qū)域的亮場(chǎng)圖像之后,接下來選擇合適的邊緣檢測(cè)算法得到非相容區(qū)域模板.應(yīng)用于邊緣檢測(cè)的算子有很多,最常用的有Sobel, Prewitt, Roberts, Canny和Laplacian ofGaussian(Log)等幾種.由于它們使用不同的梯度算子和檢測(cè)法則來確定邊緣區(qū)域,因此具有不同的特點(diǎn).Sobel算子和Prewitt算子類似,對(duì)噪聲有一定的抑制作用,但容易檢測(cè)出偽邊緣并丟失有用的邊緣信息;Roberts算子的檢測(cè)定位精度比較高,但對(duì)噪聲敏感;Canny算子的最優(yōu)化逼近算子和雙閾值的使用使其能有效抑制噪聲,并能精確確定邊緣位置;Laplacian of Gaussian(LoG)算子選擇濾波的尺度參數(shù)是關(guān)鍵,小尺度的LoG算子可以得到比較準(zhǔn)確的邊緣定位,但對(duì)噪聲較為敏感,大尺度的LoG算子濾波效果較好,但過度平滑圖像,容易丟失如角點(diǎn)這樣的邊緣信息[10-11].

          接地電阻相關(guān)文章:接地電阻測(cè)試方法



          上一頁 1 2 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();