i
國 立 台 灣 科 技 大 學 產學合作計畫結案報告
抗反射玻璃基板之自動化品質檢測技術發展
(研發產字 2973 號 自控產字 0003 號)
委任單位: 台灣仿真科技股份有限公司
執行單位:國立台灣科技大學 自動化及控制研究所 計畫主持人:蔡明忠
計畫參與人員:馮趙祥 劉彥廷 田芬寧
執行期間: 2008 年 05 月 01 日至 2008 年 12 月 31 日
2009 年 02 月 20 日
ii
摘要
本研究之目的為開發抗反射AR(Anti-Reflection)玻璃自動化品質檢測技術,使用 線性馬達平台移送 AR 玻璃,以線型掃描攝影機擷取影像整合檢測機台,採用四組 4k 解析度的線性掃描 CCD 及影像擷取卡及側像正光源正向背光源,再運用影像處 理檢測程式來分析AR 玻璃上的瑕疵,檢測項目包括雜點(可依品質規範採三級式面 積設定)、汙點、刮痕等瑕疵檢測。本研究在瑕疵區域檢測的流程中,首先採用拉普 拉斯運算子進行影像強化部分,接著採用影像平滑化將不必要的影像資訊去除,利 用適應性二值化的方法進行瑕疵影像分割,最後使用一種以密度為基礎之改良型快 速分群演算法(RDBSCAN),將龐大的資料庫進行分群處理並檢測出玻璃面板上所 存在的瑕疵並提供座標以進行後續瑕疵位置範圍標記,將所有瑕疵分群完畢之後則 進行瑕疵特徵分析程序,利用瑕疵特徵,長寬比、平均密度比和亮度比等差異性進 一步辨識瑕疵如刮痕以及粉塵等瑕疵,最後輸出以各瑕疵點之座標、大小、長寬比、
瑕疵種類等瑕疵資訊為依據所繪製而成之表格,以及瑕疵品質分析結果以供給系統 人機使用,此研究方法可以成功地找到待測物上各種不同之瑕疵並加以辨別出刮痕 及亮暗點,本計劃其最大檢測範圍為390 x 600mm,且每張影像(4k x 11k pixels)
所需之軟體檢測時間約為5 sec。
關 鍵 字 : 抗 反 射 玻 璃 、 線 型 CCD 、 表 面 瑕 疵 檢 測 、 RDBSCAN ( Rapid Density-Based Clustering Applications with Noise)
iii
目次
頁次
1.前言 1
2. AR 玻璃檢測系統簡介 8
2.1 線型掃描攝影機(Line Scan Camera) 8 2.2 線 CCD 光學鏡頭取像原理 9
2.3 線 CCD 影像擷取卡簡介 12
2.4 AR 玻璃取像照明規劃 12
2.5 AR 玻璃檢測之線 CCD 取像規劃 13
3. AR 玻璃瑕疵檢測 15
3.1 影像強化 16
3.2 影像平滑法 21
3.3 適應性二值化 23
3.4 瑕疵資料分群 30
3.5 瑕疵辨識 40
4. AR 檢測規範與品質分析 43
5. AR 品質檢測人機介面 47
6. AR 檢測實驗結果 50
7.結論 62
8.參考文獻 62
附件一 系統軟體程式碼 65
1、前言
影像顯示產業為台灣兩兆雙星重點發展產業之一,其中的平面顯示器(FPD)
產業為目前全球矚目的光電產業,FPD 中的 TFT-LCD 更是一極具競爭力的平面顯示 器技術。目前台灣是全球LCD 面板主要生產國之ㄧ,而根據研究機構的預估,2 0 0 8 年全球 TFT-LCD 大尺寸面板總出貨量將超過 4 億片;由於面板產能龐大,所以在 其製程中生產線上的品質檢驗顯得格外重要。目前在大中小尺寸面板產品中(如 LCD TV 或 3C 產品),有一項關鍵的零組件稱為抗反射玻璃 (Anti-Reflection: AR)光學膜,
其應用在面板模組結構中位於最上層位置,其功能為降低外在環境光源因素造成螢 幕上產生的反光,因此若玻璃表面有瑕疵,則會影響影像品質。
在玻璃生產製造的過程中,如利用以往人工目視檢驗的方式,勢必會造成人力 成本提高,導致品質不穩定生產效率降低的情形產生。因此目前生產線檢測方式,
大都已逐漸採用自動化光學檢測的方式進行檢測。利用機器視覺的檢測方法結合光 學與影像處理的應用,可對不同的待測物進行瑕疵檢測及判別。一般認為玻璃透明 無色就是100%穿透,其實在某些角度下仔細看,玻璃是會反射出倒影的,這就是玻 璃表面的反射。一般的玻璃兩個表面都會反射,而玻璃(矽、鈉、鈣等材質)還會吸收 光,嚴格說起來,透明玻璃並不是 100%穿透,扣掉兩面反射及吸收(吸收因玻璃材 質及厚度不同約為0.1%~2%,範例以 0.5%為代表),約只剩下 91~92%的穿透率,如 圖1。
圖1 玻璃之穿透示意圖[32]
提 高 穿 透 率 最 簡 單 的 方 法 , 就 是 在 玻 璃 鍍 上 減 低 反 射 率 的 增 透 膜 或 抗 反 射 膜
1
2
(Anti-reflection film)。
抗反射膜是以光的波動性和干涉現象為基礎的。二個振幅相同,波長相同的光 波疊加,那麼光波的振幅增強;如果二個光波原由相同,波程上有相差,如果這二 個光波疊加,則會互相抵消。減反射膜就是利用了這個原理,在鏡片的表面鍍上減 反射膜,使得膜層前後表面產生的反射光互相干擾,從而抵消了反射光,達到減反 射的效果。
一般抗反射膜有單層及多層兩種,單層膜通常鍍上氟化鎂(MgF2),可降低單面 反射率2%,約可將穿透率提高至 95%~96%;多層膜將可降低單面反射率 4%,約可 將穿透率提高至98%~99%,如果在搭配上較高品質的光學玻璃如含矽量較高的白板 玻璃,可以達到近100%的穿透,如圖 2。抗反射玻璃鍍膜的應用範圍極為廣泛,在 一般日常生活中皆能接觸的到的有:(1)、娛樂、消費方面:數位相機的抗紅外濾片、
攝影用的濾片、舞台的燈光變化、水舞的色彩變化、大樓或橋樑的照明、大型電動 遊戲機、櫥窗照明、光纖照明、LED照明、電腦螢幕保護鏡、液晶投影機、衛星導 航、數位相框、4C產品等。(2)、軍事器材方面:夜視鏡、探照燈、夜間監視系統、
瞄準鏡等。(3)、工、商業方面:條碼掃描機、雷射水平儀、墨線雷射儀、顯微攝影、
冷光(綠光)品檢光源、LED檢測儀器、電焊護目鏡、檢測儀器的濾光片。(4)、醫療 器材方面:檢測儀器的濾光片。圖3 為 48*31.5*1.5cm抗反射玻璃實體圖,本研究即 是針對抗反射玻璃製程中,需快速檢測瑕疵的需求,開發抗反射玻璃自動化光學檢 測平台,利用線CCD視覺系統搭配線性伺服馬達驅動平台,再結合光源及影像處理 程式的技術,完成一套可對抗反射玻璃進行快速瑕疵檢測的自動化檢測平台。
圖2 抗反射玻璃之穿透示意圖[32]
圖3 抗反射玻璃實體圖(48*31.5*1.5cm)
此研究使用影像處理之技術進行瑕疵檢測,從線型CCD取像系統所擷取的影像
中判斷有無這些瑕疵的存在,常用之技術ㄧ般分為空間領域分割與頻率領域分割兩 種方式。空間領域分割是指將影像以灰階的方式呈現,利用瑕疵與背景影像灰階之 差異,找出其適合的區分方式,如二值化(Binarizing)、測邊(Edge Detection)等等,
就可以將瑕疵與背景影像分割開來,完成瑕疵檢出的工作。這種方法通常適合用在 背景影像屬於灰階分布均勻,或是沒有複雜紋理(Texture)存在的情況。頻率領域分割 是將影像之灰階分布轉換至頻率領域分析,利用瑕疵與背景影像在頻域之間的差 異,以適合的方式找出頻率不規則變化的位置,如傅立葉轉換(Fourier Transform)、
小波轉換(Wavelet Transform)、賈伯濾波器(Gabor Filter)等等,就能分割出瑕疵與背
3
4
景影像。這些方法適用的場合比空間分割還要廣,特別是背景屬於有固定頻率的複 雜紋理,頻率域分析能有效的分離出瑕疵。但其缺點是運算速度較空間分割慢。文 獻[1]先利用精確的影像定位,將影像背景調整至固定不變,克服彩色濾光片是具有 紋理的複雜背景,就可以簡單的以影像相減方式找出瑕疵。文獻[2]利用三維影像及 三維影像還原技術去除數張非同質性隨機影像之間所共有的規律特徵,而不需透過 擷取瑕疵紋路特徵的方式來檢測瑕疵。在文獻[3]中,應用非線性擴散(Nonlinear Diffusion)方法,可同時進行邊緣強化與平滑處理,即可輕易的檢測出ITO玻璃之瑕 疵。文獻[4]針對TFT面板的微觀瑕疵檢測方法,利用傅立葉轉換及反傅立葉轉換方 式,濾掉TFT面板垂直及水平的紋路之頻率元素以進行表面瑕疵檢測。文獻[5]採用 模 擬 線 型 掃 描 的 方 式 擷 取 影 像 , 再 利 用 一 維 傅 立 葉 轉 換 得 到 完 美 與 有 瑕 疵 的 TFT-LCD影像頻域圖,兩者相減後就可以分割出瑕疵影像。文獻[6]將瑕疵分成巨觀 瑕疵及微觀瑕疵兩大類,並分別採取不同的方式進行偵測。巨觀瑕疵是以線掃描攝 影機擷取低解析影像;微觀瑕疵則是使用面掃描攝影機,擷取影像之後利用中值濾 波器去除影像中之雜訊並以灰階標準差進行影像分割,再以型態學以及計算最小圍 繞瑕疵之矩形特徵以進行判別。文獻[7] 以線型掃描的方式擷取影像,並利用影像處 理技術,影像相減、二值化、灰階直方圖、邊緣強化等方法,對ITO導電玻璃存在之 刮痕、裂痕、粉塵及異物等表面瑕疵進行檢測與判別。文獻[8]則是針對方向性紋路 在傅立葉頻譜上其響應高的能量強度P(u,v)會以直線方式分布,且與原始影像中之方 向正交的特性來進行表面瑕疵檢測。文獻[9]找出瑕疵能量在傅立葉頻譜中貢獻最多 的區域並選取一個適當的半徑,將頻譜中心點與最佳半徑以外所對應的頻率係數去 除,將同質性紋路盡量模糊,接著利用反傅立葉轉換,將規律性的同質性紋路去除,
而只保留瑕疵的部分進行瑕疵檢測。文獻[10] 採用非線性擴散的方法對光電顯示玻 璃基板進行瑕疵檢測,傳統之非線性擴散模式在每一次遞迴演算中只對背景紋路進 行平滑,而對梯度較高之異常邊緣僅進行消極之抑制平滑,此研究中將銳化運算子 加入非線性擴散模式中並在每一遞迴演算中對背景紋路進行平滑,同時也對異常區 域進行銳化之處理,此方法可被有效強化同時也可被有效抑止雜訊之干擾。文獻[11]
5
採用背光環境設計了一個TFT彩色過濾器檢測系統,使用閾值以及形態學方法並利 用灰度差分法提取缺損清晰的圖像及使用頻率域傅立葉和小波變換、Gabor濾波器方 法於檢測CRT面板此。文獻[12]利用新式Haar-like矩形特徵對太陽能板灰階影像中的 細線與粗線做線路檢測。在邊緣瑕疵檢測方面,利用Otsu自動化門檻值做影像分割,
再利用B-splin轉折點偵測進行邊緣破裂偵測。在表面瑕疵檢測方面,利用Otsu與 valley-emphasis自動化門檻值做三值化圖形分割,經過消除直線後,再以一種以密度 為基礎的改良型快速分群演算法(RDBSCAN)及旋轉標記功能做表面瑕疵檢測與分 類。文獻[13]透過累加同一彩色濾光片玻璃基板在連續影像序列中的灰階,藉以擴大 Mura瑕疵與背景的差異,其Mura瑕疵檢測系統主要包含三個部份。一、藉由平均背 景影像與未校正影像相除,以校正不均勻的照度。二、藉由相關性數學模式來校正 連續影像之不均勻的位移。三、累加校正影像並以多重解析度影像來分析背景以檢 測Mura瑕疵等方法進行MURA之瑕疵檢測。文獻[14]利用小波轉換影像轉換與還原 技巧於太陽電池之檢測,但在邊緣之影像以及纹路交接點容易出現誤判情況,先針 對樣本先進行細部結構元素參數設定並利用數學形態學之概念進行檢測。文獻[15]
使用GWN重建紋理影像,採用單一神經元的GWN架構並加入STFT,用來估測紋理 的頻率與角度,將其設定為GWN的初始值,讓GWN能有效的完成紋理特徵抽取,
並利用訓練後的GWN設計Gabor濾波應用於瑕疵偵測上。文獻[16]使用了Laplacian of Gaussian (LOG)濾波器偵測垂直塊狀型瑕疵,檢查原始影像一維投影的曲率變動,且 設計一個頻率域上的濾波器來偵測特定的頻率成分偵測刮痕狀瑕疵,對於漏光瑕疵 則是利用影像鏡面的方式以及LOG濾波器方法。文獻[17]利用二維傅立葉轉換及搭 配累和管制法選取適當的刪除半徑,利用高通濾波之方式將半徑內頻率值刪除,並 利用傅立葉反轉將影像轉回空間域,利用此方式進行影像切割將瑕疵偵測出來;而 在瑕疵發生位置之正反面判斷方面,則使用形態學將二值化影像進行區塊選取與特 徵值擷取(包含灰階平均值與灰階標準差),最後利用模糊推論系統來判斷瑕疵之正反 面。文獻[18]經由pattern generator 所產生的全白、全黑、全紅、全藍、全綠等圖示 來找出panel 的各種瑕疵。文獻[19]使用斷開、閉合、膨脹、侵蝕、空間迴旋運算等
傳統影像技術,並且加入基因演算法,將所有檢測參數依計算完之適應函數值,透 過基因演算競爭式選擇法進行淘汰,找出最小差異值以進行瑕疵檢測。
AR 玻璃在製作過程中,可能會因搬運過程或是人為因素而在玻璃板上產生不屬 於原本玻璃上之瑕疵,如刮痕、亮暗點及雜質等,刮傷從外觀可見線狀痕跡,也泛 指所有鍍膜製程所造成的瑕疵,並依外觀現像可分屬 High contract(明亮)的異常及 Low contract(暗淡)的異常,此類瑕疵在燈光下使用反射方式可以清楚看見其瑕疵。亮 暗點從玻璃外觀來看,可以目視點狀、圓形狀或不規則形狀異常。但是此瑕疵中心 並無核心,多數有彩色。其與雜質相異之處為其中心無核心異物,反之,雜質點在 其中心部分有核心異物。在人工檢驗亮暗點部分,亮點使用人工目視檢視時,即可 立即發現此類瑕疵,而暗點則需要擺動檢查才可看出其異狀之處,使用 LCD 顯微檢 測系統(圖 4)所拍攝出 AR 玻璃局部瑕疵的圖片,如圖 5 所示。
圖 4 LCD 顯微檢測系統
6
(a)刮傷-AS (b)刮傷-TS
(a)暗雜質 (b)亮點 圖 4 瑕疵影像
LCD 顯微檢測系統其鏡頭倍率有 2.5、5、10、20、50 等鏡頭,其光源設備則 具備正光源以及下光源(100W 以上),檢視畫面能經由基座中一切換器將所看到的影 像切換至電腦,配合不同顏色之濾片將畫面更完整清晰呈現,從鏡頭端檢視到影像 之後,可以配合其內建功能如標註尺寸等,進一步得到所觀測物件之資訊。圖 5 是 以 5 倍鏡頭倍率、正光源所取之圖像。圖 5 (a)為正面 Air side(AS) 之刮傷,其 刮傷的長度為 1.03mm,圖 5 (b)則在 Tin side(TS) 之刮傷,刮傷長度為 1.4mm,
圖 5 (c)為顯微鏡下所見之亮雜質,其長為 0.45mm,寬為 0.5mm,圖 5(d)為亮點瑕 疵,其長為 0.83mm,寬為 0.86mm。
7
2.AR 玻璃檢測系統簡介
AR 玻璃瑕疵檢測系統包含了線性掃瞄數位攝影機、光學鏡頭、影像擷取卡、背 光型正側光型線型光源與玻璃驅動機構等,以下將介紹各元件之用途與特性:
2.1 線型掃描攝影機(Line Scan Camera)
線 型 掃 描 攝 影 機 與 面 型 數 位 攝 影 機 (Area Digital Camera) 之 間 的 差 異 在 於 CCD(Charge Coupled Device)感測器,ㄧ般常用的面型數位攝影機其感測元件是一矩 陣型的CCD 感測器,可以直接擷取一個面型的影像資料。而本研究採用的線型掃描 攝影機,雖然只有一維的CCD 感測器,需要曝光數次且有運動系統配合才能擷取到 一張平面影像,但其優點在於具有高速曝光以及高解析度的特性,一般會用來進行 大範圍高速檢測。且光源的設置也只需要細長型的均勻光源,相較於面型數位攝影 機的曝光時間較長、光源設置門檻較高,線型掃描攝影機較適合用在大範圍、高精 密度的檢測場合。
本 研 究 所 採 用 的 線 性 掃 描 攝 影 機 為 DALSA 公 司 出 產 的 Piranha2 P2-22-04K30,如圖 6 所示,解析度(Resolution)為 4096 pixels,像素大小(Pixel Size) 為7μm,最大線掃描速率(Line Rate)為 14kHz,所使用的傳輸介面為 Camera Link。
圖6 線型數位 CCD 攝影機 Piranha2 P2-22-04K30 主要特性如下:
• Resolution: 4096 pixels
• Pixel Size : 7 µm
• Aperture : 28.7mm
8
• Lens Mount : F-mount
• Max. Line/Frame Rate: 14kHz
• Data Rate: 2x30MHz
• Data Format 2x8 or 2x10-bit via Camera Link
• Responsivity 64DN/(nJ/cm²) @10dB
• Dynamic Range up to 492:1
• Nominal Gain Range ±10dB
• Size 50x85x50mm
• Mass <450g
• Operating Temp front plate: 10-50ºC
• Power Supply 12 to 15V
• Power Dissipation <7.5W
• Regulatory Compliance CE, MIL-STD-810E
• Example Part Number: P2-22-04K30
2.2 線 CCD 光學鏡頭取像原理
鏡頭組ㄧ般包含鏡頭本身、鏡頭轉接器(Lens adapter)、延伸環(Extension tube)、
相機轉接器(Camera adapter)等,有時還會加裝變焦模組(Modular focus),經過適當的 選用各項零件,就可以清楚的取得影像。當決定取像範圍後,依照所使用之CCD 感 測範圍大小,可利用2-1 式計算出縮放倍率(Magnification)。得到縮放倍率後可以鏡 頭之焦距(Focal Length : f )套入 2-2 式求出鏡頭與待測物之間的距離(Front Working Distance),及以 2-3 式求出鏡頭與數位攝影機之間的距離(Back Working Distance),
以即焦距、像距(I)以及物距(O)之間之關係示(2-4 式)根據這些數據即可正確的安 裝數位攝影機與待測物之間的距離,如圖7 所示。
Image Size Magnification(M)
Object Size
=
(2-1)FWD ( 1 1) f M
= × +
(2-2)BWD = × +
f(1 M)
(2-3)9
1 1 1
f = O + I
(2-4)(a)鏡頭之光學取像示意圖
(b) 鏡頭實體圖
(c) 鏡頭規格圖
圖7 線CCD鏡頭 (NIKON FV5026L-F)
10
而本系統在鏡頭部分配合4k CCD採用NIKON FV5026L-F(焦距f=50mm, 孔徑 1:2.6 ),這個鏡頭的放大倍率為1/4X~1/20X(工作距離Wd=250mm~1m),在考慮AR玻 璃檢測解析度需求與硬體架構的限制後,設定縮放倍率為M=1/7 (即像距為物距/7, 玻璃取像解析度7*7µm=49µm/像素),因此28.672mm (4096 pixels × 7μm)的CCD感測 器可以擷取到200mm (FOV)的待測玻璃影像,兩支4k CCD約可取到400mm。 工作 距離Wd則可以由下式推算出:
1/f = 1/Do + 1/(Do/7)= 8/Do Do= 8*f=8*50mm = 400 mm
Di= Do/7 = 400 mm/7 = 57 mm
Wd= Do+ Di = 400+57 = 457 mm (2-5) 其中 f : 焦距=50mm
Do : 物距(mm) Di : 像距(mm) Wd: 工作距離(mm)
因此,系統以兩支4k @7µm CCD ( 4k = 4096 pixels CCD )為例, 以縮放倍率為 M=1/7之鏡頭對應到FOV1=FOV2=FOV=200.7mm, 則系統解析度
Rp=200.7mm/4096 pixels = 0.049 mm/pixels , 兩支4k CCD之中心距應為 FOV1/2+ FOV2/2=200.7mm 。
11
FOV1
4k CCD1 4k CCD2
FOV2
=200.7mm =200.7mm
2.3 線 CCD 影像擷取卡簡介
影像擷取卡使用兩張DALSA公司的X64.CL Express,傳輸介面是PCI Express
×1,具有255MB/sec的高速資料傳輸速率、具有兩個Camera Link的連接埠可連接兩 個線CCD,以及可使用電子訊號觸發取像,此外部信號觸發取像功能可配合機台定 位迴授訊號與頻率設定,擷取正確尺寸之影像。內建的64MB記憶體可提供高速擷取 影像時的暫存空間,以方便檢測軟體有效率的處理擷取到的訊號。
圖8 線 CCD 影像擷取卡
2.4 AR 玻璃取像照明規劃
照明光源在影像檢測中是非常重要的部份,根據待檢物特性的不同,光源的照 射方式以及光源的種類都會影響CCD擷取到的影像品質;本系統之照射方式為背光 式照射以及反射式照射。正向CCD主要檢測黑框部份,側向CCD主要檢測AR玻璃部 份。
CCD
Back Lighting Object
Refraction Lighting
Object
CC D
(a) 正向ccd(背光式照射) (b)側向ccd(反射式照射)
圖9 AR玻璃瑕疵檢測之光源照射方式
12
圖10 AR玻璃瑕疵檢測系統實體
2.5 AR 玻璃檢測之線 CCD 取像規劃
為了正確的擷取到AR玻璃影像,運動平台的移動速度需配合線型掃描攝影機之 曝光頻率;攝影機ㄧ次曝光週期所擷取到的影像長度等於像素大小乘上鏡頭倍率,
同時運動平台在週期時間內也需要移動相同的距離長度,這樣才能完整的擷取到正 確影像。 假設已知線性掃瞄攝影機之線取樣頻率與平台移動之速度mm/sec, 每一 像素對應之物體寬度Wp計算公式如2-6式所示:
fe v
Wp= / (2-6)
其中v是平台移動之速度mm/sec,
f
e 是線性掃瞄攝影機之線取樣頻率(lines/sec, Hz,),若系統解析度已知(如FOV= 200.7mm, Rp=FOV/4096 pixels = 0.049 mm/pixels ), 欲擷取正確之對應物體像素,則平台移動之速度計算如2-7式。Rp fe
v= * (2-7)
13
其中v是平台移動之速度mm/sec,
f
e是線性掃瞄攝影機之線取樣頻率(lines/sec, Hz)。假使設定之移動速度過慢,每次週期時間所擷取到的影像會有一部份區域重 疊,造成影像變形拉長。若是設定之移動速度過快,攝影機在擷取影像時會錯過部 份區域,造成影像擠壓變形。因此可採用影像擷取卡提供之電子訊號觸發取像,此 外部信號觸發取像功能可配合機台定位迴授訊號與設定之實際像素大小,擷取正確 尺寸之影像。例如本系統之實際像素之大小為49μm,若定位迴授訊號解析度為1μ m時,則觸發週期為49 (=49μm/1μm) 。
14
15
3. AR 玻璃瑕疵檢測
本研究主要是針對AR 玻璃製程中所產生的亮暗點(雜質點)、亮點、刮痕等表 面瑕疵,建構以線型掃描CCD 為基礎之一套自動化光學檢測軟體模組,其瑕疵檢測 演算法利用二值化及以密度為基礎之快速分群演算法對AR 玻璃可能產生的表面瑕 疵進行處理,把瑕疵部分突顯出來、並進行分析。其處理流程主要可以分為5 項:
(1) 影像強化
(2) 影像平滑化
(3) 適應性二值化
(4) 瑕疵資料分群(RDBSCAN)
(5) 瑕疵辨識與分類
(6) 品質分析
圖 11 為影像處理流程,在系統開始時,讀取線型 CCD 取像系統所擷取之影像 資料,接著利用影像強化加強影像資訊間之差異性,此步驟亦會加強雜訊,故下一 步驟採用影像平滑化消除不必要的資訊,接著利用適應性二值化將影像予以分割,
並執行RDBSCAN 演算法進行資料分群,最後進行瑕疵辨識階段,則此影像處理流 程完成。
圖11 AR 玻璃瑕疵檢測主要流程
3.1 影像強化
影像強化是用來以強調影像的某些特徵,以便能做進一步分析或顯示。此技術 的主要目的是為了增加影像的視覺效果,讓人眼以及機器易於辨識,使其結果對特 定的應用來比原始影像更合用。一張經由對比強化處理後的影像,其原始影像之特 性分佈集中於中央的範圍,而呈現出低的對比,經過強化作用後,加了其對比程度。
在本系統其結果使影像呈現均勻且良好的特性,亦即是最終分佈圖所呈現的影像 中,使用之影像強化函數為拉普拉斯運算子(Laplacian),進行影像濾波進而凸顯 影像的特徵部份並進一步達到增強影像之效能。拉普拉斯運算子為一種邊緣偵測的 方法,其概念基於在影像亮度劇烈變化處,即是邊緣所在位置,一個像素是否為邊 緣點,可以計算該像素與周圍像素亮度變化的梯度,若大於某種程度,也就是事先
16
設置的門檻值,則代表該像素為邊緣中之一點。由於取像時光線並沒有一致性,之 後呈現的整張圖片會有局部暗或是局部亮等亮暗不平均的情況,如只將單一狹窄的 灰階分布況大至 0~255 的區域,將會使不是瑕疵的部分因而突顯出來,使機器辨認 為瑕疵缺陷,因此,使用拉普拉斯遮罩,逐一將圖像中每個pixel 進行運算,此方法 著重於邊界交界處的特徵突顯,亦即放大灰階急劇變化的部份,相較於將灰階分部 擴張到0~255 之間, Laplacian 強化方法更具有適應性,對檢測物 AR 抗反射玻璃應 用較佳,以下為Laplacian 在二維空間中定義的公式及其 3*3 遮罩:
(3-1)
(3-2)
(a)適合暗點邊緣偵測 (b) 適合亮點邊緣偵測一 (c) 適合亮點邊緣偵測二
圖 12 拉普拉斯運算子所使用之 3*3 遮罩
17
18
(a) AR 玻璃-刮痕原始影像(376*208pixels)
(b)AR 玻璃-亮雜點原始影像(833*463pixels)
(c) AR 玻璃-亮點原始影像(901*784)
圖13 AR 玻璃原始影像
19
(a)AR 玻璃-刮痕處理後影像(376*208pixels)
(b) AR 玻璃-亮雜點處理後影像(833*463 pixels)
(c) AR 玻璃-亮點處理後影像(901*784 pixels)
圖14 使用拉普拉斯運算子之影像
圖 14 為運用影像圖 13 進行拉普拉斯運算子影像強之實驗結果,圖 13(a) AR 玻 璃刮痕瑕疵原始影像,圖 13 (b)為AR 玻璃亮雜點瑕疵原始影像,圖 13 (c)為 AR 玻璃亮點瑕疵原始影像,圖 14(a)~ 14(c)為使用拉普拉斯運算子之結果,從圖 14(a)~
20
圖 14(c)三張圖中,由實驗中可以看出在影像邊緣交界灰階變化較劇烈部分之影像 相較於原始影像,其差異性明顯被突顯出來,以利下一步程序處理。
3.2 影像平滑法
平滑法又名低通濾波,用以消除影像之高頻變化部份,使處理過的影像趨於平 滑,特別是用來除去影像中的視覺雜訊。因為這些雜訊是屬於較高頻的訊號,所以 低通濾波可將其作適當的衰減,亦可用以檢查影像的低頻特性。
為了實現一個低通空間濾波器,其所有係數必須為正,對於一個 3 ×3 空間濾波 器,最簡單的排列是所有係數值之和為1 的一個遮罩,每一個為九分之一。低通濾 波器中常見的均化遮罩是將遮罩中所有灰度值加總後求其平均,然後將平均值寫入 遮罩中間所對應點的像素。影像中的邊緣和其它灰度的變化部分,在傅立葉轉換成 後之頻譜中含有大量的高頻成分,故此濾波器可將雜訊去除,但也會產生模糊的反 效果。在研究中,使用 7x7 之遮罩,逐一將影像中之畫素進行計算,以影像中一像 素值為例,加總其鄰居49 個像素之灰階值,並取其平均值給予此像素點,經由遮罩 搭配迴積的方式來完成計算,達到消除雜訊目的,將整張影像予以平滑化。
圖15 低通濾波器所使用 7x7 遮罩
21
(a) AR 玻璃-刮痕平滑處理後影像(376*208pixels)
(b)AR 玻璃-亮雜點平滑處理後影像(833*463pixels)
(c) AR 玻璃-亮點平滑處理後影像(901*784)
圖16 AR 玻璃影像經由平滑化之結果
22
圖 16 為使用影像平滑化之結果,圖 16(a) ~圖 16(c) 分別為圖 14(a)~ 14(c) 使用影像平滑化(7*7 遮罩)之結果,經由影像平滑化結果圖中,我們可以看出影 像去除了多餘不必要的雜訊資訊,但相對也較原始影像模糊。
3.3 適應性二值化
針對 AR 玻璃上面的瑕疵,在影像處理中先對擷取之影像使用適應性門檻值進 行影像分割,將 AR 玻璃上的瑕疵與背景分離成二值化的圖,再將二值化後的圖以 RDBSCAN 分群演算法計算出影像中存在的瑕疵群數,並自動框選出各瑕疵群聚的 位置與範圍大小。
在計算門檻值的部份,因為系統本身要求快速運算,故捨棄效果較好的統計式 門檻值,如 Otsu 等典型的統計方法,而是以依照影像灰階直方圖(gray level histogram),找出適當的門檻值進行分割,如圖 17 所示。
125 × 125 pixels Threshold = 124
Threshold
Mean Gray Value = 140
圖17 影像灰階直方圖
典型的二值化是採用全域門檻值(Global Threshold),利用合理的統計理論計算整 張影像的灰階值,找出門檻值後,即套用於整張影像。但影像背景的光源均勻度與 紋理都會影響到統計後的結果,此時只以單一門檻值來進行二值化處理,顯然不太 合適。為了解決上述問題,本研究採用適應性之概念,影像資訊分為數個區域且各 別計算出屬於每一個像素的門檻值(Local Threshold):在此演算法中,使用 7x7 的運 算遮罩,將圖片中每點個像素依其該像素周圍鄰居之灰階值分佈,計算出屬於該點
23
門檻值,並依此結果決定二值化的結果。
(a)全域性門檻值 (b)適應性門檻值 圖18 門檻值示意圖
AR 玻璃背景紋理的灰階值是屬於一個範圍,且其灰階出現頻率應是最頻繁 的,故本研究設定 AR 玻璃背景紋理之灰階值應落在平均值(mean)正負標準差 (standard deviation)之間,且瑕疵的存在都會遮蔽光線造成灰階值下降,所以二值化 門檻值等於平均值減去標準差,計算公式如下:
1 1
0 0
1 1
( , ) ( , )
2 2
n m m
i j
n m
g x y P x i y j
n m
− −
= =
− −
= − + −
× ∑∑ 1 +
(3-3)1 1
2 0 0
1 1 1
[ ( , ) ( , )]
1 2 2
n m
xy m
i j
n m
STD P x i y j g x y
n m
− −
= =
− −
= − + − + −
× − ∑∑
(3-4)其中
P x y
( , )
為影像中座標為( , )
x y 的像素灰階值 gm( , )
x y 為P x y( , )
與其周圍鄰居的平均灰階值 n、m 為運算遮罩的長寬,須為奇數STDxy為P x y
( , )
與其周圍鄰居的灰階標準差 Txy為P x y( , )
的二值化門檻值24
二值化影像公式
(3-5) 其中(xc,yc)為遮罩之中心點
一原始影像若是使用統計的方式求出影像亮度的單一門檻值來進行的二值化,
會容易因為亮度不平均的情形而影響分割的效果,圖 19.1(a)為一張有瑕疵的 AR 玻 璃影像,影像大小為 901*784pixlels,圖19.1(b)是使用較低的單一門檻值(門檻值
=40)來進行影像分割,雖然可以成功地檢測出瑕疵,但由於所設定的門檻值較低,
使得背景紋理部分一併被分割出來。圖19.1(c)是使用較高的單一門檻值(門檻值=83)
進行影像分割,從圖中可以發現由於使用的門檻值較高而失去了不分的瑕疵之特 徵。圖19.1(d)則是使用適應性門檻值所得到的實驗結果,從結果圖中可知此方法可 以有效的將瑕疵和背景紋理分離,解決因光源不平均而使得影像不佳之情形,故AR 玻璃之瑕疵檢測不適合以單一門檻值套用於整張影像,因此採用所敘述的適應性門 檻值(Adaptive Thresholding)方式來進行影像分割。
(a) 原始 AR 影像(901*784pixlels)
25
(b) 使用較低單一門檻值(40)
(c)使用較高單一門檻值(83)
(d)使用適應性門檻值 圖19.1 使用單一門檻值與適應性門檻值之比較
26
27
(a) AR 玻璃-刮痕處理後影像(376*208pixels)
(b) AR 玻璃-亮雜點處理後影像(833*463pixels)
(c) AR 玻璃-亮點處理後影像(901*784)
圖19.2 圖 16(a)(b)(c)經由適應性二值化 5*5 遮罩成果圖
(a) AR 玻璃-刮痕處理後影像(376*208pixels)
(b) AR 玻璃-亮雜點處理後影像(833*463pixels)
(c) AR 玻璃-亮點處理後影像(901*784)
圖19.3 圖 16(a)(b)(c)經由適應性二值化 7*7 遮罩成果圖
28
29
(a) AR 玻璃-刮痕處理後影像(376*208pixels)
(b)AR 玻璃-亮雜點處理後影像(833*463pixels)
(c) AR 玻璃-亮點處理後影像(901*784)
圖19.4 圖 16(a)(b)(c)經由適應性二值化 9*9 遮罩成果圖
圖 19.2~圖 19.4 為使用不同遮罩影像之適應性二值化比較圖,圖 19.2 (a)~圖 19.2 (c)為圖 16(a)(b)(c)採用 5*5 遮罩所進行之適應性二值化,圖 19.3 (a)~圖 19.3 (c)則為 在圖16(a)(b)(c)7*7 遮罩之結果圖,圖 19.4 (a)~ 圖 19.4 (c)為圖 16(a)(b)(c)使用 9*9 遮罩之適應性二值化實驗結果,從實驗結果可以得知,遮罩的維度越大,進行影像 分割的效果也就越好,但是其影像之邊緣線條也就越粗,換句話說,雜訊相對來講 也越大,為了能夠得到較佳的影像分割結果以及較低的雜訊影像,本研究採用 7*7 遮罩之適應性二值化進行影像分割的部分。
3.4 瑕疵資料分群
RDBSCAN(Rapid Density-Based Clustering Applications with Noise)是以密度為 基礎之快速分群演算法來作為瑕疵的搜尋與分群。此方法是一種以空間資料分布密 度為基礎的分群演算法。當我們在觀察一組空間分佈的資料點時,可以依照資料分 佈的密集程度,以直覺性的分辨出聚集密度高的區域為一個群組,單獨零散的資料 則為雜訊;RDBSCAN 利用資料密度的概念,先取資料庫中任意一點 p 作為檢視密 度區域的中心,在RDBSCAN 中,只取用該次檢視區域中距離中心點 p 最遠的核心 點q,作為下一次進行檢視區域查詢的中心點(next seed),以圖 20 (a)的 p、q 做為圓 心個別劃分的兩個檢視區域重複的部份最少,此這一階段的程序主要的功能是快速 找尋密度可到達的最長路徑,只取最遠的鄰居點作為下次成長的種子點,不但可以 有效的持續成長,而且不會對其他已經知道屬於群聚中的點進行檢視區域查詢。
(a)核心點最遠距離 (b)核心點最近距離 圖20 檢視區域重複範圍比較
30
接著再設定檢視區域的半徑,進行檢視區域查詢,接下來的演算法程序會從核 心點的鄰居成長,凡是定義為核心點的資料,都是群聚向外成長的種子點(seed),並 集合到種子列表(seeds list),且凡是查詢過的種子點都從列表中刪除,直到列表中所 有種子點都執行過檢視區域查詢,則完成該次群聚的成長。除了快速成長的概念之 外,此演算法還有合併的概念,由於此方法改以快速成長的方式進行分群運算,雖 然可大幅改進運算時間,但單一方向成長的方式會將一個群聚分割為數個破碎的小 群聚,為了修正這項缺點,故本方法再加入群聚合併之概念:當有一點p 可以從一 個核心點q1直接以密度到達,且同時也可以從另一個核心點q2 直接以密度到達,則 q1、q2 屬於同一群聚,如圖 21 所示,如此便能有效的將快速成長所造成的破碎群聚 合併成正確的群聚。
圖21 兩群聚合併示意圖
圖22 為RDBSCAN分群演算法流程圖,最主要的概念為從一開始的核心點開 始向全方向成長,將處理過資料點的刪除且找到新的資料點加入種子列表中,經由 此一來一往之步驟下,當群聚中的資料點都已處理過,也就是沒有新的資料點可以 加入時,就是該群聚搜尋完成的時候,接著進行下一個群聚的搜尋,直到所有資料 點都定義過。
31
圖22 RDBSCAN 分群演算法流程
由流程圖中可以更清楚演算法的優點,在於以seeds 列表距離檢視範圍中心最遠 的點資料作為成長種子,並且配合清空seeds 列表這個動作,代表著不會重覆檢視其 他鄰居點,以達到快速的向外成長,直到清空後也沒有新的種子加入,即結束該次 成長演算。同時群聚越多,節省之演算時間越理想,不同的 Eps 代表進行區域檢視 時其搜尋範圍的半徑亦不同,以及MinPts 依據門檻值的不同也會造成相異的分群結 果,RDBSCAN 分群演算法可依照 AR 玻璃的瑕疵特性調整參數已達到良好的瑕疵
32
分群,圖 23 為使用不同參數之分群比較圖。
(a)Eps:10、MinPts:5
(b)Eps:10、MinPts:10
(c)Eps:10、MinPts:20
33
(d)Eps:31、MinPts:5
(e)Eps:31、MinPts:10
(f)Eps:31、MinPts:20
圖23.1 樣本 1-刮痕以不同分群參數之分群結果比較(圖像大小為 376*208pixels)
34
(a)Eps:5、MinPts:5
(b)Eps:5、MinPts:10
(c)Eps:5、MinPts:30
35
(d)Eps:25、MinPts: 5
(e)Eps:25、MinPts:10
(f)Eps:25、MinPts:35
圖 23.2 樣本 2-亮雜點以不同分群參數之分群結果比較(圖像大小為 833*463pixels)
36
(a)Eps:7、MinPts:5
(b)Eps:7、MinPts:10
37
(c)Eps:7、MinPts:35
(d)Eps:35、MinPts:5
38
(e)Eps:35、MinPits:10
(f)Eps:35、MinPits:20
圖23.3 樣本 3-亮點以不同分群參數之分群結果比較(圖像大小為 901*784pixels)
39
圖 23.1~圖 23.3 是以 Eps 為基準,個別調整 MinPts 之高中低三種方式進行資料 分群,當Eps 為 5、5、7 較低的設定值時,RDBSCAN 會將小瑕疵個別分群,反之 為較高的設定值時,會將數個小瑕疵分為一群。
3.5 瑕疵辨識
AR 玻璃經由所提出的影像處理方法,再由 RDBSCAN 分群演算法可以得知玻 璃上所具有的缺陷瑕疵處,並使用矩形進行標註瑕疵之方法,以找出不符合原本玻 璃之缺陷位置。除了需要知道瑕疵之座落處,還需要知道瑕疵之種類用以區別,在 此部分,採用不同瑕疵之不同特徵指標予以進一步分類,本研究所採用之特徵指標 為瑕疵長寬比、瑕疵密度比以及瑕疵亮度差異為依據,用以將點狀瑕疵及刮痕進行 分類。
(1)長寬比判別
長型瑕疵與方型瑕疵之判別利用 RDBSCAN 分群架構得到的框選區域之長寬 比之大小來判別。經由所提出的RDBSCAN 分群演算法框選出瑕疵區域,經由簡單 的判別得到長邊及短邊,長邊為長,短邊為寬。利用刮痕和點瑕疵在長寬比之差異 性已進行兩種類瑕疵之判別,如果長寬比大於所訂定的標準值,則判定為刮痕類瑕 疵,反之,則為方型瑕疵,其示意圖如下:
圖24 瑕疵長寬比示意圖
40
(2)密度比判別
點瑕疵比起其他的瑕疵如刮痕,其密度為其他兩三倍之上,在此顯著的差異性 之下,我們選用密度比特徵為依據,密度比定義為框選區域內瑕疵點數除以正方形 框選區域面積之比值,用以辨別刮痕與點瑕疵,故此,訂定一密度比之標準值,根 據所得到的密度比和標準值之關係以辨別刮痕類和點瑕疵。如判定為非刮痕瑕疵,
則進一步進行長寬比判別以及亮度判別,其密度比公式(3.6)及示意圖如圖 25 所示:
(3.6)
(a)點瑕疵 (a)刮痕 圖25 瑕疵平均密度差異示意圖
41
(3)亮度判別
亮點及暗點在光源的照射下,經由取像系統而得到影像,由於玻璃中的亮暗點,
使得在光的行進方向不同,相同地,光線進入取向系統的量亦不同,而使得取出的 影像有亮度差異之特性(圖26),於此,訂定一亮度標準值,並且依據所得到的亮 度值相對於標準值之關係以判定瑕疵性質,進而判別影像為亮點或是暗點。
(a)暗點類瑕疵 (b)亮點類瑕疵 圖26 瑕疵亮度比示意圖
(a)暗點類瑕疵 (b)亮點類瑕疵 圖27 AR 玻璃亮暗點影像
42
4. AR 檢測規範與品質分析
本瑕疵檢測系統之檢測項目為 AR 玻璃上之各種瑕疵,檢測規格如表 1 所示:
表1 瑕疵規範表
瑕疵種類 品質規範
亮刮痕 不允許存在 (設定亮度) Case1
暗刮痕 大於2mm 不允許存在 Case2 粉塵 大於0.3 mm2 不允許存在
Case3 粉塵 介於0.3 mm2 與 0.02 mm2 之間,點數超過 10 點則不允許存在
Case4 粉塵 介於0.3 mm2與0.02 mm2之間,點與點之間 距離小於10mm,否則不允許存在
瑕疵檢測參數選用說明:
假設已知影像解析度,假設Resolution為 50um/pixel,利用公式找出 0.3 mm2與0.02 mm2的密度臨界值為分別為Max.p=120 及 Min.p=8,其換算過程如下所示及其參數 選用如表2 所示:
(1)0.3mm2換算過程:
首先計算 pixels(Max.p)此面積對應之像素數目 Ap
Ap=A.pixels /(50μm*50μm) (4.1.1)
0.3 10 6 50 50 120
× =
× Max.p =120 再利用圓面積公式計算外徑 : d
圓面積(Max.p) = 2 4 πd
(4.1.2)
2 120 4 153
d π
= × = -> d=12.5
因此取 d≈13 pixels (dmax.)
(2)0.02mm2換算過程:
利用式(4.1.1)
0.02 10 6
50 50 8
× =
× pixels (Min.p=8) 利用式 (4.1.2)
2 8 4 10
d π
= × = -> d=3.2
因此取 d=4 pixels (dmin =4)
43
(3)2mm 刮痕換算過程:
利用式
2 10 3
50 40
× = pixels (max.scratch.d)
(4)10mm 間距換算過程:
利用式
10 10 3
50 200
× = pixels (max.distance)
將瑕疵檢測單位mm 轉換為 pixel 之結果如表 2。
表2 品質檢測參數選用表
瑕疵種類 品質規範
亮刮痕 亮度大於設定亮度Max.light.grey 不允許 存在(NG=1)
Case1
暗刮痕 長度大於Max.scratch.d (40) 不允許存在 (NG=1)
Case2 粉塵 面積大於Max.p(120) 不允許存在(NG=1) Case3 粉塵 面積若介於Max.p(120)與Min.p(8)
之間且點數超過Max.cluster(8)點 則不 允許存在(NG=1)
Case4 粉塵 若面積介於Max.p 與 Min.p 之間,且點與 點之間最短距離min.cluster.distantce,小 於Max.distance(200),不允許存在(NG=1)
44
AR 品質檢測判別流程如圖 28:
N
Y
N
Y
N
Y
圖 28 瑕疵品質分析流程圖
45
46
輸出表格:
表 3 為 AR 玻璃瑕疵檢測完之後輸出之表格,包括群組代號、群組位置左上至 右下之XY 座標、瑕疵的大小尺寸、瑕疵長寬比及瑕疵種類代號,其代號為數字 10 與數字11,代號 10 指的為此瑕疵經由檢測結果判定為刮痕類瑕疵,而代號 11 則為 點狀類瑕疵,經由此種等等瑕疵特徵用以表示瑕疵資訊。表 4 為品質規範表格,為 所有被檢測出的瑕疵,依照品質規範統計後繪製而成之表格。
表3 AR 玻璃瑕疵檢測完之後輸出之表格 瑕疵頂點座標
Cluster
(X1 ,Y1) (X2, Y2)
瑕疵大小
(pixels) 長寬比 瑕疵種類(代號)
1 (513,1779) (521, 1790) 66 1.38 刮痕(10)
2 (3553,1906) (3558,1911) 25 1.00 亮點(11)
3 (1306,1946) (1962,1906) 21 1.07 亮點(11)
4 (3563,1986) (3574,1991) 22 1.20 亮點(11)
5 (3851,2086) (3857,2091) 21 1.20 亮點(11)
6 (418, 2975) (465,2982) 193 6.71 刮痕(10)
表4 品質規範表格
瑕疵種類 品質規範 數量
刮痕瑕疵 2(n0)
點>0.3mm2 0 點(n1) 0.02 mm2<點<0.3 mm2 4 點(n2) 點瑕疵
最近距離 10 mm(min.distance)
品質檢測結果: NG= 0 (合格) NG= 1 (不合格)
5. AR 品質檢測人機介面
本實驗用的處理器是採用 AMD Athlon(tm) 64X2 Dual Core Processor 4800+
2.51GHz CPU 以及 2GB RAM 的個人電腦,並以 Borland C++ Builder 撰寫對比增強、
平滑法、適應性二值化、RDBSCAN 分群演算法之程式。AR 檢測系統流程如圖 29。
圖29 檢測全流程圖
圖 30(a)為 AR 檢測之人機介面,此介面由主要功能區分為六大區域,分別為檔 案區、檢視區、縮圖區、檢視畫面選擇區、執行影像處理區及執行流程區,圖30(b) 處理後影像視窗,影像經由影像強化、平滑法、適應性二質化及瑕疵分群結果會顯 示在檢視區中,檢視區旁的欄位則會顯示此張影像經由檢測系統所檢測出的瑕疵群 落等資訊,點選其中的瑕疵資訊,則在右邊的視窗會顯示出相對應的瑕疵群落並以 紅色標記。
47
(a)主視窗
(b)處理後影像視窗
圖30 AR 檢測系統整合人機介面
48
6. AR 檢測實驗成果
以下為一4096*10000 pixel 之 AR 玻璃切除邊框後之影像,利用本實驗所提出方法之 實驗結果,其分析如下:
(a)原始影像
(b)經由影像強化之影像
49
(c)經由低通濾波器之影像
(d)經由適應性二值化之影像
50
(e)經由分群演算法分群後之局部放大影像 圖 31 瑕疵影像檢測結果
51
(a) 經由表格顯示影像內瑕疵資訊
(b) 檢測結果之執行流程區 圖 32 AR 瑕疵檢測分析結果
圖 32(a)為瑕疵檢測分群後經由得到的瑕疵資訊所繪製的表格,其中執行流程 區中可以看到目前程式執行進度,從視窗中可得知檢測流程已完成,其中 NG(33)、
總共 56 個瑕疵意為此物檢測流程偵測到此影像中有 33 個點瑕疵及 23 個刮痕瑕疵不 符合可容許之瑕疵規範,如圖 32 所示。
52
以下資料為從 AR 檢測系統所拍攝影像之局部資訊,以下為 13 個瑕疵影像資料 庫包括上刮、噴漆、亮雜點、亮點及上刮側等瑕疵之實驗結果,並將影像局部區域 放大用以明確表示本檢測結果之正確性:
(a) 瑕疵編號 1:樣本 12 上刮瑕疵 原始影像大小:3636*7084 pixels 局部區域影像大小:153*292 pixels
(a)原始瑕疵影像 (b)經由影像處理及分群後之影像 圖 33 樣本12 上刮瑕疵之實驗結果
(2) 瑕疵編號 2:樣本 13 上刮瑕疵 原始影像大小:3616*7036 pixels 局部區域影像大小:180*100 pixels
(a)原始瑕疵影像 (b)經由影像處理及分群後之影像 圖 34 樣本13 上刮瑕疵之實驗結果
53
(3) 瑕疵編號 3:樣本 14 上刮瑕疵 原始影像大小:3680*7080 pixels 局部區域影像大小:180*125 pixels
(a)原始瑕疵影像 (b)經由影像處理及分群後之影像 圖35 樣本 14 上刮瑕疵之實驗結果
(4) 瑕疵編號 4:樣本 32 噴漆瑕疵 原始影像大小:3484*7064 pixels 局部區域影像大小:506*506 pixels
(a)原始瑕疵影像 (b)經由影像處理及分群後之影像 圖36 樣本 32 噴漆瑕疵之實驗結果
54
(5) 瑕疵編號 5:樣本 33 噴漆瑕疵 原始影像大小:3572*7072 pixels
局部區域影像大小:506*506 pixels
(a)原始瑕疵影像 (b)經由影像處理及分群後之影像 圖37 樣本 33 噴漆之實驗結果
(6) 瑕疵編號 6:樣本 54 亮雜點瑕疵 原始影像大小:3644*7072 pixels 局部區域影像大小:500*105 pixels
(a)原始瑕疵影像
(b)經由影像處理及分群後之影像 圖 38 樣本54 亮雜點瑕疵之實驗結果
55
(7) 瑕疵編號 7:樣本 55 亮雜點瑕疵 原始影像大小:3516*7056pixels 局部區域影像大小: 400*150pixels
(a)原始瑕疵影像
(b)經由影像處理及分群後之影像 圖 39 樣本55 亮雜點瑕疵之實驗結果 (8) 瑕疵編號 8:樣本 57 亮點瑕疵
原始影像大小:3516*8820pixels 局部區域影像大小:290*494 pixels
(a)原始瑕疵影像
56
(b)經由影像處理及分群後之影像 圖 40 樣本57 亮點瑕疵之實驗結果
(9) 瑕疵編號 9:樣本 58 亮點瑕疵 原始影像大小:3508*7064 pixels 局部區域影像大小:52*52 pixels
(a)原始瑕疵影像 (b)經由影像處理及分群後之影像 圖 41 樣本58 亮點瑕疵之實驗結果
57
(10) 瑕疵編號 10:樣本 59 亮點瑕疵 原始影像大小:3460*8816pixels 局部區域影像大小:199*300 pixels
(a)原始瑕疵影像 (b)經由影像處理及分群後之影像 圖 42 樣本59 亮點瑕疵之實驗結
(11) 瑕疵編號 11:樣本 60 亮點瑕疵 原始影像大小:3516*7072 pixels
局部區域影像大小:56*50 pixels
(a)原始瑕疵影像 (b)經由影像處理及分群後之影像 圖 43 樣本60 亮點瑕疵之實驗結果
58
(12) 瑕疵編號 12:樣本 61 亮點瑕疵 原始影像大小:3604*7060 pixels 局部區域影像大小: 70*50 pixels
(a)原始瑕疵影像 (b)經由影像處理及分群後之影像 圖 44 樣本61 亮點瑕疵之實驗結果
(13) 瑕疵編號 13:上刮側瑕疵
原始影像大小:3604*7060 pixels 局部區域影像大小:500*230 pixels
(a)原始瑕疵影像
59
(b)經由影像處理及分群後之影像 圖 45 上刮側瑕疵之實驗結果
經由以上實驗結果,13 個瑕疵影像資料庫上刮、噴漆、亮雜點、亮點及上刮側等瑕 疵,經由本次實驗所提出之影像處理方法影像強化、影像平滑化、適應性二值化以及 RDNSCAM 演算分群法設定全域性參數 Eps 及 MinPts,可以將 AR 玻璃上的瑕疵框選出來。
表 5 為此影像資料的相關資訊以及經由不同處理方法之時間繪製之表格。
表5 瑕疵相關資訊及影像處理之時間表
從表 5 可之此次實驗資料影像為刮痕集點類之瑕疵,且所擷取影像之大小約為 3500~10000pixel,資料點數為 10000~30000 之間,本實驗採用之每一影像處理方法所 花費時間約略在 1 秒左右,影像強化 所花費之平均時間為 1.56 秒,影像平滑化平均時
60
間為 1.59 秒而適應性二值化則平均花費 1.66 秒,瑕疵分群平均花費 0.75 秒,所有影 像影算法加起來時間之平均時間為 5.58 秒則可處理完一張影像,圖 46 為影像處理時間 一覽圖,圖 47 為影像處理時間比例圖。
圖 46 影像處理時間一覽圖
圖 47 AR 玻璃瑕疵影像處理時間比例圖
61
62
7.結論
本研究利用線性數位攝影機連續掃描影像之特性,以即時檢測AR玻璃瑕疵 為主要目的。本系統硬體採為背光式照射以及反射式照射各兩支4k 線性CCD, FOV 約400mm。正向CCD主要檢測黑框部份,側向CCD主要檢測AR玻璃部份。在軟體方 面,使用影像強化、影像平滑法及適應性二值化技術來處理瑕疵影像分割,並以 RDBSCAN分群演算法檢測影像中瑕疵區域之位置與範圍,依照所得到的瑕疵資訊 進一步利用瑕疵特性指標進行瑕疵分類,最後將檢測流程由雙核心電腦處理,每支 線性CCD可達到連續檢測200mm寬之AR玻璃 (4096 pixels*11000 pixels)瑕疵區域之 影像。最後並可藉由設定彈性之瑕疵參數設定進行品質分析作業, 並輸出報表或瑕 疵標記。
由實驗用影像可以發現,擷取之影像經由提出的影像演算法幾乎可以得到正確 的瑕疵區域及範圍,但在刮痕部分之實驗結果顯示其標示之位置正確性仍有待影像 取樣之改善。
此外,AR 玻璃上的刮痕類瑕疵,其外觀並非皆為一長條狀連續瑕疵,有些刮痕 類瑕疵之構成是由點狀或帶狀瑕疵斷續相連而形成。因此,在進行分群演算法時,
若產生斷斷續續的刮痕類瑕疵標註,致所標註的瑕疵範圍和需求之瑕疵規範不同, 則須透過分群演算法參數之調整,可避免將同一群的瑕疵判別為較多群之瑕疵,此 乃後續值得進一步探討之處。
8.參考文獻
[1] 吳木杏,「彩色濾光片表面瑕疵檢測分析」,碩士論文,國立台灣大學資訊 工 程學研究所,2000。
[2] 郭志嘉,「應用三維傅利葉分析於非同質性隨機紋路表面之瑕疵檢測」, 碩士 論文,元智大學工業工程與管理研究所,2000。
[3] 趙新民,「應用非線性擴散於非同質性紋路之ITO導電玻璃表面檢測」, 碩士論 文,元智大學工業工程與管理研究所,2003。
63
[4] 曾彥馨,「應用機器視覺於 TFT 面板之表面瑕疵檢測與分類」,碩士論文,元 智大學工業工程與管理研究所,2003。
[5] 洪崇祐,「應用一維傅立葉分析於TFT-LCD液晶顯示面板之瑕疵檢測」, 碩士 論文,元智大學工業工程與管理研究所,2004。
[6] 陳學宇、蔡孟儒,「應用機器視覺於 LCD 擴散片之檢測」,第五屆全國 AOI 論壇B-15,2005。
[7] 游舜豪,「應用高解析度線掃描CCD於ITO導電玻璃表面瑕疵檢測之研 究」,
碩士論文,國立台灣科技大學 自控研究所,2006。
[8] Tsai, D. M. and C. Y. Hsieh, 1999, “Automated surface inspection for directional textures," Image and Vision Computing, Vol. 18, pp. 49-62.
[9] Tsai, D. M. and T. Y. Huang, 2003, “Automated Surface Inspection for Statistical Textures," Image and Vision Computing, Vol. 21, pp. 307-323.
[10] 蔡篤銘,「應用非線性擴散於光電顯示玻璃基板之表面瑕疵檢測」,工程科技 通訊九十一期工工類,2007.
[11] Der-Baai Perng,Cheng-Chuan Chou ,Wei-Yu Chen,"A Novel Vision for CRT Panel Auto-inspection"International Conference on
Mechatronixs,July10-12,IEEE,2005.
[12] 馮趙祥,「新式 Haar-like 矩形特徵於太陽能板表面及邊緣瑕疵檢測研究」,碩 士論文,國立台灣科技大學 自控研究所,2008。
[13] 謝承恩,「以累積差異及多重解析度背景相減偵測 LCD Mura 瑕疵」碩士論文,
國立中央大學資訊工程研究所,2007。
[14] 郭冠志,「機器視覺應用於太陽電池之表面瑕疵檢測」碩士論文,國立台北科 技大學機電整合研究所,2006。
[15] 張智翔,「結合STFT與Gabor小波網路於紋理瑕疵偵測之應用」,碩士論文,
國立台灣科技大學電機工程研究所,2006。
[16] 方立德,「 TFT液晶顯示面板的Mura瑕疵偵測」碩士論文,國立交通大學電子 工程系所,2005。
[17] 林宏達,「透明玻璃之瑕疵偵測與瑕疵之正反面位置判斷」碩士論文,朝陽科 技大學工業工程與管理系碩士班,2007。
[18] 張頌榮,「TFT-LCD 面板之點線瑕疵自動化檢測系統」碩士論文,國立成功 大學製造工程研究所碩博士班,2004。
[19] 廖燿璋,「高速TFT LCD瑕疵檢測系統」碩士論文,逢甲大學自動控制工程所,
2005。
[20] 曾麗華,「TFT LCD 大尺寸面板產業 2008 年展望」,華控月刊,2008。
[21] 盧素涵,「設備本土化對 LCD 設備關鍵零組件之影響剖析」,機械工業雜誌七 月,2006。
[22] 蔡明忠,「平面顯示科技實務課程講義」,國立台灣科技大學自控所蔡明忠教 授,2005。
64
[23] 王瑞陽、宋天祐,「高速紙張瑕疵檢測檢視系統」,機械工業雜誌五月,1990。
[24] 張漢傑、陳定堯,「線上表面瑕疵視覺檢測」,機械工業雜誌六月,1991。
[25] 黃信榮,「線上自動化胚布瑕疵檢測系統之研製」,碩士論文,國立台灣科技 大學纖維暨高分子研究所,2000。
[26] Jung-Hun Kim, Suk Ahn, Jae Wook Jeon, Jong-Eun Byun, “A High-Speed High-Resolution Vision System for the Inspection of TFT LCD”, ISIE, Pusan , Korea,IEEE,2001.
[27] 林義堂,「線掃瞄機器視覺檢測系統之開發與探討」,碩士論文,中華大學機 械與航太工程研究所,2003。
[28] Dr.schenk,“Surface and Edge Inspection of Flat Panels for Efficient Process Control”, Dr.Schenk company in Germany, INSIDE April 2005.
[29] K.NAKASHIMA,“Hybrid Inspection System for LCD Color Filter Panels”,IMTC, May 10-12,Hamamatsu,IEEE, 1994.
[30] Kyu-Bong Lee, Min-Seok Ko, Joon Jae Lee,Tak-Mo Koo, Kil-houm Pk,
“DEFECT DETECTION METHOD FOR TFT-LCD PANEL BASED ON SALIENCY MAP MODEL” , pp.223-226.IEEE,2004.
[31] 吳宗諭,「一種以密度為基礎之改良型快速分群演算法及即時偏光板瑕疵 區域 檢測之應用」,碩士論文,國立台灣科技大學 自控研究所,2007。
[32] 岳華展光電股份有限公司 http://www.rocoes.com.tw/ 2008/03
[33] Ming-Jong Tsai, Chung-Yu Wu, Chao-Hsiang Feng, F. N. Tien,” A Rapid Density-Based Clustering Algorithm for Large Databases” CVGIP2008,I-lan, Aug. , 2008.
65
附件一 系統軟體程式碼
1、Laplacian
/*該函數用 Laplacian 邊緣檢測運算元對影像進行邊緣檢測運算 sqrt((z7+z8+z9-z1-z2-z3)^2+(z1+z4+z7-z3-z6-z9)^2) */
void __fastcall TForm1::Laplacian3X3Filter( int x1, int y1, int x2, int y2) {
NewBitmap->Width = x2-x1+1;
NewBitmap->Height = y2-y1+1;
NewBitmap->PixelFormat = OrgBitmap->PixelFormat;
NewBitmap->Palette = CreatePalette(&GrayPalette.lPal);
Process_Pgb->Position = 0;
Process_Pgb->Max = y2-y1;
Byte *ptr_src[3],*ptr_tgt;
int z2,z4,z5,z6,z8,value;
for(register int y=y1+1;y<y2-1;y++) {
ptr_tgt = (Byte *)NewBitmap->ScanLine[y-y1];
ptr_src[0] = (Byte *)OrgBitmap->ScanLine[y-1];
ptr_src[1] = (Byte *)OrgBitmap->ScanLine[ y ];
ptr_src[2] = (Byte *)OrgBitmap->ScanLine[y+1];
for(register int x=x1+1;x<x2-1;x++) {
if(x<1 | x>(OrgBitmap->Width-2) | y<1 | y>(OrgBitmap->Height-2)) continue;
else {
/* ptr_src = (Byte *)OrgBitmap->ScanLine[y-1];
z2 = ptr_src[x];
ptr_src = (Byte *)OrgBitmap->ScanLine[y];
z4 = ptr_src[x-1];
z5 = ptr_src[x];
z6 = ptr_src[x+1];
ptr_src = (Byte *)OrgBitmap->ScanLine[y+1];
z8 = ptr_src[x];
value = z2+z4+z6+z8-z5;*/
z2 = ptr_src[0][x];
66 z4 = ptr_src[1][x-1];
z5 = ptr_src[1][x];
z6 = ptr_src[1][x+1];
z8 = ptr_src[2][x];
value = z2+z4+z6+z8-z5;
// value = ptr_src[0][x]+ptr_src[1][x-1]+ptr_src[2][x]+ptr_src[1][x+1]-ptr_src[1][x];
if(value<0) value = 0;
if(value>255) value = 255;
ptr_tgt[x-x1] = value;
} }
Process_Pgb->Position++;
Process_Pgb->Step;
}
if(img8_show) ImgShow(TLX,TLY,BRX,BRY);
else Image8->Picture->Bitmap->Assign(NewBitmap);
}
2、影像平滑法
void __fastcall TForm1::Smoothing( int x1, int y1, int x2, int y2) {
NewBitmap->Width = x2-x1+1;
NewBitmap->Height = y2-y1+1;
NewBitmap->PixelFormat = OrgBitmap->PixelFormat;
NewBitmap->Palette = CreatePalette(&GrayPalette.lPal);
Process_Pgb->Position = 0;
Process_Pgb->Max = y2-y1;
Byte *ptr_src[7],*ptr_tgt;
int lll, ll, l , c, r, rr, rrr;
long int sum;
for(int y=y1+3;y<y2-3;y++){
ptr_src[0] = (Byte *)OrgBitmap->ScanLine[y-y1-3];
ptr_src[1] = (Byte *)OrgBitmap->ScanLine[y-y1-2];
ptr_src[2] = (Byte *)OrgBitmap->ScanLine[y-y1-1];
ptr_src[3] = (Byte *)OrgBitmap->ScanLine[ y-y1 ];
ptr_src[4] = (Byte *)OrgBitmap->ScanLine[y-y1+1];
67 ptr_src[5] = (Byte *)OrgBitmap->ScanLine[y-y1+2];
ptr_src[6] = (Byte *)OrgBitmap->ScanLine[y-y1+3];
ptr_tgt = (Byte *)NewBitmap->ScanLine[ y-y1 ];
for(int x=x1+3;x<x2-3;x++){
if(x<1 | x>(OrgBitmap->Width-2) | y<1 | y>(OrgBitmap->Height-2)) continue;
else{
lll = (x-3);
ll = (x-2);
l = (x-1);
c = ( x );
r = (x+1);
rr = (x+2);
rrr = (x+3);
if(x-3) sum =
sum+ptr_src[0][rrr]+ptr_src[1][rrr]+ptr_src[2][rrr]+ptr_src[3][rrr]+ptr_src[4][rrr]+ptr_src[5][rrr]+ptr_src[6]
[rrr];
else{
sum =
ptr_src[0][lll]+ptr_src[0][ll]+ptr_src[0][l]+ptr_src[0][c]+ptr_src[0][r]+ptr_src[0][rr]+ptr_src[0][rrr]+
ptr_src[1][lll]+ptr_src[1][ll]+ptr_src[1][l]+ptr_src[1][c]+ptr_src[1][r]+ptr_src[1][rr]+ptr_src[1][rrr]+
ptr_src[2][lll]+ptr_src[2][ll]+ptr_src[2][l]+ptr_src[2][c]+ptr_src[2][r]+ptr_src[2][rr]+ptr_src[2][rrr]+
ptr_src[3][lll]+ptr_src[3][ll]+ptr_src[3][l]+ptr_src[3][c]+ptr_src[3][r]+ptr_src[3][rr]+ptr_src[3][rrr]+
ptr_src[4][lll]+ptr_src[4][ll]+ptr_src[4][l]+ptr_src[4][c]+ptr_src[4][r]+ptr_src[4][rr]+ptr_src[4][rrr]+
ptr_src[5][lll]+ptr_src[5][ll]+ptr_src[5][l]+ptr_src[5][c]+ptr_src[5][r]+ptr_src[5][rr]+ptr_src[5][rrr]+
ptr_src[6][lll]+ptr_src[6][ll]+ptr_src[6][l]+ptr_src[6][c]+ptr_src[6][r]+ptr_src[6][rr]+ptr_src[6][rrr];
}
ptr_tgt[x-(x1)] = sum/49;
sum =
sum-ptr_src[0][lll]-ptr_src[1][lll]-ptr_src[2][lll]-ptr_src[3][lll]-ptr_src[4][lll]-ptr_src[5][lll]-ptr_src[6][lll];
} }