尹婉婉,張靜,王寧,趙文輝
(沈陽(yáng)工業(yè)大學(xué)機(jī)械工程學(xué)院,遼寧 沈陽(yáng) 110870)
現(xiàn)代電子信息行業(yè)的快速發(fā)展,使得電子元件產(chǎn)品在逐漸向微型化、集成化和高可靠性的方向發(fā)展[1].晶片作為當(dāng)今電子設(shè)備不可缺少的關(guān)鍵器件,市場(chǎng)需求量日益增加,為了實(shí)現(xiàn)高效率的檢測(cè)可以采用流水線(xiàn)自動(dòng)化檢測(cè)的方式,為了讓機(jī)械手準(zhǔn)確的抓住晶片,需要對(duì)生產(chǎn)線(xiàn)上的晶片進(jìn)行精確定位.吳曉[2]提出一種LED 芯片橢圓定位方法,該方法通過(guò)徑向幅射線(xiàn)的梯度變化閾值求出特征點(diǎn),根據(jù)特征點(diǎn)擬合出橢圓,求出LED 芯片的定位中心和旋轉(zhuǎn)角,但有時(shí)橢圓定位會(huì)比較困難,因?yàn)槲矬w在視覺(jué)系統(tǒng)中的顯示方式會(huì)受到多種變量的影響.蔡競(jìng)[3]提出的基于矩形擬合的貼片定位算法,得到貼片的中心偏移量和偏轉(zhuǎn)角度,該算法簡(jiǎn)單準(zhǔn)確,但得到的坐標(biāo)是整像素級(jí).Chen 等[4]提出一種基于波束突破法的晶片中心位置定位方法,該方法利用兩個(gè)光學(xué)傳感器的時(shí)間序列信號(hào)計(jì)算晶圓中心,但在測(cè)量過(guò)程中,缺口通過(guò)傳感器對(duì)定位精度有輕微影響.
基于以上晶片中心位置檢測(cè)存在的問(wèn)題, 本文提出一種基于膨脹和Facet 亞像素算法的機(jī)器視覺(jué)精密測(cè)量方法, 主要利用數(shù)字圖像處理技術(shù)對(duì)采集的定位盤(pán)圖像和晶片圖像進(jìn)行自適應(yīng)閾值分割、Canny 像素級(jí)邊緣檢測(cè)、膨脹、Facet 亞像素邊緣提取等處理,完成對(duì)晶片定位盤(pán)和晶片中心的定位,確定晶片定位盤(pán)的中心位置和位置偏差、晶片的中心位置及偏轉(zhuǎn)角度,方便機(jī)械手的抓取.
檢測(cè)定位盤(pán)中心位置和位置偏差的原理圖如圖1 所示.
圖1 檢測(cè)定位盤(pán)中心位置和位置偏差原理Fig.1 Schematic diagram of detecting the center positionand position deviation of the locating disk
檢測(cè)晶片中心位置和偏轉(zhuǎn)角度的原理圖如圖2 所示.
圖2 檢測(cè)晶片中心位置和偏轉(zhuǎn)角度原理Fig.2 Schematic diagram of detecting wafer center positionand deflection angle
閾值分割是根據(jù)灰度值的分布特性設(shè)定某一閾值來(lái)進(jìn)行圖像分割的一類(lèi)方法.通過(guò)比較灰度圖像中的各像素值與閾值的大小關(guān)系,把灰度圖像中的各像素值分成大于閾值和小于閾值兩部分,轉(zhuǎn)化為只有0 和1 兩個(gè)灰度級(jí)的圖像,即黑與白[5].閾值的選擇直接決定了分割效果的好壞,所以,閾值分割方法的重點(diǎn)在于閾值的選擇.閾值選擇的原則是既要保存圖像信息,又要盡可能減少背景的干擾.
本文采用模式分類(lèi)的思路來(lái)尋找合適的閾值,即類(lèi)內(nèi)數(shù)據(jù)盡量密集,類(lèi)間盡量分離[6].按照這個(gè)思路,把所有的像素分為兩類(lèi),屬于“同一類(lèi)別”的對(duì)象具有較大一致性,屬于“不同類(lèi)別”的對(duì)象具有較大的差異性.本文遵循類(lèi)間方差最大的原則,運(yùn)用最大類(lèi)間方差法[7-8](OTSU)來(lái)對(duì)進(jìn)行自適應(yīng)閾值分割.
Canny 邊緣檢測(cè)算子具有3 個(gè)優(yōu)異的性能[9-11]:
(1)高信噪比.意味著當(dāng)檢測(cè)到邊緣時(shí),將非邊緣點(diǎn)確定為邊緣點(diǎn)的概率最低.
(2)定位性能更好.提取邊緣時(shí),提取的邊緣線(xiàn)應(yīng)位于實(shí)際邊緣線(xiàn)的中心.
(3)對(duì)單個(gè)邊緣的獨(dú)特響應(yīng),最大限度地抑制假邊緣.
Canny 邊緣檢測(cè)的基本原理是先利用二維高斯函數(shù)任意方向上的一階導(dǎo)數(shù)對(duì)圖像f(x,y)進(jìn)行卷積濾波,然后對(duì)濾波后的圖像尋找圖像梯度的局部極大值作為邊緣.邊緣檢測(cè)的具體步驟如下:
步驟1:采用二維高斯函數(shù)對(duì)圖像進(jìn)行高斯平滑;
步驟2:計(jì)算濾波后圖像的幅值和方向;
步驟3:對(duì)梯度幅值進(jìn)行最大值抑制,找出梯度圖像中局部極值點(diǎn),非局部極大值點(diǎn)置為零;
步驟4:采用雙閾值法檢測(cè)連接邊緣.
由于獲取的定位盤(pán)圓邊緣是不連續(xù)的,因此對(duì)其進(jìn)行圖像膨脹處理,使其圓形邊緣數(shù)據(jù)連續(xù).膨脹是一種基于數(shù)學(xué)形態(tài)的邊緣信息提取方法[12],通過(guò)定義的結(jié)構(gòu)元素,與原圖二值圖像進(jìn)行邏輯運(yùn)算,輸出運(yùn)算結(jié)果,實(shí)現(xiàn)圖像的膨脹,使其連續(xù).
本文采用基于Facet 曲面擬合的亞像素邊緣檢測(cè)算法提取亞像素邊緣,該算法抗噪能力強(qiáng)、定位精度高[13-14].
本文采用的Facet 模型為2D Facet 模型,如式(1)所示
式(1)中:x,y是像素的坐標(biāo),是未知系數(shù).
為了保證算法的位置是不變的,以粗邊緣點(diǎn)為原點(diǎn),建立一個(gè)局部坐標(biāo)系,則亞像素點(diǎn)在粗邊緣像素中的位置如圖3 所示.
圖3 亞像素邊緣點(diǎn)在粗邊緣像素中的位置Fig.3 Position of sub-pixel edge points in coarse edge pixels
則有
式(2)中:ρ是亞像素邊緣點(diǎn)到坐標(biāo)原點(diǎn)的距離,α是梯度方向.將式(2)帶入式(1),可得
多項(xiàng)式的一階、二階導(dǎo)數(shù)分別為式(4)和式(5)
梯度模值為式(7)
將式(6)、式(8)代入式(9),可求得邊緣點(diǎn)的亞像素坐標(biāo).
搭建視覺(jué)測(cè)量系統(tǒng)所采用的主要硬件為:Basler PiA2400-17 全幀型面陣CCD 黑白相機(jī),其分辨率為2448 像素×2050 像素;TC-2348 雙遠(yuǎn)心鏡頭,視野范圍為48 mm×36 mm,景深為20 mm,畸變率<0.1%;LED 平行光源,照明方向?yàn)楸诚蛘彰?光源控制器采用脈沖寬度調(diào)制方法,分1000 級(jí)調(diào)節(jié),對(duì)應(yīng)光源電源電壓為0~24 V.
晶片定位盤(pán)作為放置晶片的基準(zhǔn)平臺(tái),在檢測(cè)晶片前,需要對(duì)其位置進(jìn)行定位.晶片定位盤(pán)主要分為單圓晶片定位盤(pán)和多圓晶片定位盤(pán)兩種情況,如圖4 所示.
圖4 晶片定位盤(pán)Fig.4 Wafer positioning disk
具體步驟如下:
步驟1 對(duì)定位盤(pán)圖像進(jìn)行自適應(yīng)閾值分割,并通過(guò)Canny 算法提取晶片圖像中的所有像素級(jí)邊緣數(shù)據(jù);
步驟2 由于獲取的定位盤(pán)圓邊緣是不連續(xù)的,因此對(duì)其進(jìn)行圖像膨脹處理,使其圓形邊緣數(shù)據(jù)連續(xù);
步驟3 利用Facet 曲面模型對(duì)圖像進(jìn)行亞像素邊緣提取;
步驟4 由于獲取的定位盤(pán)圖像可能存在多個(gè)同心圓,從內(nèi)向外逐步搜索各層圓數(shù)據(jù),并對(duì)各同心圓邊緣分別進(jìn)行擬合,確定其中心位置,最終以?xún)?nèi)環(huán)權(quán)重為主,得到定位盤(pán)中心位置;
步驟5 將定位盤(pán)在圖像中的中心位置與圖像中心進(jìn)行比較,得到定位盤(pán)的位置偏差.
定位盤(pán)閾值分割的圖像如圖5 所示.
圖5 晶片定位盤(pán)閾值分割圖像Fig.5 Wafer location disk threshold segmentation image
利用Canny 算法提取的定位盤(pán)邊緣如圖6 所示.
圖6 Canny 算法提取的定位盤(pán)像素級(jí)邊緣Fig.6 Pixel-level edgesofwafer positioning disk extracted by Canny algorithm
定位盤(pán)的Facet 亞像素邊緣如圖7 所示.
圖7 定位盤(pán)的Facet 亞像素邊緣Fig.7 Facet sub-pixel edgesofwafer positioning disk
由圖5、圖6、圖7可以看出,采用本文提出的方法對(duì)晶片定位盤(pán)進(jìn)行處理后,可以準(zhǔn)確得到定位盤(pán)的圓邊緣,保證圓邊緣的連續(xù)性,同時(shí)可以得到Facet 亞像素邊緣中同一圓上數(shù)據(jù),即圖像中的紅色標(biāo)記點(diǎn),將這些數(shù)據(jù)進(jìn)行最小二乘圓擬合[15],最終確定晶片定位盤(pán)的中心位置,將其和圖像中心作比較,如表1所示.
表1 定位盤(pán)中心位置和圖像中心Tab.1 Locating disk center positionand image center
從表1可以看出,檢測(cè)出了單圓定位盤(pán)的位置偏差為1.5470 像素,多圓定位盤(pán)的中心位置為1.1563像素;整個(gè)圖像處理時(shí)間約為140 ms.
不同系列晶片的大小及樣式均不相同,且可能出現(xiàn)晶片沒(méi)有鋪滿(mǎn)定位盤(pán)的情況,為了準(zhǔn)確檢測(cè)晶片的位置,需要對(duì)獲取的晶片圖像進(jìn)行處理,區(qū)分出視野范圍內(nèi)的晶片個(gè)數(shù),并確定距離圖像中心最近的晶片坐標(biāo)及偏轉(zhuǎn)角度.具體步驟如下:
步驟1 對(duì)于獲取的晶片圖像進(jìn)行自適應(yīng)閾值分割,并通過(guò)Canny 算法提取晶片圖像中的所有像素級(jí)邊緣數(shù)據(jù);
步驟2 由于獲取的晶片邊緣是不連續(xù)的,因此對(duì)其進(jìn)行圖像膨脹處理,使晶片邊緣數(shù)據(jù)連續(xù);
步驟3 利用Facet 曲面模型對(duì)圖像進(jìn)行亞像素邊緣提取;
步驟4 對(duì)圖像中的連通域進(jìn)行標(biāo)記[16],并根據(jù)已知的晶片尺寸找出晶片所在的連通域,確定圖像中的晶片個(gè)數(shù),求出各晶片連通域的質(zhì)心所在位置,即晶片的中心位置;
步驟5 計(jì)算所有晶片中心位置與圖像中心位置的偏差值,從而確定距離圖像中心最近的晶片;
步驟6 根據(jù)距離圖像中心最近的晶片中心位置向外搜尋晶片的邊緣,確定晶片的橫向邊緣和縱向邊緣,從而求出晶片的偏轉(zhuǎn)角度.
檢測(cè)的晶片分布情況主要分為以下3 種情況,如圖8 所示,即視野范圍內(nèi)只有一個(gè)晶片、視野范圍內(nèi)有多個(gè)晶片、視野范圍內(nèi)有多個(gè)晶片且有空余位置.
圖8 晶片分布情況Fig.8 Wafer distribution
對(duì)視野內(nèi)單個(gè)晶片、視野內(nèi)多個(gè)晶片、視野內(nèi)多個(gè)晶片且有空余進(jìn)行自適應(yīng)閾值分割如圖9 所示.
圖9 晶片閾值分割圖像Fig.9 Wafer threshold segmentation image
對(duì)視野內(nèi)單個(gè)晶片、視野內(nèi)多個(gè)晶片、視野內(nèi)多個(gè)晶片且有空余利用Canny 算法提取像素級(jí)邊緣如圖10 所示.
圖10 Canny 算法提取的晶片像素級(jí)邊緣Fig.10 Pixel-level edges ofwaferextracted by Canny algorithm
對(duì)視野內(nèi)單個(gè)晶片、視野內(nèi)多個(gè)晶片、視野內(nèi)多個(gè)晶片且有空余利用Facet 曲面模型提取亞像素邊緣,如圖11 所示.
圖11 晶片的Facet 亞像素邊緣Fig.11 Facet sub-pixel edgesofwafer
圖11 中的紅色標(biāo)記為距離中心最近的晶片邊緣,黑色標(biāo)記和綠色標(biāo)記分別為晶片的橫向邊緣和縱向邊緣,位于晶片內(nèi)部的紅色標(biāo)記點(diǎn)為所求的晶片中心位置.
由圖9、圖10、圖11 看出,采用本文提出的方法能夠準(zhǔn)確提取出不同情況下視野范圍內(nèi)的晶片邊緣,得到各晶片的中心位置,求出各中心位置與圖像中心位置的偏差,從而確定距離圖像中心最近的晶片位置,并由該晶片的橫向邊緣和縱向邊緣得到晶片的偏轉(zhuǎn)角度.結(jié)果如表2 所示.
表2 晶片中心位置及偏轉(zhuǎn)角度Tab.2 Wafer center position and deflection Angle
從上述結(jié)果可以看出,采用本文提出的方法能夠?qū)崿F(xiàn)各種晶片的檢測(cè),得到視野范圍內(nèi)距離圖像中心最近的晶片中心位置及偏轉(zhuǎn)角度,其中單個(gè)晶片的中心位置為(680.85,518.46),偏轉(zhuǎn)角度為0.0632°;多個(gè)晶片中距離圖像最近的晶片中心位置為(693.98,514.56),偏轉(zhuǎn)角度為0.4768°;多個(gè)晶片且有空余中距離圖像最近的晶片中心位置為(689.24,811.17),偏轉(zhuǎn)角度為0.2288°;此外圖像處理時(shí)間約200 ms,可滿(mǎn)足生產(chǎn)線(xiàn)上對(duì)于機(jī)械手抓取晶片的要求.
本文提出一種基于膨脹和Facet 算法的機(jī)器視覺(jué)精密測(cè)量方法. 首先對(duì)定位盤(pán)圖像進(jìn)行自適應(yīng)閾值分割、Canny 粗邊緣檢測(cè)和Facet 亞像素邊緣提取、最小二乘圓擬合等處理后得出中心位置,其中單圓定位盤(pán)的中心位置為(687.6732,518.2045),多圓定位盤(pán)的中心位置為(691.0811,507.8465).
在此基礎(chǔ)上分別檢測(cè)視野內(nèi)單個(gè)晶片、多個(gè)晶片以及多個(gè)晶片且有空余的情況的中心位置,對(duì)于視野內(nèi)多個(gè)晶片和多個(gè)晶片且有空余的情況運(yùn)用連通域標(biāo)記的方法來(lái)求出晶片個(gè)數(shù)和距離圖像中心最近的晶片,求出它的中心位置和偏轉(zhuǎn)角度.整個(gè)圖像處理時(shí)間約200 ms,可滿(mǎn)足生產(chǎn)線(xiàn)上對(duì)機(jī)械手抓取晶片的要求.