田 齊, 張 令
(1.江蘇信息職業(yè)技術學院 機電工程學院,江蘇 無錫 214153;2.南京啟宸智能技術有限公司,江蘇 南京 210012)
獲取晶圓的良品率參數(shù)便于及時調(diào)整工藝,對于生產(chǎn)環(huán)節(jié)具有重要意義。而目前統(tǒng)計合格晶片數(shù)量主要采用人工計數(shù)的方式,不僅效率很低,而且準確率不高,不利于實現(xiàn)半導體生產(chǎn)自動化[1]。近年,機器視覺技術發(fā)展迅速,且在無損檢測中的應用越來越普遍,如機械手運動檢測[2]、人臉識別[3],以及工業(yè)零件測量[4]等。為了提高晶圓裸片的計數(shù)精度和效率,實現(xiàn)晶圓裸片的自動精確計數(shù),本文提出了一種基于機器視覺的晶圓裸片自動計數(shù)方法。
圖1所示為畸變矯正之后的晶圓圖像。本文通過相機標定對圖像進行畸變矯正。黑色表示不合格晶片,白色表示被取走的合格晶片。本文對被取走的合格晶片計數(shù),如圖2,為本文系統(tǒng)計數(shù)流程。
圖1 晶圓圖像
圖2 系統(tǒng)計數(shù)流程
Sobel算子主要用作邊緣檢測,用于運算圖像亮度函數(shù)的灰度之近似值,對離散的數(shù)據(jù)進行加權計算。利用圖3所示小型卷積模板,與對應的圖像數(shù)據(jù)進行卷積來進行近似計算,這2個方向模板分別為水平方向邊緣檢測和豎直方向邊緣檢測[5]。
圖3 Sobel算子卷積模板
在圖像處理中,Sobel算子檢測圖像邊緣步驟如下[6]:
1)分別將2個方向模板沿著圖像從一個像素移動到另一個像素,并將模板的中心像素與圖像中的某個位置重合;
2)將模板內(nèi)的系數(shù)與其對應的圖像像素相乘;
3)將模板內(nèi)所有相乘值相加;
4)將2個卷積的最大值,賦給圖像對應模板中心位置的像素值,作為該像素的新灰度值。
本文Sobel算子檢測圖像邊緣的結果如圖4所示。
圖4 邊緣檢測結果
對Sobel邊緣檢測后的結果進行行掃描,保留每行中掃描到的第一個和最后一個點,掃描結果如圖5所示。可以看出,掃描后可以得到圓的大致輪廓和一些噪聲點。
圖5 行掃描結果
由于存在噪聲點,行掃描后,使用最小二乘法擬合圓會出現(xiàn)較大的誤差。因此,本文采用隨機抽樣一致性(random sample consensus,RANSAC)算法進行圓的擬合,通過圓的擬合可以實現(xiàn)晶圓的定位,擬合結果如圖6所示,擬合流程為:
1)將圖5中像素點的坐標記錄在Data中。
2)確定RANSAC算法的最大循環(huán)次數(shù)m和殘差閾值θ。
3)在Data中隨機選取3個不同的點,由該3個點確定一個圓,圓心坐標記作(x0,y0),半徑記作R。計算Data中剩下的點到(x0,y0)的距離di(i=1,...,Data-3):如果di 4)重復步驟(3),至最大循環(huán)次數(shù)m。找出該過程中最大的S值,記作Smax。則獲得Smax所對應的3個隨機點所確定的圓模型,即為最優(yōu)擬合圓。 圖6 RANSAC擬合圓 由文獻[7]可知,在置信度為η0的條件下,在循環(huán)過程中,至少有1次采樣,使得到的b個點均為內(nèi)點,才能保證在循環(huán)的過程中,至少有1次采樣能取得目標函數(shù)的最大值。因此,最大循環(huán)次數(shù)m應該滿足 (1) 式中ε為內(nèi)點在Data中的比例,其中η0一般設置為[0.95,0.99]。一般ε未知,可取最壞條件下內(nèi)點的比例。 本文假定外點為高斯白噪聲,其均值為0,方差為σ,誤差的殘差符合r維的卡方分布。而殘差閾值的選取為[8] (2) 式中α為置信概率,θ為殘差閾值,r為卡方分布的維數(shù)。 傳統(tǒng)的RANSAC算法只能擬合1條直線。本文提出了一種改進的RANSAC算法,用于擬合Sobel邊緣檢測后的多條切割線。擬合結果如圖7所示,具體擬合流程為: 1)將圖4中像素點的坐標記錄在Data1中。 2)確定RANSAC算法的最大循環(huán)次數(shù)n和殘差閾值λ。 3)在Data1中隨機選取2個不同的點,構建直線L。計算Data1中剩余點到直線L的距離Di(i=1,…,n-2):若Di<λ,則該點為內(nèi)點;否則,為外點。統(tǒng)計內(nèi)點的數(shù)目,記作K。 4)重復步驟(3),至最大循環(huán)次數(shù)n。可找出該過程中最大的K值,記作Kmax。則獲得Kmax所對應的2個隨機點所確定的直線模型,即為最優(yōu)擬合直線。 5)將最優(yōu)擬合直線的所有內(nèi)點,都從Data1中剔除。 6)確定所需擬合直線的數(shù)量a,重復a次步驟(3)~步驟(5),即可找到a條擬合直線(a為切割線的數(shù)量,為已知條件)。 圖7 改進的RANSAC擬合直線 擬合直線過程中的最大循環(huán)次數(shù)n和殘差閾值λ的確定方法與前述相同。 將圖7中的擬合直線按照斜率分成2類,將斜率大于0的記錄在集合P中,將斜率小于0的記錄在集合Q中。計算P中的每一條直線與P中其他直線的斜率差,找到其中一條直線,與其他直線的斜率差的和最小,則該條直線為基準直線;按照此方法找出Q集合基準直線。實驗結果如圖8所示。 圖8 基準直線 由于每個晶片的長和寬已知,通過作基準直線平行線的方式,便可擬合所有切割線。擬合結果如圖9所示。 圖9 擬合切割線 1)計算所有直線相互之間的交點,但只保留在圓中的交點,交點的集合記作H。 3)將集合H中各個交點的e值相加,即為被取走的合格晶片的數(shù)量。 為了驗證計數(shù)的準確性,本文選用500幅晶圓的圖像,圖像分辨率為1 024×1 024。每幅圖像中,晶片的位置和方向均不相同。計算機CPU為英特爾2.2 GHz。在VC++代碼沒有優(yōu)化的情況下,1 024×1 024分辨率的圖像檢測以平均3.8 s/幀的速度完成,效率遠高于人工檢測。 如表1所示為實驗結果。成功概率為檢測出的合格晶片數(shù)量與合格晶片總數(shù)的比值;漏檢概率為未檢測出的合格晶片數(shù)量與合格晶片總數(shù)的比值;錯檢概率為誤將不合格晶片當成合格晶片的數(shù)量與檢測出的合格晶片數(shù)量的比值。由表1可以看出,本文的算法成功檢測概率高,錯檢和漏檢率較低,效果良好。 表1 合格晶片計數(shù)結果 提出了一種基于機器視覺的晶圓裸片自動計數(shù)方法。實驗結果表明:該方法擁有良好的效率和精度,可以很好地代替人工進行晶圓裸片的計數(shù)。1.4 改進的RANSAC算法擬合直線
1.5 尋找基準直線
1.6 擬合切割線
1.7 計算合格晶片的數(shù)量
2 實驗結果
3 結 論