TWI803756B - 標記影像的方法 - Google Patents
標記影像的方法 Download PDFInfo
- Publication number
- TWI803756B TWI803756B TW109119845A TW109119845A TWI803756B TW I803756 B TWI803756 B TW I803756B TW 109119845 A TW109119845 A TW 109119845A TW 109119845 A TW109119845 A TW 109119845A TW I803756 B TWI803756 B TW I803756B
- Authority
- TW
- Taiwan
- Prior art keywords
- image
- difference
- target
- output image
- images
- Prior art date
Links
Images
Landscapes
- Magnetic Resonance Imaging Apparatus (AREA)
- Image Analysis (AREA)
Abstract
一種標記影像的方法包括:取得目標物件之目標影像,依據目標影像及重建模型產生重建影像,其中重建模型係採用多個參考影像及一機器學習演算法訓練而得,每一參考影像為一參考物件之影像且該參考物件的缺陷程度落於具有上限值的一可容許範圍內,且每一參考物件關聯於目標物件,依據目標影像及重建影像分別執行第一差異演算法及第二差異演算法以分別產生第一差異影像及第二差異影像,以及依據第一差異影像及第二差異影像執行像素尺度運算以產生輸出影像,其中輸出影像包括目標物件之一缺陷之標記。
Description
本發明係關於影像處理領域,特別是一種標記影像中的物件的缺陷的方法。
在最終出貨給客戶之前,筆記型電腦或平板電腦等產品需要由品質管理人員檢查和確認。這些品質管理人員依據教驗準則檢查產品是否具有刮痕、凹痕或其他缺陷。如果缺陷的嚴重程度超出規格所允許的範圍,則電腦產品被視為「不合格」;反之,則電腦產品被視為「通過」缺陷檢測。
為了檢測電腦產品外觀上的缺陷,可以蒐集電腦產品的多個表面影像,在影像上標記缺陷類型,然後訓練用於在自動光學檢查(Automatic Optical Inspection,AOI)機器中進行缺陷偵測的機器學習或深度學習(deep learning)模型。傳統上,物件偵測(detection)和分類(classification)均以監督方式進行。在監督式學習的狀況中,為了提高偵測準確度需要蒐集大量帶有標記(label)的訓練資料,包括正常的樣本以及有缺陷的樣本。
更多的訓練資料意味著更多的標記工作。然而,訓練資料的蒐集和標記需要大量的人力成本,而且可能相當困難。舉例來說,電腦產品製造商若未設置用於蒐集大數據(尤其是大量影像資料)的基礎建設,而將資料蒐集和標記任務外包,則資料的安全性、完整性和機密性可能會引起極大的關注。更重要的是,隨著電腦產品的生命週期縮短,且產品設計趨向多元,以足夠的多樣性來蒐集和標記電腦表面影像的缺陷顯得不切實際。電腦產品的表面可能是任何顏色,也可以有任何紋理和材質。此外,表面缺陷具有許多類型,例如刮痕、凹痕,污漬等等。同一類型的表面缺陷可能有各種形狀和大小。更嚴重的是,某些表面缺陷不易被歸類。訓練資料中不可避免地會出現不一致的標記。常規方法需要在
訓練資料中正確地對缺陷檢測進行分類和標記,以期具有良好的準確性。因此,很難收集具有足夠種類的大量一致的標記資料。而等到蒐集和標記足夠的訓練影像之後,這些訓練影像所對應的電腦產品可能已經接近下市。
有鑑於此,本發明提出一種標記影像的方法以滿足大量訓練資料的需求。
依據本發明一實施例敘述的一種標記影像的方法,所述的方法包括:取得目標物件之目標影像;依據目標影像及重建模型產生重建影像,其中重建模型係採用多個參考影像及一機器學習演算法訓練而得,每一參考影像為一參考物件之影像且參考物件的缺陷程度落於具有上限值的一可容許範圍內,每一參考物件關聯於目標物件;依據目標影像及重建影像分別執行第一差異演算法及第二差異演算法以分別產生第一差異影像及第二差異影像;以及依據第一差異影像及第二差異影像執行像素尺度運算以產生輸出影像,其中輸出影像包括目標物件之一缺陷之標記。
綜上所述,本發明提出的標記影像的方法適用於對電腦產品的原始影像進行分類或偵測。本發明減少了大量標記影像以作為訓練資料的需求。本發明提出的重建模型不會過度泛化(over-generalized),以致於將某些缺陷視為正常區域中的紋理圖案,故本發明可降低出現假陰性(false negative)的狀況。本發明藉由僅突出異常而忽略複雜背景的方式來模仿人類的感知。這種基於感知注意(perceptual-attention)的方法有效地減少了假陽性(false positive)的狀況。
以上之關於本揭露內容之說明及以下之實施方式之說明係用以示範與解釋本發明之精神與原理,並且提供本發明之專利申請範圍更進一步之解釋。
S0~S6:步驟
S31~S33:步驟
S61~S64:步驟
圖1係依據本發明一實施例的標記影像的方法繪示的流程圖。
圖2係繪示本發明一實施例中步驟S3的細部流程圖。
圖3係繪示本發明一實施例中多閾值生成程序的流程圖。
圖4係本發明一實施例中目標影像的範例。
圖5係本發明一實施例中重建影像的範例。
圖6係本發明一實施例中第一差異影像的範例。
圖7係本發明一實施例中第二差異影像的範例。
圖8係本發明一實施例中第一輸出影像的範例。
圖9係本發明一實施例中第三輸出影像的範例。
圖10係本發明一實施例中第四輸出影像的範例。
圖11係本發明一實施例中第二輸出影像的範例。
圖12係本發明一實施例中人工標記影像中的缺陷的範例。
以下在實施方式中詳細敘述本發明之詳細特徵以及優點,其內容足以使任何熟習相關技藝者了解本發明之技術內容並據以實施,且根據本說明書所揭露之內容、申請專利範圍及圖式,任何熟習相關技藝者可輕易地理解本發明相關之目的及優點。以下之實施例係進一步詳細說明本發明之觀點,但非以任何觀點限制本發明之範疇。
本發明提出的標記影像的方法,適用於偵測目標物件本身的缺陷,並且在具有目標物件的目標影像中增加關聯於缺陷的標記(supplementary labels)。在一實施例中,目標物件係電腦產品的表面,像是筆記型電腦的上蓋,缺陷則係位於上蓋的刮痕、凹痕或污漬等。在另一實施例中,目標物件係印刷電路板,缺陷則係零件的缺件、偏斜或錯件等。
請參考圖1,其繪示本發明一實施例的標記影像的方法的流程圖。請參考步驟S0,依據多個參考影像及一機器學習演算法產生一重建模型。多個參考影像的每一者為一參考物件之影像,且此參考物件的缺陷程度落
於具有上限值的一可容許範圍內。每一個參考物件關聯於目標物件。詳言之,參考物件為目標物件的合格樣本,或稱為可容許樣本。參考物件例如係筆記型電腦的上蓋。依據規格要求,參考物件不具有缺陷,或參考物件的缺陷的數量及程度落於可容許範圍內。舉例來說,請參考表格一,可容許範圍例如包括第一級及第二級的缺陷類型,且上限值為第二級中定義的最大邊界值(20mm、2條、1mm2及/或2個)或者例如包括第一級的缺陷類型,且上限值為第一級中定義的最大邊界值(12mm、2條、0.7mm2及/或3個)。為便於敘述,後文將「缺陷程度落於可容許範圍內」簡稱為「不具有缺陷」。
在一實施例中,步驟S0所述的機器學習演算法係自編碼器(auto-encoder)。在另一實施例中,步驟S0所述的機器學習演算法係單一類別的支持向量機(one-class support vector machine)。機器學習演算法以拍攝多個參考物件所獲得的多個參考影像作為訓練資料並訓練出重建模型。重建模型,或稱為生成模型(generative model),其係用來描述合格樣本的模型。在步驟S0的重建模型預先訓練完成之後,圖1所示的步驟S1~S5為實際運作階段。
請參考步驟S1,取得目標影像。本步驟S1例如以攝像裝置拍攝目標物件之目標影像。目標物件例如是筆記型電腦的上蓋或印刷電路板。為便於說明,目標物件具有一或多個在可容許範圍外的缺陷。然而在執行本發明提出的標記影像的方法之後,也有可能出現「目標物件不具有缺陷」
的狀況。
請參考步驟S2,依據目標影像及重建模型產生重建影像。舉例來說,攝像裝置將步驟S1取得的目標影像發送至處理器。處理器依據目標影像及重建模型產生一重建(reconstruction)影像。重建影像可被視為「不具有缺陷」的目標影像。重建模型產生重建影像的方式包括但不限於:從多個候選重建影像中挑選一者、從多個特徵原型中以線性組合方式產生重建影像、或者依據一影像轉換函數輸出重建影像。
若目標影像中的目標物件具有缺陷,則在步驟S2產生重建影像之後,重建影像與目標影像之間具有重建誤差(reconstruction error)。請參考步驟S3及步驟S4。步驟S3係處理器依據目標影像及重建影像執行第一差異演算法以產生第一差異影像,步驟S4係處理器依據目標影像及重建影像執行第二差異演算法以產生第二差異影像。步驟S3及步驟S4係處理器依據不同的比對尺度去計算重建誤差。步驟S3及步驟S4可同時被執行,亦可先後被執行,本發明並不限制處理器執行步驟S3及步驟S4的順序。
請參考圖2,其繪示本發明一實施例中步驟S3的細部流程圖。
請參考步驟S31及步驟S32。步驟S31係依據目標影像及一神經網路模型產生第一特徵圖(feature map)。步驟S32係依據重建影像及此神經網路模型產生第二特徵圖。所述的第一特徵圖及第二特徵圖中分別具有一或多個特徵區塊,這些特徵區塊代表特徵圖需要被注意的部分。特徵區塊的大小例如為長寬各64像素的矩形區塊(patch),本發明並不限制區塊的長寬尺寸。特徵圖亦可被稱為深度特徵(deep feature)。
在一實施例中,步驟S31及步驟S32所用的神經網路模型例如係SqueezeNet。在其他實施例中,神經網路模型可為AlexNet或ResNet。在一實施例中,神經網路模型係預先以大型視覺資料庫(例如ImageNet)中的多個影像進行訓練,這些影像與目標物件無關聯。在訓練
時,以每個影像的每一像素擷取包含此像素之矩形區塊(例如為長寬各64像素的矩形區塊)作為訓練資料。在另一實施例中,首先以與目標物件無關聯的多個圖像訓練出神經網路模型,然後以包括以關聯於目標物件的多個影像微調此神經網路模型,藉此提高特徵萃取的準確度。訓練後的神經網路模型在特徵萃取(feature extraction)階段輸出的特徵圖具有相似於人類視覺感知的特徵辨識策略。
請參考步驟S33,計算第一特徵圖及第二特徵圖之差異作為第一差異影像。舉例來說,第一差異影像為第一特徵圖與第二特徵圖進行相減。第一差異影像係感知注意圖(perceptual attention map),此感知注意圖具有模仿人類比對影像差異的效果。詳言之,人類在比對參考影像及目標影像時,並不會特別注意到兩個影像是否有輕微的位移或微小的差異,而是容易觀察到兩個影像中特徵區塊的差異。步驟S31~S33所述的第一差異演算法係從區塊角度計算粗略級別(coarse level)的重建誤差。
一般而言,自編碼器採用L2損失函數(loss function)或結構相似性指標(structural similarity index,SSIM)來計算目標影像與重建影像之間的重建誤差。然而,這些指標通常對輕微的整體變化敏感,因此,當比對重點放在紋理圖案相似性(texture pattern similarity)而不是精確對齊上時,上述的指標將無法很好地發揮作用。即使目標影像中的目標物件的缺陷程度並不嚴重,若目標影像與重建影像之間具有少量的位移,上述的指標還有可能增加不必要的重建誤差。因此,本發明採用步驟S31~S33所介紹的第一差異演算法以強調高階結構與特徵表示的匹配性。整體而言,應用第一差異演算法所產生的第一差異影像具有強調感興趣區域(region of interest,ROI)及減少背景噪聲(noise)的效果。
請參考步驟S4,依據目標影像及重建影像執行第二差異演算法以產生第二差異影像。第二差異演算法係處理器依據重建影像及目標影像的每一像素計算一相對誤差值(relative error)。所述的相對誤差值例如係兩
張影像中每個像素的平方誤差(pixel-wise square error)或每個像素的絕對值誤差(pixel-wise absolute difference)。本步驟S4係處理器以像素級別運算得到目標影像中的目標物件的缺陷位置。
請參考步驟S5,依據第一差異影像及第二差異影像執行像素尺度(pixel-wise)運算以產生第一輸出影像。在一實施例中,所述的像素尺度運算係位元乘法。詳言之,步驟S5中,對於第一差異影像的某一位置及第二差異影像的相同位置,若處理器判斷這兩個位置的像素值皆指示為缺陷,則第一輸出影像將保留此位置的缺陷。若第一差異影像及第二差異影像中僅有一者判斷某一位置的像素值指示為缺陷,則第一輸出影像不保留此位置的缺陷。
在一實施例中,在步驟S5執行完成後,處理器可依據第一輸出影像中每一像素是否指示為缺陷而標記出第一輸出影像中的缺陷。在另一實施例中,為進一步減少假陽性(false positive)的狀況,在步驟S5執行完成後,處理器可繼續執行步驟S6以提高標記的精確度。
請參考步驟S6,依據第一輸出影像執行多閾值生成程序以產生第二輸出影像及標記,其中第一閾值大於大二閾值。第一閾值用於獲取可能是缺陷的像素,第二閾值用於將這些可能是缺陷的像素擴展到週邊的像素。
請參考圖3,其繪示步驟S6所述的多閾值生成程序的流程圖。請參考步驟S61及步驟S62。步驟S61係處理器依據第一閾值對第一輸出影像進行二值化(binarization)程序以產生第三輸出影像,步驟S62係處理器依據第二閾值對第一輸出影像進行二值化程序以產生第四輸出影像。步驟S61及步驟S62係依據不同的閾值對第一輸出影像進行處理。步驟S61及步驟S62可同時被執行,亦可先後被執行,本發明並不限制執行步驟S61及步驟S62的順序。在一實施例中,處理器計算多個參考影像與重建影像之間的重建誤差的平均值A及標準差S(standard deviation),並且將第一閾值設定為A+4S,將第二閾值設定為A+S。
請參考步驟S63,選取第三輸出影像中之缺陷區塊。詳言之,從高閾值處理後的第三輸出影像可捕捉到缺陷的部分。請參考步驟S64,依據第四輸出影像中對應於缺陷區塊之位置,判斷此位置週邊之像素是否具有缺陷以選擇性地擴展缺陷區塊。舉例來說,若第三輸出影像中被選取的缺陷區塊之中心點座標為(123,45),則處理器在第四輸出影像中尋找座標為(123,45)的像素的週邊像素,包括座標為(122,45)、(124,45)、(123,43)、(123,46)等像素,然後判斷這些第四輸出影像的像素是否為缺陷。如果判斷結果為「是」,則處理器在第二輸出影像中保留缺陷區塊及亦為缺陷的週邊像素。在一實施例中,步驟S64可採用例如flood fill演算法以產生包含缺陷區塊的連通圖。
依據步驟S6所產生的第二輸出影像,處理器判斷其中屬於缺陷的像素,進一步對這些缺陷進行標記。本發明在步驟S6中提出的多閾值生成程序,可減少假陽性的影像標記。
圖4至圖11是執行圖1~圖3之步驟後所產生的影像的範例。
請參考圖4,其係執行步驟S1後取得的目標影像的範例。圖4中的目標物件為印刷電路板及一電路元件,可看出電路元件具有三根引腳,中間的引腳未正確地插入電路板上的插孔中。
請參考圖5,其係執行步驟S2後產生的重建影像的範例。從圖5可知「不具有缺陷」的目標物件中的電路元件的每個引腳皆插入插孔內。
請參考圖6,其係執行步驟S3後產生的第一差異影像的範例。從圖6可辨識第一差異影像的下半部具有一白色區域,相較於第一差異影像的上半部更具有辨識性。
請參考圖7,其係執行步驟S4後產生的第二差異影像的範例。圖7係以像素尺度呈現重建誤差,因此從圖7可看到更多對應於圖5的細節。
請參考圖8,其係執行步驟S5後產生的第一輸出影像的範例。對於電路元件的缺陷部位與周邊的對比度,圖8相較於圖6及圖7更高。
請參考圖9,其係執行步驟S62後產生的第三輸出影像的範例。圖9係依據圖8及第二閾值執行二值化程序後的結果。
請參考圖10,其係執行步驟S61後產生的第四輸出影像的範例。圖10係依據圖8及第一閾值執行二值化程序後的結果。從圖10可明顯看出缺陷所在的位置。
請參考圖11,其係執行步驟S64後產生的第二輸出影像以及標記的範例。標記為圖11中標示缺陷位置的方框。
請參考圖12,其係本發明一實施例中人工標記影像中的缺陷的範例。從圖12可知採用本發明所得到的標記與真實結果極為接近。
實務上,在執行如圖1所示的流程之後,得到的具有標記的影像例如可提供以區域基礎的卷積神經網路(Region-based Convolutional Neural Network,R-CNN)實現的缺陷偵測模型。所述的區域基礎的卷積神經網路例如:Fast R-CNN、Faster R-CNN、Mask R-CNN、YOLO(You Only Look Once)或SSD(Single Shot Detection)。
綜上所述,本發明提出的標記影像的方法適用於對電腦產品的原始影像進行分類或偵測。本發明減少了大量標記影像以作為訓練資料的需求。本發明提出的重建模型不會過度泛化(over-generalized),以致於將某些缺陷視為正常區域中的紋理圖案,故本發明可降低出現假陰性(false negative)的狀況。本發明藉由僅突出異常而忽略複雜背景的方式來模仿人類的感知。這種基於感知注意(perceptual-attention)的方法有效地減少了假陽性的狀況。
雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明。在不脫離本發明之精神和範圍內,所為之更動與潤飾,均屬本發明之專利保護範圍。關於本發明所界定之保護範圍請參考所附之申請專利範
圍。
S0~S6:步驟
Claims (6)
- 一種標記影像的方法,包括:取得一目標物件之一目標影像;依據該目標影像及一重建模型產生一重建影像,其中該重建模型係採用多個參考影像及一機器學習演算法訓練而得,每一該些參考影像為一參考物件之影像且該參考物件的缺陷程度落於具有上限值的一可容許範圍內,每一該參考物件關聯於該目標物件;依據該目標影像及該重建影像分別執行一第一差異演算法及一第二差異演算法以分別產生一第一差異影像及一第二差異影像;以及依據該第一差異影像及該第二差異影像執行一像素尺度運算以產生一輸出影像,其中該輸出影像包括該目標物件之一缺陷之標記;其中該輸出影像係一第一輸出影像,且在依據該第一差異影像及該第二差異影像執行該像素尺度運算以產生該輸出影像之後,該方法更包括:依據一第一閾值及一第二閾值分別對該第一輸出影像進行二值化程序以產生一第三輸出影像及一第四輸出影像,其中該第一閾值大於該第二閾值;選取該第三輸出影像中之一缺陷區塊;以及依據該第四輸出影像中對應於該缺陷區塊之一位置,判斷該位置週邊之像素是否具有缺陷以選擇性地擴展該缺陷區塊;其中該第一差異演算法包括:依據該目標影像及一神經網路模型產生一第一特徵圖;依據該重建影像及該神經網路模型產生一第二特徵圖;以及 計算該第一特徵圖及該第二特徵圖之間的一差異度,其中該第一差異影像中包含該差異度;其中該神經網路模型係以與目標物件無關聯的多個影像訓練而得。
- 如請求項1所述標記影像的方法,其中該重建模型係自編碼器(autoencoder)。
- 如請求項1所述標記影像的方法,其中該神經網路模型係SqueezeNet。
- 如請求項1所述標記影像的方法,其中該第二差異演算法包括:依據該重建影像及該目標影像的每一像素計算一相對誤差值。
- 如請求項4所述標記影像的方法,其中該相對誤差值係平方誤差或絕對值誤差。
- 如請求項1所述標記影像的方法,其中該像素尺度運算係位元乘法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109119845A TWI803756B (zh) | 2020-06-12 | 2020-06-12 | 標記影像的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109119845A TWI803756B (zh) | 2020-06-12 | 2020-06-12 | 標記影像的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202147254A TW202147254A (zh) | 2021-12-16 |
TWI803756B true TWI803756B (zh) | 2023-06-01 |
Family
ID=80783787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109119845A TWI803756B (zh) | 2020-06-12 | 2020-06-12 | 標記影像的方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI803756B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180157937A1 (en) * | 2016-12-02 | 2018-06-07 | Sualab Co., Ltd. | Method, apparatus and computer program stored in computer readable medium for state decision of image data |
TW201903391A (zh) * | 2017-04-07 | 2019-01-16 | 美商克萊譚克公司 | 基於輪廓之缺陷偵測 |
-
2020
- 2020-06-12 TW TW109119845A patent/TWI803756B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180157937A1 (en) * | 2016-12-02 | 2018-06-07 | Sualab Co., Ltd. | Method, apparatus and computer program stored in computer readable medium for state decision of image data |
TW201903391A (zh) * | 2017-04-07 | 2019-01-16 | 美商克萊譚克公司 | 基於輪廓之缺陷偵測 |
Also Published As
Publication number | Publication date |
---|---|
TW202147254A (zh) | 2021-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107543828B (zh) | 一种工件表面缺陷检测方法及系统 | |
CN113850749B (zh) | 训练缺陷侦测器的方法 | |
WO2017181724A1 (zh) | 电子元件漏件检测方法和系统 | |
TW202105549A (zh) | 對樣本的缺陷檢測的方法及其系統 | |
CN112053318A (zh) | 基于深度学习的二维pcb缺陷实时自动检测与分类装置 | |
CN111080622A (zh) | 神经网络训练方法、工件表面缺陷分类与检测方法及装置 | |
Mahalingam et al. | Pcb-metal: A pcb image dataset for advanced computer vision machine learning component analysis | |
JP2013257304A5 (zh) | ||
JP6317725B2 (ja) | 取得された画像内のクラッタを決定するためのシステム及び方法 | |
CN113205511B (zh) | 基于深层神经网络的电子元器件批量信息检测方法及系统 | |
TW201606854A (zh) | 用於晶粒對資料庫光罩檢查之自動校準樣本選擇 | |
TW201512649A (zh) | 偵測晶片影像瑕疵方法及其系統與電腦程式產品 | |
CN113822836B (zh) | 标记图像的方法 | |
CN115597494B (zh) | 一种基于点云的预制构件预留孔的精度检测方法、系统 | |
CN105354816B (zh) | 一种电子元件定位方法及装置 | |
CN110288040B (zh) | 一种基于拓扑验证的图像相似评判方法及设备 | |
Sulaiman et al. | DEFECT INSPECTION SYSTEM FOR SHAPE-BASED MATCHING USING TWO CAMERAS. | |
CN116091503B (zh) | 一种面板异物缺陷的判别方法、装置、设备及介质 | |
TWI803756B (zh) | 標記影像的方法 | |
CN117314861A (zh) | 一种硅片套刻图形检测识别与对准的方法 | |
JP4814116B2 (ja) | 実装基板外観検査方法 | |
Sanguino et al. | Computer-aided system for defect inspection in the PCB manufacturing process | |
TWI770529B (zh) | 訓練缺陷偵測器的方法 | |
Sathiaseelan et al. | Logo detection and localization for ic authentication, marking recognition, and counterfeit detection | |
KR20080082278A (ko) | 문자인식방법 및 반도체디바이스에 형성된 문자의문자인식방법 |