::: 前往中央內容區塊
:::

歷史雜誌

說明說明說明說明說明說明說明說明說明說明說明說明

|FPGA高速即時視覺檢測應用模組設計與實現

作者 張彥中陳俊彥林欣儀洪國峰

刊登日期:

摘要:圖形樣板比對被大量應用於工業用視覺檢測中,以找出物件位置,但是卻因為運算複雜度高而需要較長的運算時間。本文提出一個以場域可程式化邏輯陣列(Field Programmable Gate Array, FPGA)為基礎的高速即時視覺檢測應用模組,該模組加速圖形樣板比對常用的正規交互關聯度運算(Normalized Cross-Correlation, NCC)速度。為了改善NCC計算速度,在保持比對結果正確前提下,我們簡化NCC演算法並設計一個對應的管線化平行化處理電路架構。實驗結果顯示高速即時視覺檢測應用模組運算速度較個人電腦運算快80倍。我們將此即時樣板比對模組整合應用於LED晶粒檢測系統,進行晶粒(die)的2D位置定位。此模組也可以應用於PV與半導體的檢測或製造,另外此模組也可應用於服務型或工業機器人之視覺應用。

Abstract: Template matching enables localization of objects under inspection, but suffers from long computation due to high computation complexity. In this work, a real-time FPGA-based template matching module which accelerates time consuming normalized cross-correlation (NCC) template matching was presented. To improve NCC computation speed, we simplified the original NCC algorithm and designed a pipelined parallel processing circuit architecture. Experimental results showed that our FPGA module accelerates NCC speed up to 80 times faster than PC performance. The real-time template matching module has been integrated into an LED die inspection system to localize LED dies. This real-time template matching module can be applied to LED, PV, and semiconductor inspection and manufacturing applications. Furthermore, this module can also be applied to vision applications for either service or industrial robots.

關鍵詞:場域可程式化邏輯陣列、正規交互相關、圖形樣板比對、瑕疵檢測

Keywords:Field Programmable Gate Array, Normalized Cross Correlation, Image Template Matching, Defect Detection

前言
產品檢測對於工業製造的生產線中十分重要, 尤其是當產品品質必須被保證時,則更需要百分之百的檢測[1]。以人眼進行檢測是目前常見作法,然而人眼視覺精確性與可靠性會隨著時間而下降[2],因此以自動化的視覺檢測作為人眼檢視的替代方案有其必要性。在視覺檢測過程中,一個重要的任務便是找出物件的位置。為了達到這個目的,常用的作法是使用圖形樣板比對。於諸多圖形樣板比對方法中,正規交互相關度(Normalized Cross-Correlation, NCC)演算法被廣泛採用於各種視覺檢測的應用中,如物件辨識[3]、光學字元辦識[4]、印刷電路板[5]、晶圓[6]等等。

正規交互相關度運算是藉由運算兩個向量訊號之間的交互相關度(Cross-Correlation),再與以正規化消除向量訊號平均大小的影響,來判斷此兩個向量訊號之間的相似性。前述向量訊號於視覺中,可以是一個二維的影像方塊,方塊內每一個像素亮度值即代表向量值;因此比對兩個影像方塊所構成向量訊號間的正規交互相關度,即可判定這兩個影像方塊之間的相似性。若相關度越高,代表彼此越相像。但是對於較大的影像方塊的場合下,運算量會隨影像方塊大小而快速增加,這對於需要滿足即時運算需求應用將構成運算速度不足的困擾。

欲解決運算速度問題,有三種方式可以達到加速運算效果[7]。第一種方式,使用多重解析度影像。於較低解析度影像中先初步找出物件位置,有了這個資訊後,再於較高解析度影像中找出物件精確位置。第二種方式則是針對樣板來源影像與欲搜尋樣板的目標影像進行次取樣,再以次取樣的來源影像與目標影像進行比對。第三種方式則是使用兩階段的比對,先找出圖形部份比對符合的位置,再定位出物件於圖形中的精確位置。雖然這些技巧可以有效的降低運算複雜度,以前述做法在一般電腦進行正規交互相關度運算的加速仍有其極限。

基於電腦對正規交互相關度運算的極限,Xiaotao Wang和Xingbo Wang [8]提出2種實現NCC功能的數位電路架構,根據可用的乘法器與SRAM的資源,選擇合適的架構。支援的樣板影像大小最大為80 × 80,就實際應用而言,影像範圍大小仍顯不足;且在最大支援的影像規格下(template size:80 × 80,search window size:512 × 512),所需處理時間需要224ms,無法滿足更嚴苛的即時運算需求場合(如監控系統,30fps)。

Nisheeth Gupta and Nikhil Gupta [9]提出一種scalable架構,對於應付更大的樣板影像,電路可以串接(cascade)方式擴充或者是以單一模組作運算。使用N個模組的運算時間為單一模組運算時間的1/N。單一模組運算能力則視內部配置多少的運算資源。該架構對於較大的樣板影像(如160 × 160)於即時的運算需求下(<33ms),會需要過多的乘法器,對硬體實現所需運算資源而言是不利的。

更完整的內容歡迎訂購 2012年08月號 (單篇費用:參考材化所定價)

1篇150

NT$150
訂閱送出

3篇450元

NT$450
訂閱送出

10篇1200元

NT$1,200
訂閱送出
主推方案

無限下載/年 5000元

NT$5,000
訂閱送出