TW202104879A - 影像辨識裝置、影像辨識方法及其電腦程式產品 - Google Patents
影像辨識裝置、影像辨識方法及其電腦程式產品 Download PDFInfo
- Publication number
- TW202104879A TW202104879A TW109112602A TW109112602A TW202104879A TW 202104879 A TW202104879 A TW 202104879A TW 109112602 A TW109112602 A TW 109112602A TW 109112602 A TW109112602 A TW 109112602A TW 202104879 A TW202104879 A TW 202104879A
- Authority
- TW
- Taiwan
- Prior art keywords
- model
- image
- artificial intelligence
- training
- data
- Prior art date
Links
Images
Landscapes
- Image Analysis (AREA)
- Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
Abstract
一種影像辨識方法,包括:接收一結構化資料,其中該結構化資料包括一訓練集資料及一測試集資料,其中該結構化資料包括複數個群組,且各群組包括一或多個類別,且各類別包括複數張檢測點影像;依據該訓練集資料對一人工智慧模型進行訓練;將該測試集資料輸入至該人工智慧模型以得到該人工智慧模型的一模型評價;判斷在該結構化資料中整體辨識率或信心度較差的一或多個第一類別,並將對應於該一或多個第一類別中之該等第一檢測點影像刪除或修正以更新該結構化資料。
Description
本發明係有關於自動光學檢測,特別是有關於一種影像辨識裝置、影像辨識方法及其電腦程式產品。
自動光學檢測(Automated Optical Inspection,AOI)是工業製程中常見的代表性手法,例如可用於檢查印刷電路板(printed circuit board,PCB)、平面顯示器(flat display panel)、半導體裝置、電子產品、光學裝置、機械機構、模具等等的待測物品。舉例來說,自動光學檢測系統可利用光學儀器取得成品的表面狀態,再以電腦影像處理技術來檢出異物或圖案異常等瑕疵,因為是非接觸式檢查,所以可在生產線的中間節點來檢查半成品,例如空白PCB(bare PCB)以及組裝完成的PCB均為中間節點。
自動光學檢測系統可用於待測物品之製造或組裝過程中以檢查待測物品或半成品之不同特徵,例如但不限於:導體(例如電線)之完整性(例如斷裂、連續性、破裂)及尺寸、絕緣體或基板之尺寸及位置、孔洞(hole)之尺寸及位置、通孔(via)之尺寸及位置、導體間距、線寬和長度、焊錫狀況、元件位置、焊點缺陷等等。
然而,傳統的自動光學檢測系統均會設定相當嚴格的判斷條件以剔除不合格的產品,但是在上述過程中會得到許多品質合格但是被自動光學檢測系統判斷為有缺陷的產品,且在工廠端大量製造產品時,並無有效的方法可以一一檢測被誤判為有缺陷的產品。
有鑑於此,需要一種用於自動光學檢測的影像辨識裝置、影像辨識方法及其電腦程式產品以解決上述問題。
本發明實施例係提供一種電腦程式產品,用以被一機器載入且執行一影像辨識方法,該電腦程式產品包括:一模型訓練模組,用以接收一結構化資料,其中該結構化資料包括一訓練集資料及一測試集資料,該模型訓練模組更依據該訓練集資料對一人工智慧模型進行訓練,其中該結構化資料包括複數個群組,且各群組包括一或多個類別,且各類別包括複數張檢測點影像;以及一模型評價模組,用以將該測試集資料輸入至該人工智慧模型以得到該人工智慧模型的一模型評價,其中該模型評價模組更判斷在該結構化資料中整體辨識率或信心度較差的一或多個第一類別,並將對應於該一或多個第一類別中之該等第一檢測點影像刪除或修正以更新該結構化資料。
在一些實施例中,在該結構化資料中之各群組的該等檢測點影像均具有第一數量,且各群組中之各類別的該等檢測點影像之第二數量為該第一數量除以各群組中之該等類別的數量。該模型訓練模組係依據一預定比例將該第二結構化資料劃分為該訓練集資料及該測試集資料。
在一些實施例中,該人工智慧模型包括一輸入層、一遷移模型、一分類層、及一輸出層,且該模型訓練模組係定義該遷移模型之訓練過程的複數個策略參數,其中該等策略參數包括優化器種類、學習率、回合數、批次尺寸。
在一些實施例中,該模型訓練模組更定義該人工智慧模型所使用的影像解析度,其中該影像解析度係符合該遷移模型之影像解析度限制。當該結構化資料中之該等檢測點影像之尺寸與該人工智慧模型所使用的該影像解析度不同時,該模型訓練模組係對該結構化資料中之該等檢測點影像進行內插計算以將該等檢測點影像縮放為該人工智慧模型所使用的該影像解析度。
在一些實施例中,該模型訓練模組在訓練該人工智慧模型時係產生在訓練階段當下的訓練準確率及測試準確率,並比對該訓練準確率及測試準確率以判斷該人工智慧模型是否發生過適(overfitting)的現象。
在一些實施例中,當該人工智慧模型的訓練階段開始時,該模型訓練模組係產生一訓練損失曲線及一訓練準確率曲線。
在一些實施例中,該模型評價模組係將該人工智慧模型所判斷出在各類別中之該等檢測點影像的數量除以在該測試集資料中之各類別的該等檢測點影像之標記數量以得到各類別之第一正確率,並且將該人工智慧模型之判斷結果與該測試集資料之各類別中的檢測點影像之標記一致的數量除以該人工智慧模型所判斷出在各類別中之該等檢測點影像的數量以得到各類別之第二正確率,其中該模型評價模組係依據在該測試集資料中之各類別相應的該第一正確率及該第二正確率以判斷該人工智慧模型對於該測試集資料中之各類別的該等檢測點影像之辨識能力。
在一些實施例中,該模型評價模組更過濾出在該結構化資料中標示錯誤及多重標記的該等檢測點影像。該模型評價模組更執行一第一資料清理程序以將在該結構化資料中標示錯誤的該等檢測點影像從該訓練集資料刪除以更新該結構化資料。該模型評價模組更執行一第二資料清理程序以過濾出在該結構化資料中有多重標記的該等檢測點影像,並將該等檢測點影像在該訓練集資料中對應的該等檢測點影像刪除以更新該結構化資料。在另一些實施例中,該模型評價模組更搬移標記錯誤及多重標記的該等檢測點影像至一待修正類別資料夾以更新該結構化資料。當該模型評價模組已執行該第一資料清理程序及該第二資料清理程序並更新該訓練集資料後,該模型評價模組係呼叫該影像標示模組或該影像歸類模組以逐一檢查過濾出的該等檢測點影像並重新進行標示,其中當過濾出的該等檢測點影像之群組標記或類別經過重新標示後而改變,該模型評價模組係將修正標記後的該等檢測點影像搬運至修正類別資料夾中。
在一些實施例中,該電腦程式產品更包括一影像生成模組,且該模型評價模組係呼叫該影像生成模組以進一步檢視在該一或多個第一類別中的各檢測點影像,並針對該一或多個第一類別生成複數張模擬檢測點影像以更新該結構化資料。該模型訓練模組更依據更新後的該結構化資料以分割出新的該訓練集資料以重新訓練該人工智慧模型。
本發明實施例更提供一種影像辨識方法,包括:接收一結構化資料,其中該結構化資料包括一訓練集資料及一測試集資料,其中該結構化資料包括複數個群組,且各群組包括一或多個類別,且各類別包括複數張檢測點影像;依據該訓練集資料對一人工智慧模型進行訓練;將該測試集資料輸入至該人工智慧模型以得到該人工智慧模型的一模型評價;以及判斷在該結構化資料中整體辨識率或信心度較差的一或多個第一類別,並將對應於該一或多個第一類別中之該等第一檢測點影像刪除或修正以更新該結構化資料。
本發明實施例更提供一種影像辨識裝置,包括:一非揮發性記憶體,用以儲存一模型產生程式;以及一處理器,用以執行該模型產生程式以進行下列步驟:接收一結構化資料,其中該結構化資料包括一訓練集資料及一測試集資料,其中該結構化資料包括複數個群組,且各群組包括一或多個類別,且各類別包括複數張檢測點影像;依據該訓練集資料對一人工智慧模型進行訓練;將該測試集資料輸入至該人工智慧模型以得到該人工智慧模型的一模型評價;以及判斷在該結構化資料中整體辨識率或信心度較差的一或多個第一類別,並將對應於該一或多個第一類別中之該等第一檢測點影像刪除或修正以更新該結構化資料。
以下說明係為完成發明的較佳實現方式,其目的在於描述本發明的基本精神,但並不用以限定本發明。實際的發明內容必須參考之後的權利要求範圍。
必須了解的是,使用於本說明書中的"包含"、"包括"等詞,係用以表示存在特定的技術特徵、數值、方法步驟、作業處理、元件以及/或組件,但並不排除可加上更多的技術特徵、數值、方法步驟、作業處理、元件、組件,或以上的任意組合。
於權利要求中使用如"第一"、"第二"、"第三"等詞係用來修飾權利要求中的元件,並非用來表示之間具有優先權順序,先行關係,或者是一個元件先於另一個元件,或者是執行方法步驟時的時間先後順序,僅用來區別具有相同名字的元件。
第1圖係顯示依據本發明一實施例中之自動光學檢測系統的示意圖。
如第1圖所示,自動光學檢測系統10包括一自動輸送裝置12、一自動光學檢測裝置14、一影像檢測裝置16以及一影像辨識裝置18。自動輸送裝置12例如包括一機殼122及一驅動機構124。驅動機構124係設置於機殼122之上方,用以將一或多個待測物20(device under test)依序輸送至機殼122上之一檢測定位點128,使得自動光學檢測裝置14可對待測物20拍照或執行光學檢測程序以得到一或多張物件影像。驅動機構124例如可用輸送帶或是機器手臂所實現,且驅動機構124輸送待測物20之方向(如箭號30所示)係由控制器126所控制。控制器126例如可用一微控制器(controller)、一可程式化邏輯控制器(programmable logic controller,PLC)或是一個人電腦所實現,但本發明實施例並不限於此。
自動光學檢測裝置14係包括一或多個影像感測器142及一或多個照明裝置144,其中照明裝置144係用以提供光線至檢測定位點128上之待測物20,以使影像感測器142對檢測定位點128上之待測物20拍照以得到物件影像。照明裝置144例如可用發光二極體(LED)或不同類型之光源所實現,且影像感測器142例如可由電荷耦合裝置(charge-coupled device,CCD)感測器或互補式金屬氧化物半導體(complementary metal-oxide-semiconductor,CMOS)感測器所實現,但本發明實施例並不限於此。此外,在自動光學檢測裝置14中之一或多個影像感測器142之整體的拍照視野(field of view)係可涵蓋在檢測定位點128上之待測物20。
影像檢測裝置16例如可為一個人電腦或伺服器所實現。在一實施例中,影像檢測裝置16係用以從影像感測器142取得待測物之物件影像,並且對物件影像中之進行影像前處理(image pre-processing),並且對處理後的物件影像進行光學影像辨識,藉以判斷待測物中之一或多個檢測點是否有缺陷(defect)。
舉例來說,上述影像前處理包括但不限於去除雜訊、加強影像對比、加強影像邊緣、擷取影像特徵、影像縮放/旋轉、影像對齊/校正、影像轉換等等。可利用相關之影像前處理技術對物件影像進行處理,且經過處理後的物件影像更易於進行後續的影像分析及影像辨識。在一些實施例中,影像檢測裝置16可省略,且上述影像前處理例如可由影像辨識裝置18所執行。在另一些實施例中,影像檢測裝置16可整合至影像辨識裝置18。
在第一實施例中,影像檢測裝置16係用以從影像感測器142取得待測物之物件影像,並且對物件影像中之進行影像前處理(image pre-processing)。此時,影像檢測裝置16係將處理後的物件影像(例如可稱為AOI物件影像)傳送至影像辨識裝置18以進行後續處理。
在第二實施例中,影像檢測裝置16可執行機器視覺軟體(machine-vision software)將處理後之物件影像切割為一或多個檢測點影像,並對各檢測點影像進行影像辨識,其中上述機器視覺軟體可預先對待測物之物件影像中的各檢測點影像設定相應的影像辨識條件以辨識出各個檢測點之缺陷狀態。以印刷電路板(PCB)為例,各檢測點之缺陷狀態可包括:缺件(missing component)、偏斜(skew)、墓碑(tombstone)、錯件(wrong component)、多件(foreign component)、翻件(flipped component)、極性反(wrong polarity)、腳翹(lifted lead)、腳變形(lead defective)、錫橋(solder bridge)、少錫(insufficient solder)、短路(short circuit)、假焊(空焊)、冷焊等等,但本發明實施例並不限於此。針對不同類型之待測物設定相應的影像辨識條件。接著,影像檢測裝置16係將辨識出有缺陷狀態的檢測點影像傳送至影像辨識裝置18以進行後續處理。在一些實施例中,影像辨識裝置18也可以從其他外部裝置取得檢測點影像或物件影像、或是透過網路從雲端資料庫(第1圖未繪示)取得檢測點影像或物件影像,但本發明實施例並不限於此。為了便於說明,在後述實施例中之待測物20係以印刷電路板為例進行說明。
第2圖係顯示依據本發明一實施例中之影像辨識裝置的方塊圖。
影像辨識裝置18係可由一或多台個人電腦、伺服器、或其他類型之運算裝置所實現。影像辨識裝置18係包括一處理器181、一記憶體單元182及一儲存裝置183。處理器181例如可用中央處理器(central processing circuit,CPU)或一般用途處理器(general-purpose processor)所實現,但本發明實施例並不限於此。記憶體單元182係為一揮發性記憶體,例如可為靜態隨機存取記憶體(static random access memory,SRAM)或動態隨機存取記憶體(dynamic random access memory,DRAM)。
儲存裝置183係為一非揮發性記憶體,例如可為一硬碟機(hard disk drive)、一固態硬碟(solid-state disk)、一快閃記憶體(flash memory)、一唯讀記憶體(read-only memory)、可擦除可程式化唯讀記憶體(erasable programmable read-only memory,EPROM)、電子可擦除可程式化唯讀記憶體(electrically erasable programmable read-only memory,EEPROM)或電子熔絲(e-fuse),但本發明實施例並不限於此。
儲存裝置183係儲存一人工智慧影像檢測程式180用以對來自影像檢測裝置16或自動光學檢測裝置14之物件影像或辨識出的檢測點影像進行對應的處理。舉例來說,人工智慧影像檢測程式180係包括一影像切割模組1801、一影像標記模組1802、一影像歸類模組1803、一影像生成模組1804、一模型訓練模組1805以及一模型評價模組1806。處理器181係將人工智慧影像檢測程式180從儲存裝置183讀取至記憶體單元182並執行,藉以控制並協調各模組1801~1806相應的功能。
影像切割模組1801係用以對來自自動光學檢測裝置14或影像檢測裝置16的AOI物件影像進行裁切以得到在待測物之各檢測點相應的檢測點影像。需注意的是,因為在第二實施例中,影像檢測裝置16係將辨識出有通過狀態或缺陷狀態的檢測點影像傳送至影像辨識裝置18,故上述檢測點影像不需再經過影像切割模組1801進行處理,故影像切割模組1801係適用於第一實施例之情況。
在一些實施例中,在影像檢測裝置16係將AOI物件影像傳送至影像辨識裝置18後,影像切割模組1801係先載入AOI物件影像,並且透過影像切割模組1801之使用者介面設定基準點、標記範圍、搜索範圍、以及檢測點之範圍及數量,其中每組不同的設定可儲存為相應的樣板(template)。因為不同AOI物件影像之間可能會有像素平移的情況,故影像切割模組1801需要在各個標記範圍之外設定一較大的搜索範圍,在各個標記範圍內可以設定不同的檢測點之相對位置。此外,標記範圍可視為一定位點或定位範圍。當同一個待測物20之AOI物件影像輸入至影像切割模組1801時,可在目前使用的樣板之預定搜索範圍尋找定位點(即標記範圍),並依據各個檢測點與標記範圍之相對位置從AOI物件影像切割出相應於各個檢測點之檢測點影像,其中各檢測點影像之檔案名稱可包含其待測物名稱、時間、位置、編號等等。
影像標記模組1802係用以從影像切割模組1801或影像檢測裝置16取得各檢測點相應的檢測點影像,其中上述檢測點影像尚未進行標記或分類。舉例來說,影像標記模組1802係可批次載入各檢測點影像,例如8張檢測點影像(非限定)為一批次。在一些實施例中,作業人員可針對每個批次中之各檢測點影像進行標記,影像標記模組1802產生一使用者介面顯示各檢測點影像,並獲取每個檢測點影像對應的標記,其中上述標記可包括通過狀態(pass)、以及缺陷狀態(例如NG1、NG2、NG3、…、NGN等等)。在另一些實施例中,影像標記模組1802可包含影像辨識之功能,其係用以對各檢測點影像進行影像辨識以判斷出各檢測點影像之狀態,例如為通過或是缺陷狀態。以印刷電路板(PCB)為例,各檢測點之缺陷狀態可包括:缺件(missing component)、偏斜(skew)、墓碑(tombstone)、錯件(wrong component)、多件(foreign component)、翻件(flipped component)、極性反(wrong polarity)、腳翹(lifted lead)、腳變形(lead defective)、錫橋(solder bridge)、少錫(insufficient solder)、短路(short circuit)、假焊(空焊)、冷焊等等,但本發明實施例並不限於此。
因此,在經過影像標記模組1802對各檢測點影像進行標記後,可得到不同群組的檢測點影像,例如通過(pass)、以及各缺陷狀態NG1、NG2、NG3、…、NGN等等均可視為不同群組,且影像標記模組1802係將不同群組之檢測點影像儲存至不同的子目錄下。
影像歸類模組1803係用以讓作業人員對影像標記模組1802標記後之各群組中的檢測點影像進行歸類(classification),影像歸類模組1803例如可將內容或屬性之相似度高的多張檢測點影像分類在同一類別。於另一實施例中,影像歸類模組1803設定相似度閾值,並產生另一使用者介面顯示各群組中的檢測點影像。舉例來說,影像歸類模組1803可設定一相似度閾值,影像歸類模組1803計算各群組中各檢測點影像對應至少其中一類別的相似度,並透過使用者介面顯示在各群組中相似度高於相似度閾值的檢測點影像,詳細來說,使用者可預先於通過(pass)的群組中將至少一張檢測點影像分類為對應類別,影像歸類模組1803分類各群組中的檢測點影像時,計算預先分類的檢測點影像與各群組中尚未分類的檢測點影像之間的相似度,篩選出高於相似度閾值的檢測點影像後,顯示於使用者介面,並進行歸類。舉例來說,電阻和電阻之間係具有較高的相似度,但電阻與電容之間則具有較低的相似度。因應於各群組中之各檢測點影像的相似度高於相似度閾值,影像歸類模組1803係將在各群組中相似度高於相似度閾值的各檢測點影像分類為同一類別。經由上述處理後,可獲取每一檢測點影像對應的類別。若影像標記模組1802標記後之複數個群組可分為通過(PASS)、缺陷1(NG1)、缺陷2(NG2)及缺陷3(NG3)共四個群組,影像歸類模組1803可將上述四個群組中之各檢測點影像進一步歸類為複數個類別(type),例如依據不同元件的相似度做為歸類標準,並將相同種類或類似的元件分類至同一類別。舉例來說,影像歸類模組1803將PASS群組中之電阻元件、電容元件及其他元件的檢測點影像分別歸類至類別1(Type 1)、類別2(Type 2)及類別3(Type 3)。類似地,影像歸類模組1803亦可將NG1群組、NG2群組及NG3群組中之電阻元件、電容元件及其他元件的檢測點影像分別歸類至類別1(Type 1)、類別2(Type 2)及類別3(Type 3)。
當上述影像歸類操作完成後,影像歸類模組1803可得到群組-類別的結構化資料(例如第一結構化資料),且各群組的各類別均包括對應的檢測點編號,例如PASS-Type1群組類別包括檢測點1、3、5,PASS-Type2群組類別包括檢測點2,PASS-Type3群組類別包括檢測點4、6等等。此外,在NG1群組、NG2群組及NG3群組亦可用類似的方式將電阻元件、電容元件及其他元件的檢測點影像分別歸類至類別1(Type 1)、類別2(Type 2)及類別3(Type 3)。
歸類完成之結構化資料(例如第一結構化資料)如第3圖所示,影像歸類模組1803並可將歸類完成之結構化資料的相關資訊(例如包括檢測點影像之編號)及相應的檢測點影像輸出為一歸類檔,並將歸類檔寫入至儲存裝置183,例如各群組為主目錄,在各群組中的各類別為次目錄,各次目錄包括了歸類完成後的檢測點影像及其編號。此外,影像歸類模組1803所產生的歸類檔可供影像辨識裝置18進行後續使用。使用者例如可透過影像歸類模組1803之使用者介面以讀取先前所儲存的歸類檔,故影像歸類模組1803可利用讀取的歸類檔之結構化資料的相關資訊以分類由影像切割模組1801所產生的檢測點影像或由影像檢測裝置16所接收的檢測點影像。
需注意的是,在上述實施例中,不一定每種缺陷狀態均會包含全部的類別。舉例來說,若NG1群組表示在印刷電路板上的元件為極性反,且NG1-Type1群組類別表示電容焊反,但是電阻並沒有極性反的問題,所以NG1群組裡面並不包含Type2類別,如第3圖所示。
影像生成模組1804係用以對影像歸類模組1803所產生的一或多個群組類別進行影像生成,以解決某些群組類別之檢測點影像之樣本數不平均的問題。對於待測物20之各檢測點影像經由上述流程所產生的群組類別之歸類結果來說,在各群組類別中的檢測點影像之數量並不一定為平均。
舉例來說,對於模型訓練模組1805中之人工智慧模型而言,其在訓練階段時需要大量資料及樣本數。若模型訓練模組1805直接依據影像歸類模組1803所產生群組類別之歸類結果(即第一結構化資料)對人工智慧模型進行訓練,則可能造成人工智慧模型的辨識率不佳、出現誤判或信心度(confidence)不足的情況。
因此,影像生成模組1804可針對影像歸類模組1803所產生的一或多個群組類別進行影像生成,使得各個群組類別中之檢測點影像的數量平均。影像生成模組1804例如可讓使用者預先設定影像生成之各種影像參數的範圍,其中上述影像參數可包括但不限於檢測點影像之紅色/綠色/藍色像素之亮度、對比及伽瑪(gamma)值、旋轉角度、X方向/Y方向之平移像素值、銳利化、模糊度、縮放比率等等。在一實施例中,旋轉角度之範圍可設定在-10度至+10度,像素X平移之範圍可設定在-10像素至+10像素,像素Y平移之範圍可設定在-10像素至+10像素。其他未更動的影像參數則可使用影像生成模組1804之預設值。
舉例來說,影像生成模組1804可讀取影像歸類模組1803所產生的一或多個群組-類別結構化資料(例如第一結構化資料),並統計在各群組類別中之檢測點影像的數量。為了讓模型訓練模組1805中之人工智慧模型可達到較佳的訓練效果及模型評價,在各個群組類別中之影像數量愈多且平均為佳。使用者例如可透過影像生成模組1804產生的使用者介面預先設定要將所選擇的群組類別之檢測點影像之數量增加X張或是增加至Y張,使得在同一群組中的不同類別的檢測點影像之數量平均,並產生第二結構化資料。
詳細而言,影像歸類模組1803所產生的一或多個群組-類別結構化資料(第一結構化資料)之各群組類別的檢測點影像例如可稱為原始檢測點影像,且經由影像生成模組1804套用上述各影像參數之範圍隨機生成的檢測點影像則稱為模擬檢測點影像。舉例來說,若PASS群組中之Type1、Type2及Type3原本分別有500、250、1000張原始檢測點影像,且影像生成模組1804設定之目標影像數量為1000張(X=1000,即增加至1000張),經過影像生成模組1804對PASS群組中之Type1、Type2及Type3類別進行處理後,在PASS群組中之Type1、Type2及Type3類別中之影像數量均改變為1000張,其中在PASS-Type1群組類別係包含500張原始檢測點影像及500張模擬檢測點影像,在PASS-Type2群組類別係包含250張原始檢測點影像及750張模擬檢測點影像,在PASS-Type3群組類別係包含1000張原始檢測點影像及0張模擬檢測點影像。意即,經過影像生成模組1804處理之後,在PASS群組中之各個類別的影像數量均會平衡。此時,PASS群組中會具有3000張檢測點影像。因此,若在複數個群組中的第一群組(例如PASS群組)的檢測點影像之數量及模擬檢測點影像之數量的總和等於一第一數量(例如3000張),則在該等群組中的其他各群組(例如NG1~NG3群組)中的檢測點影像之數量及模擬檢測點影像之數量的總和同樣等於第一數量。
類似地,影像生成模組1804亦對NG1、NG2及NG3群組進行相應的影像生成處理,意即在經過影像生成模組1804處理之後,在NG1、NG2及NG3群組均會具有3000張檢測點影像。若NG1群組僅包含Type1及Type3類別,則NG1-Type1及NG1-Type3群組類別均包含1500張檢測點影像。類似地,NG3群組僅包含Type1及Type2類別,則NG3-Type1及NG3-Type2群組類別均包含1500張檢測點影像。此外,因為NG2群組包含Type1~Type3類別,所以在經過影像生成模組1804處理之後,NG2群組中之各個類別Type1~Type3均會包含1000張檢測點影像。在一些實施例中,影像生成模組1804例如可將各個群組類別中經由影像生成的模擬檢測點影像另存於其他子資料夾以與原始檢測點影像區別。換言之,在每一群組中之各類別的該等檢測點影像之數量及該等模擬檢測點影像之數量的總和等於第一數量(例如3000張)除以每一群組之該等類別的數量(例如NG1群組包括2個類別,NG2群組包括3個類別)。
模型產生程式1807係包括模型訓練模組1805及模型評價模組1806。模型訓練模組1805係用以讓一人工智慧模型依據一訓練集資料以進行模型訓練。模型評價模組1806係用以評價由模型訓練模組1805所訓練完成的人工智慧模型對第二結構化資料中之測試集資料的效能表現,意即可將測試集資料輸入至已訓練完成的人工智慧模型以得到人工智慧模型的模型評價。
第4A圖為依據本發明一實施例中之模型產生程式的使用者介面之示意圖。第4B及4C圖為依據本發明第4A圖之實施例中的訓練損失曲線及訓練準確率曲線的示意圖。第5圖為依據本發明一實施例中之模型訓練模組之操作過程的流程圖。
請同時參考第2圖、第4A圖及第5圖。模型訓練模組1805係採用遷移學習(transfer learning)技術以建立人工智慧模型,其中人工智慧模型例如可包括輸入層、遷移模型、分類層及輸出層,且使用者可透過模型產生程式1807之使用者介面400以設定輸入層、遷移模型、分類層及輸出層之相關參數。舉例來說,使用者可在模型產生程式1807之使用者介面400上的按鈕4001或4002選擇欲切換至模型訓練模組1805或是模型評價模組1806之使用者介面。當使用者選擇按鈕4001後,使用者介面400係切換至模型訓練模組1805之使用者介面,如第4A圖所示。在使用者介面400之上方工具列可選擇「專案」之選項以建立專案或開啟專案(步驟S502)。
舉例來說,人工智慧模型在訓練階段所使用的訓練集資料與測試集資料應不同,這樣人工智慧模型才較不易在判斷結果時產生過適(overfitting)的情況。在一實施例中,影像生成模組1804所產生的第二結構化資料可分為訓練集(training set)資料及測試集(testing set)資料,且分別存放於不同目錄。
方塊530例如可稱為模型訓練設定階段,且步驟S504、S506及S508可同時進行或是不同順序之組合依序執行。在方塊401中之按鈕4011及4012可分別設定訓練集資料及測試集資料之來源目錄路徑(例如可分別顯示於欄位4016及4017)藉以載入訓練集/測試集資料夾(步驟S504)。按鈕4013則可設定輸出模型資料夾之路徑,其可顯示於欄位4018,欄位4019則可填入模型檔名前頭(prefix)。
在另一實施例中,影像生成模組1804所產生的第二結構化資料並不特別區分出訓練集資料及測試集資料,且模型訓練模組1805可選擇第二結構化資料之目錄,並且可依據預先設定的訓練集資料之分配比例將上述第二結構化資料中之各群組類別中的檢測點影像(包含原始檢測點影像及模擬檢測點影像)劃分為訓練集資料及測試集資料。舉例來說,模型訓練模組1805可指定資料集(例如第二結構化資料)的存放目錄,且模型訓練模組1805係依據已選取自動分配功能(對應於欄位4014)及分配比率(對應於欄位4015)以將上述資料集之中的檢測點影像自動隨機分類為訓練集資料及測試集資料。若訓練集資料之分配比例為0.3,則模型訓練模組1805係將第二結構化資料中之各群組類別中的30%數量的檢測點影像做為訓練集資料,其餘的70%數量的檢測點影像則做為測試集資料。
在方塊420、421及422中,可設定人工智慧模型之不同參數。舉例來說,方塊420可設定建立人工智慧模型之相關參數。模型訓練模組1805係包含多種遷移模型,例如MobileNet、ResNet、InceptionV3、InceptionResNetV2、NASNetMobile、NASLarge、Xception等數十種人工智慧模型。在步驟S506,進行模型設定。舉例來說,欄位4201可供選擇其中一種欲進行訓練的人工智慧模型,欄位4202及4203則可以填入在欄位4201所選擇之人工智慧模型之重新訓練層數以及分類網路結構的全連接層之層數。欄位4204更可勾選是否要開啟平坦化(flatten)的功能。此外,欄位4205旁之上下按鈕可調整人工智慧模型在每一全連接層中的神經元數量,且增加或減少的神經元數量係顯示於欄位4205。每一全連接層是否引進丟棄(dropout)之功能則為選擇性設定,並無強制要求設定。對於人工智慧模型之輸出層而言,模型訓練模組1805可依據輸入資料(例如:第二結構化資料)之資料結構以自動讀取輸入資料第一層的資料夾檔名作為分類標記,藉以自動建立輸出層。
在步驟S508,進行解析度設定。舉例來說,方塊421中的欄位4211及4212可分別設定訓練人工智慧模型在X軸及Y軸所使用的影像解析度。需注意的是,在欄位4201所選擇的人工智慧模型在進行訓練時均有相應於遷移模型(特徵網路)的影像解析度限制,且方塊4213可顯示不同的人工智慧模型之特徵網路所需的影像解析度的限制,如表1所示:
表1
特徵網路 | 影像解析度 |
InceptionV3 | >=75 |
InceptionResNetV2 | >=75 |
MobileNet | 128, 160, 192, 224 |
MobileNetV2 | 96, 128, 160, 192, 224 |
NASNetMobile | 224 |
NASLarge | 331 |
Xception | >=71 |
需注意的是,本發明實施例並不限定於表1中的特徵網路及相應的影像解析度。對於輸入層來說,使用者可依據實際欲處理的檢測點影像之尺寸以設定輸入層之輸入影像尺寸(需符合特徵網路之影像解析度的要求)。當實際的檢測點影像之尺寸與設定的輸入影像之尺寸不同時,模型訓練模組1805可對輸入的檢測點影像進行內插計算以將其縮放為所設定的輸入影像之尺寸。
當步驟S504、S506及S508均完成後,表示模型設計已完成(步驟S510)。接著,在步驟S512,進行模型參數設定。舉例來說,方塊422中之欄位4221可供選擇不同的優化器(optimizer),例如adam、rmsprop、sgd及nadam優化器以提供訓練人工智慧模型之優化策略。欄位4222係可設定人工智慧模型在訓練時所執行的回合數(epochs)。欄位4224旁之上下按鈕可調整人工智慧模型之學習率(learning rate),且增加或減少的學習率係顯示於欄位4224。欄位4223及4225係可分別設定人工智慧模型在訓練時及測試時所使用的批次尺寸(batch size)。
在步驟S514,儲存專案之設定檔。舉例來說,經過步驟S504至S512後,可利用按鈕413將人工智慧模型的相關選項及設定儲存至對應的設定檔案(setting file)以供後續使用。若已有先前儲存的設定檔案,使用者可經由按鈕412以讀取先前儲存的設定檔案或是經由按鈕411以讀取預設的設定檔案以供目前的使用者介面400進行操作。
在步驟S516,判斷資料夾內的資料是否正確。舉例來說,模型訓練模組1805可檢查在步驟S504中所設定的訓練集/測試集資料夾中之資料(例如檢測點影像)是否有損壞或是格式是否符合人工智慧模型之要求。若模型訓練模組1805偵測到訓練集/測試集資料夾中之資料均未損壞且格式均符合人工智慧模型之要求,則模型訓練模組1805係判斷資料夾內的資料正確,並執行步驟S518。若模型訓練模組1805偵測到訓練集/測試集資料夾中之資料有損壞或是格式不符合人工智慧模型之要求,則模型訓練模組1805係判斷資料夾內的資料不正確,回到步驟S504。
在步驟S518,建立輸出模型資料夾於相應的儲存位置。舉例來說,模型訓練模組1805可在欄位4018中所設定的路徑建立輸出模型資料夾以供儲存訓練後的人工智慧模型。
在步驟S520,訓練人工智慧模型。舉例來說,模型訓練模組1805可依據在方塊401中所設定的訓練集資料以及在方塊420-422中的設定對所選定的人工智慧模型進行訓練,例如經由按鈕414即可開始進行人工智慧模型的訓練階段。若要停止訓練階段,按下按鈕415即可停止。當訓練階段開始時,模型訓練模組1805可產生或在方塊440中顯示訓練損失(training loss)曲線,並且可產生或在方塊442中顯示訓練準確率(training accuracy)曲線,如第4B及4C圖所示。此外,在欄位433及434可分別顯示訓練階段當下的回合數及批次資訊,且欄位435及436可顯示在訓練階段當下的訓練準確率及測試準確率(test accuracy)。模型訓練模組1805例如可在每一個批次完成後即更新一次訓練準確率資訊,但在完成一個回合後才會計算並更新測試準確率資訊。因此,模型訓練模組1805可比對訓練準確率及測試準確率以判斷人工智慧模型是否發生過適(overfitting)的現象。
在步驟S522,完成人工智慧模型之訓練。當人工智慧模型訓練完成後,可按下按鈕416以儲存訓練完成的人工智慧模型。若不要保留訓練完成或中途停止訓練的人工智慧模型,則可按下按鈕417以丟棄本次人工智慧模型的訓練結果,並且不儲存人工智慧模型。
第4D圖為依據本發明一實施例中之模型產生程式的使用者介面之另一示意圖。第6圖為依據本發明一實施例中之模型評價模組之操作過程的流程圖。
請同時參考第1圖、第4D圖及第6圖。模型評價模組1806係用以評價由模型訓練模組1805所訓練完成的人工智慧模型對第二結構化資料中之測試集資料的效能表現,意即可將測試集資料輸入至已訓練完成的人工智慧模型以得到人工智慧模型的模型評價。此外,模型評價模組1806更可利用模型訓練模組1805所訓練完成的人工智慧模型對第二結構化資料中之訓練集資料進行資料清理。
方塊630可稱為模型評價設定階段,且步驟S602、S604及S606可同時進行或是不同順序之組合依序執行。舉例來說,透過按鈕451可載入由模型訓練模組1805所儲存的人工智慧模型(步驟S604)並且可載入相應於人工智慧模型的評價檔(步驟S602)。透過按鈕454可設定測試集資料之來源目錄路徑(例如可顯示於欄位466藉以載入測試集資料夾(步驟S606)。
在步驟S608,開始模型評價。舉例來說,按下按鈕453可開始對人工智慧模型進行評價。在人工智慧模型的評價階段時,模型評價模組1806係讀取測試集資料夾中的子目錄名稱,並計算各子資料夾中的檔案數量(步驟S610)。已進行辨識的檢測點影像數量及全部的檢測點影像之數量係分別顯示於欄位467及468。
在步驟S612,計算各類別的辨識率並進行回顧檢視。舉例來說,當在測試集資料中的每張檢測點影像輸入至人工智慧模型,人工智慧模型均會產生相應的辨識結果及信心度。接著,模型評價模組1806將測試集資料中的每張檢測點影像的辨識結果對照各檢測點影像已標示的類別,即可計算出人工智慧模型之模型評價,其中模型評價可用辨識率(正確率)表示,例如:辨識率= 正確辨識結果數量/測試集的檢測點影像數量。經由計算所得到的模型評價,可找出整體辨識率或信心度較差的群組類別。
舉例來說,當人工智慧模型的評價階段結束後,模型評價模組1806係將在測試集資料中之各類別的名稱及其檢測點影像數量與正確率顯示於方塊472,且方塊476及477係分別顯示正確圖表及錯誤圖表,欄位469及470則分別顯示未定義的檢測點影像之比例以及誤判率。其中正確圖表係表示在不同的信心度區間的辨識正確之檢測點影像數量,錯誤圖表係表示在不同的信心度區間的辨識錯誤之檢測點影像數量。
使用者可在方塊472中選擇其中一個類別以進一步檢視,例如選擇的類別(例如鋁質電容_90)係顯示於方塊473。方塊472及473之內容例如表2及表3所示:
表2
表3
類別名稱 | 數量 | 正確率 |
鋁質電容_0 | 150 | 97.33 |
鋁質電容_180 | 150 | 94.67 |
鋁質電容_270 | 150 | 92.67 |
鋁質電容_90 | 150 | 97.33 |
類別名稱 | 數量 | 正確率 |
鋁質電容_0 | 146 | 92.46 |
鋁質電容_180 | 142 | 97.18 |
鋁質電容_270 | 139 | 95.68 |
鋁質電容_90 | 146 | 95.89 |
在方塊472的表2中,在各類別的正確率之計算方式是以在測試集中各類別中的檢測點影像之標記數量做為分母,且人工智慧模型判斷出各類別之檢測點影像數量為分子。舉例來說,若在測試集中的特定類別(例如鋁質電容_180)具有150張檢測點影像及相應的正確標記,則分母為150。若人工智慧模型判斷為該特定類別之檢測點影像的數量為142,則分子為142,故在表2中,人工智慧模型在特定類別的正確率(例如第一正確率)=142/150=94.67%。在表2中之其他類別的正確率亦可用類似方式計算而得。
在方塊473的表3中,各類別的正確率之計算方式是以人工智慧模型之判斷出各類別之檢測點影像數量做為分母,且人工智慧模型之判斷結果與測試集之各類別中的檢測點影像之標記一致的數量(即正確辨識出的檢測點影像數量)為分子。舉例來說,若人工智慧模型判斷在測試集中有142張檢測點影像屬於特定類別(例如鋁質電容_180),則分母為142。若人工智慧模型正確判斷為該特定類別之檢測點影像的數量為138(表示有4張影像為其他類別被誤判此特定類別),則分子為138,故在表3中,人工智慧模型在特定類別的正確率(例如第二正確率)=138/142=97.18%。在表3中之其他類別的正確率亦可用類似方式計算而得。
因此,模型評價模組1806可由表2及表3中之各類別所相應的第一正確率及第二正確率可得知人工智慧模型對於各類別的檢測點影像之辨識能力,進而針對正確率較差的類別中之各檢測點影像進行檢視。
此外,使用者亦可在使用者介面400中手動檢視在測試集資料的各類別中的檢測點影像,其中目前檢視的檢測點影像及其影像資訊例如可分別顯示於方塊461及欄位478。當按下按鈕452時,模型評價模組1806係將目前檢視的檢測點影像輸入至人工智慧模型,並將其資料類別、辨識結果及信心度分別顯示於欄位463、464及465。若在欄位464的辨識結果為錯誤,則可將辨識結果的類別名稱顯示於欄位471,且使用者可手動修改為正確的類別名稱。詳細而言,模型評價模組1806可將在測試集資料中辨識錯誤的檢測點影像過濾出來,並且修正檢測點影像對應的類別。舉例來說,模型評價模組1806,將需要修正的檢測點影像從原本的類別資料夾,搬移至對應辨識結果的修正類別資料夾。
辨識結果及其對應的檢測點影像數量係分別顯示於在欄位474及475,其中辨識結果例如可為「判斷錯誤、高信心度」、「判斷正確、低信心度」、「判斷錯誤、低信心度」、「判斷正確、高信心度」等等。舉例來說,若模型評價模組1806將測試集資料中的每張檢測點影像的辨識結果經過測試集之各檢測點影像已標示的群組進行比對後,在測試集資料中有部分檢測點影像辨識結果是錯誤的,但具有很高的信心度,則可判斷這些辨識結果對應的檢測點影像可能有「標記錯誤」的情況。因此,模型評價模組1806可執行第一資料清理程序以過濾出這些可能標記錯誤的檢測點影像及辨識結果,並將這些檢測點影像從訓練集資料中刪除。
若模型評價模組1806將測試集中的每張檢測點影像的辨識結果經過測試集之各檢測點影像已標示的群組進行比對後,在測試集資料之中有部分檢測點影像辨識結果是正確的,但是信心度不高(例如低於一閾值,上述閾值可為但不限定於50%),表示在測試集資料中相應的檢測點影像可能有「多重標記」的情況,意即同一張檢測點影像可能被標記為不同的群組類別,所以會造成人工智慧模型之辨識結果的信心度偏低。因此,模型評價模組1806可執行第二資料清理程序以過濾出在測試集資料之中這些信心度偏低的檢測點影像,並將這些檢測點影像在訓練集資料之中對應的檢測點影像刪除。
在步驟S614,判斷是否修正檔案標記。舉例來說,當模型評價模組1806執行第一資料清理程序及第二資料清理程序並更新訓練集資料後,模型評價模組1806可再呼叫影像標示模組1802或影像歸類模組1803,藉以逐一檢查過濾出的檢測點影像並重新進行標示。若檢測點影像經由上述修正而改變了其群組標記或是類別,則模型評價模組1806(或影像標示模組1802、影像歸類模組1803)係將修正標記後的檢測點影像搬運至修正類別資料夾中(步驟S616)。
若有特定檢測點影像會造成人工智慧模型在不同群組類別的誤判,則此特定檢測點影像不再重新標示並放回訓練集資料之中,故模型評價模組1806或影像標示模組1802可刪除此特定檢測點影像。此外,人工智慧影像檢測程式180可再執行影像生成模組1804,進一步檢視辨識率及/或信心度較低的群組類別之檢測點影像的數量,再針對這些群組類別生成合適的模擬檢測點影像以更新第二結構化資料。因此,當第二結構化資料更新後,模型訓練模組1805即可從更新後的第二結構化資料分割出新的訓練集資料以對人工智慧模型重新進行訓練,藉以提昇人工智慧模型之辨識率及辨識結果的信心度。當人工智慧模型重新訓練後,可再執行第6圖之流程,且在步驟S602及S610可反應在虛線框中所標示的更新後的第二結構化資料,且在步驟S612可反應更新後之第二結構化資料之數據資訊(例如辨識率及辨識結果的信心度)。
第7圖為依據本發明一實施例之影像辨識方法的流程圖。請同時參考第2圖及第7圖。
在步驟S710,接收一結構化資料,其中該結構化資料包括一訓練集資料及一測試集資料,其中該結構化資料包括複數個群組,且各群組包括一或多個類別,且各類別包括複數張檢測點影像。舉例來說,在步驟S710中的結構化資料例如可為前述實施例中的由影像生成模組1804所產生的第二結構化資料。影像生成模組1804套用不同影像參數範圍隨機生成的檢測點影像則可稱為模擬檢測點影像,其中第一結構化資料經由影像生成模組1804處理之後,在第二結構化資料之同一群組中之不同類別的原始檢測點影像及模擬檢測點影像之總數量會相同,且第二結構化資料可做為人工智慧模型之輸入影像。
在步驟S720,依據該訓練集資料對一人工智慧模型進行訓練。舉例來說,人工智慧模型包括一輸入層、一遷移模型、一分類層、及一輸出層,且該模型訓練模組係定義該遷移模型之訓練過程的複數個策略參數,其中該等策略參數包括優化器種類、學習率、回合數(epoch)、批次尺寸(batch size)。
在步驟S730,將該測試集資料輸入至該人工智慧模型以得到在該人工智慧模型之一模型評價。舉例來說,在人工智慧模型的評價階段時,模型評價模組1806將在測試集中的每張檢測點影像輸入至人工智慧模型產生相應的辨識結果及信心度。模型評價模組1806將測試集資料中的每張檢測點影像的辨識結果對照各檢測點影像已標示的類別,即可得到人工智慧模型之模型評價(例如正確率= 正確辨識結果數量/測試集的檢測點影像數量)。
在步驟S740,判斷在結構化資料中整體辨識率或信心度較差的一或多個第一類別。經由步驟S730計算所得到的模型評價,可找出在結構化資料中整體辨識率或信心度較差(例如低於一信心度閾值)的一或多個群組類別(即第一類別)。此外,模型評價模組1806可再偵測在測試集資料中的影像辨識結果是錯誤的但具有很高的信心度的檢測點影像,判斷有標記錯誤的情況。模型評價模組1806可再偵測影像辨識結果是正確的但是信心度不高的檢測點影像,判斷有多重標記的情況。
在步驟S750,將對應於該一或多個第一類別中之該等檢測點影像刪除或修正以更新結構化資料。舉例來說,在步驟S750可執行前述實施例中的第一資料清理程序及第二資料清理程序以分別從結構化資料中刪除標記錯誤及多重標記的該等檢測點影像。在另一些實施例中,模型評價模組1806可搬移標記錯誤及多重標記的該等檢測點影像至一待修正類別資料夾以更新結構化資料。此外,人工智慧影像檢測程式180可再執行影像標示模組1802或影像歸類模組1803,藉以逐一檢查過濾出的檢測點影像並重新進行標示。人工智慧影像檢測程式180可再執行影像生成模組1804(或是可由模型評價模組1806呼叫影像生成模組1804)以進一步檢視辨識率及/或信心度較低的群組類別(例如一或多個第一類別)之檢測點影像的數量,再針對這些群組類別生成合適的模擬檢測點影像以更新結構化資料。因此,當結構化資料更新後,模型訓練模組1805即可從更新後的結構化資料分割出新的訓練集資料以對人工智慧模型重新進行訓練,藉以提昇人工智慧模型之辨識率及辨識結果的信心度。
綜上所述,本發明實施例係提供一種影像辨識裝置、影像辨識方法及其電腦程式產品,其可利用人工智慧模型自行判斷在結構化資料中的訓練集資料之各檢測點影像的狀態。此外,經由模型評價之過程,可適度地過濾出標記錯誤或多重標記的訓練集資料,並據以更新訓練集資料並且重新訓練人工智慧模型以增進人工智慧模型之辨識率及信心度。因此,可達到讓生產線之作業人員的工作負擔降低以及降低生產成本之功效。
本發明雖以較佳實施例揭露如上,然其並非用以限定本發明的範圍,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可做些許的更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
10:自動光學檢測系統
12:自動輸送裝置
14:自動光學檢測裝置
16:影像檢測裝置
18:影像辨識裝置
20:待測物
30:箭頭
122:機殼
124:驅動機構
126:控制器
128:檢測定位點
142:影像感測器
144:照明裝置
180:人工智慧影像檢測程式
181:處理器
182:記憶體單元
183:儲存裝置
1801:影像切割模組
1802:影像標記模組
1803:影像歸類模組
1804:影像生成模組
1805:模型訓練模組
1806:模型評價模組
1807:模型產生程式
400:使用者介面
401、420、421、422、440、442、530、630:方塊
4001~4002、4011~4013、411~417、431~432:按鈕
4014~4019、4201~4205、4221~4225、433~436:欄位
451~454:按鈕
461、472、473、476、477:方塊
463~471、474~475:欄位
S502~S522、S602~S616、S710~S750:步驟
第1圖係顯示依據本發明一實施例中之自動光學檢測系統的示意圖。
第2圖係顯示依據本發明一實施例中之影像辨識裝置的方塊圖。
第3圖係顯示依據本發明一實施例中之第一結構化資料的示意圖。
第4A圖為依據本發明一實施例中之模型產生程式的使用者介面之示意圖。
第4B及4C圖為依據本發明第4A圖之實施例中的訓練損失曲線及訓練準確率曲線的示意圖。
第4D圖為依據本發明一實施例中之模型產生程式的使用者介面之另一示意圖。
第5圖為依據本發明一實施例中之模型訓練模組之操作過程的流程圖。
第6圖為依據本發明一實施例中之模型評價模組之操作過程的流程圖。
第7圖為依據本發明一實施例之影像辨識方法的流程圖。
18:影像辨識裝置
180:人工智慧影像檢測程式
181:處理器
182:記憶體單元
183:儲存裝置
1801:影像切割模組
1802:影像標記模組
1803:影像歸類模組
1804:影像生成模組
1805:模型訓練模組
1806:模型評價模組
1807:模型產生程式
Claims (17)
- 一種電腦程式產品,用以被一機器載入且執行一影像辨識方法,該電腦程式產品包括: 一模型訓練模組,用以接收一結構化資料,其中該結構化資料包括一訓練集資料及一測試集資料,該模型訓練模組更依據該訓練集資料對一人工智慧模型進行訓練,其中該結構化資料包括複數個群組,且各群組包括一或多個類別,且各類別包括複數張檢測點影像;以及 一模型評價模組,用以將該測試集資料輸入至該人工智慧模型以得到該人工智慧模型的一模型評價; 其中該模型評價模組更判斷在該結構化資料中整體辨識率或信心度較差的一或多個第一類別,並將對應於該一或多個第一類別中之該等檢測點影像刪除或修正以更新該結構化資料。
- 如請求項1之電腦程式產品,其中在該結構化資料中之各群組的該等檢測點影像均具有第一數量,且各群組中之各類別的該等檢測點影像之第二數量為該第一數量除以各群組中之該等類別的數量。
- 如請求項1之電腦程式產品,其中該模型訓練模組係依據一預定比例將該第二結構化資料劃分為該訓練集資料及該測試集資料。
- 如請求項1之電腦程式產品,其中該人工智慧模型包括一輸入層、一遷移模型、一分類層、及一輸出層,且該模型訓練模組係定義該遷移模型之訓練過程的複數個策略參數,其中該等策略參數包括優化器種類、學習率、回合數、批次尺寸。
- 如請求項4之電腦程式產品,其中該模型訓練模組更定義該人工智慧模型所使用的影像解析度,其中該影像解析度係符合該遷移模型之影像解析度限制。
- 如請求項5之電腦程式產品,其中當該結構化資料中之該等檢測點影像之尺寸與該人工智慧模型所使用的該影像解析度不同時,該模型訓練模組係對該結構化資料中之該等檢測點影像進行內插計算以將該等檢測點影像縮放為該人工智慧模型所使用的該影像解析度。
- 如請求項1之電腦程式產品,其中該模型訓練模組在訓練該人工智慧模型時係產生在訓練階段當下的訓練準確率及測試準確率,並比對該訓練準確率及測試準確率以判斷該人工智慧模型是否發生過適(overfitting)的現象。
- 如請求項1之電腦程式產品,其中當該人工智慧模型的訓練階段開始時,該模型訓練模組係顯示該人工智慧模型之一訓練損失曲線及一訓練準確率曲線。
- 如請求項1之電腦程式產品,其中該模型評價模組係將該人工智慧模型所判斷出在各類別中之該等檢測點影像的數量除以在該測試集資料中之各類別的該等檢測點影像之標記數量以得到各類別之第一正確率,並且將該人工智慧模型之判斷結果與該測試集資料之各類別中的檢測點影像之標記一致的數量除以該人工智慧模型所判斷出在各類別中之該等檢測點影像的數量以得到各類別之第二正確率; 其中該模型評價模組係依據在該測試集資料中之各類別相應的該第一正確率及該第二正確率以判斷該人工智慧模型對於該測試集資料中之各類別的該等檢測點影像之辨識能力。
- 如請求項1之電腦程式產品,其中該模型評價模組更過濾出在該結構化資料中標示錯誤及多重標記的該等檢測點影像。
- 如請求項10之電腦程式產品,其中該模型評價模組更執行一第一資料清理程序以將在該結構化資料中標記錯誤的該等檢測點影像從該結構化資料刪除以更新該結構化資料; 其中該模型評價模組更執行一第二資料清理程序以將有多重標記的該等檢測點影像從該結構化資料刪除以更新該結構化資料。
- 如請求項10之電腦程式產品,其中該模型評價模組更搬移標記錯誤及多重標記的該等檢測點影像至一待修正類別資料夾以更新該結構化資料。
- 如請求項12之電腦程式產品,其中當該模型評價模組已執行該第一資料清理程序及該第二資料清理程序並更新該訓練集資料後,該模型評價模組係呼叫該影像標示模組或該影像歸類模組以逐一檢查過濾出的該等檢測點影像並重新進行標示; 其中當過濾出的該等檢測點影像之群組標記或類別經過重新標示後而改變,該模型評價模組係將修正標記後的該等檢測點影像搬運至該修正類別資料夾中。
- 如請求項1之電腦程式產品,其中該電腦程式產品更包括一影像生成模組,且該模型評價模組係呼叫該影像生成模組以進一步檢視在該一或多個第一類別中的各檢測點影像,並針對該一或多個第一類別生成複數張模擬檢測點影像以更新該結構化資料。
- 如請求項14之電腦程式產品,其中該模型訓練模組更依據更新後的該結構化資料以分割出新的該訓練集資料以重新訓練該人工智慧模型。
- 一種影像辨識方法,包括: 接收一結構化資料,其中該結構化資料包括一訓練集資料及一測試集資料,其中該結構化資料包括複數個群組,且各群組包括一或多個類別,且各類別包括複數張檢測點影像; 依據該訓練集資料對一人工智慧模型進行訓練; 將該測試集資料輸入至該人工智慧模型以得到該人工智慧模型的一模型評價;以及 判斷在該結構化資料中整體辨識率或信心度較差的一或多個第一類別,並將對應於該一或多個第一類別中之該等檢測點影像刪除或修正以更新該結構化資料。
- 一種影像辨識裝置,包括: 一非揮發性記憶體,用以儲存一模型產生程式;以及 一處理器,用以執行該模型產生程式以進行下列步驟: 接收一結構化資料,其中該結構化資料包括一訓練集資料及一測試集資料,其中該結構化資料包括複數個群組,且各群組包括一或多個類別,且各類別包括複數張檢測點影像; 依據該訓練集資料對一人工智慧模型進行訓練; 將該測試集資料輸入至該人工智慧模型以得到該人工智慧模型的一模型評價;以及 判斷在該結構化資料中整體辨識率或信心度較差的一或多個第一類別,並將對應於該一或多個第一類別中之該等檢測點影像刪除或修正以更新該結構化資料。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010349232.3A CN112362679B (zh) | 2019-07-23 | 2020-04-28 | 影像辨识装置、影像辨识方法及其计算机程序产品 |
US16/885,614 US11521015B2 (en) | 2019-07-23 | 2020-05-28 | Image-recognition apparatus, image-recognition method, and non-transitory computer-readable storage medium thereof |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962877375P | 2019-07-23 | 2019-07-23 | |
US62/877,375 | 2019-07-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202104879A true TW202104879A (zh) | 2021-02-01 |
TWI761806B TWI761806B (zh) | 2022-04-21 |
Family
ID=75745121
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109112603A TWI749524B (zh) | 2019-07-23 | 2020-04-15 | 影像辨識裝置、影像辨識方法及其電腦程式產品 |
TW109112602A TWI761806B (zh) | 2019-07-23 | 2020-04-15 | 影像辨識裝置、影像辨識方法及其電腦程式產品 |
TW109112604A TWI833010B (zh) | 2019-07-23 | 2020-04-15 | 影像辨識裝置、影像辨識方法及其電腦程式產品 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109112603A TWI749524B (zh) | 2019-07-23 | 2020-04-15 | 影像辨識裝置、影像辨識方法及其電腦程式產品 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109112604A TWI833010B (zh) | 2019-07-23 | 2020-04-15 | 影像辨識裝置、影像辨識方法及其電腦程式產品 |
Country Status (1)
Country | Link |
---|---|
TW (3) | TWI749524B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI812946B (zh) * | 2021-05-04 | 2023-08-21 | 世界先進積體電路股份有限公司 | 影像辨識模型系統及維護方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114002225B (zh) * | 2021-10-19 | 2023-05-12 | 业成科技(成都)有限公司 | 光学检测系统与方法 |
TWI824473B (zh) * | 2022-04-08 | 2023-12-01 | 鴻海精密工業股份有限公司 | 用於視覺檢測的資料刪除方法、裝置、設備及存儲介質 |
CN115035101B (zh) * | 2022-07-22 | 2022-11-15 | 苏州康代智能科技股份有限公司 | 半导体芯片载板的缺陷验证方法、检测方法及aoi设备 |
CN116342923A (zh) * | 2022-12-16 | 2023-06-27 | 环旭电子股份有限公司 | 影像识别深度学习模型的训练方法 |
TWI843639B (zh) * | 2023-08-09 | 2024-05-21 | 美商應視達科技股份有限公司 | 影像模組訓練方法與系統 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104677914B (zh) * | 2015-03-10 | 2017-03-08 | 华中科技大学 | 一种芯片连晶缺陷识别方法 |
CN106530284A (zh) * | 2016-10-21 | 2017-03-22 | 广州视源电子科技股份有限公司 | 基于图像识别的焊点类型检测和装置 |
US11836611B2 (en) * | 2017-07-25 | 2023-12-05 | University Of Massachusetts | Method for meta-level continual learning |
US10713534B2 (en) * | 2017-09-01 | 2020-07-14 | Kla-Tencor Corp. | Training a learning based defect classifier |
TWI664586B (zh) * | 2018-03-22 | 2019-07-01 | National Taiwan Normal University | 透過瑕疵複數光場之透明基板瑕疵檢測方法 |
CN109190643A (zh) * | 2018-09-14 | 2019-01-11 | 华东交通大学 | 基于卷积神经网络中药识别方法及电子设备 |
-
2020
- 2020-04-15 TW TW109112603A patent/TWI749524B/zh active
- 2020-04-15 TW TW109112602A patent/TWI761806B/zh active
- 2020-04-15 TW TW109112604A patent/TWI833010B/zh active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI812946B (zh) * | 2021-05-04 | 2023-08-21 | 世界先進積體電路股份有限公司 | 影像辨識模型系統及維護方法 |
Also Published As
Publication number | Publication date |
---|---|
TWI833010B (zh) | 2024-02-21 |
TW202113345A (zh) | 2021-04-01 |
TWI761806B (zh) | 2022-04-21 |
TW202105317A (zh) | 2021-02-01 |
TWI749524B (zh) | 2021-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI761806B (zh) | 影像辨識裝置、影像辨識方法及其電腦程式產品 | |
CN112362679B (zh) | 影像辨识装置、影像辨识方法及其计算机程序产品 | |
EP3502966B1 (en) | Data generation apparatus, data generation method, and data generation program | |
US10885618B2 (en) | Inspection apparatus, data generation apparatus, data generation method, and data generation program | |
US11423531B2 (en) | Image-recognition apparatus, image-recognition method, and non-transitory computer-readable storage medium thereof | |
US11132786B2 (en) | Board defect filtering method based on defect list and circuit layout image and device thereof and computer-readable recording medium | |
KR102171491B1 (ko) | 딥러닝을 이용한 양품 선별 방법 | |
TW202001795A (zh) | 瑕疵分類標記系統及瑕疵分類標記方法 | |
CN110223269A (zh) | 一种fpc缺陷检测方法和装置 | |
Wu et al. | Automated visual inspection of surface mounted chip components | |
JP7508206B2 (ja) | 画像処理方法、エッジモデル作成方法、ロボットシステム、および物品の製造方法 | |
CN113591965A (zh) | 一种aoi检测图像处理方法、装置、存储介质及计算机设备 | |
US11455490B2 (en) | Image-recognition apparatus, image-recognition method, and non-transitory computer-readable storage medium thereof | |
Ozturk et al. | Detection of PCB soldering defects using template based image processing method | |
US7593571B2 (en) | Component edge detecting method, computer-readable recording medium and component inspection apparatus | |
TW202016943A (zh) | 基於神經網路的分類裝置及分類方法 | |
TWI722861B (zh) | 分類方法及分類系統 | |
JP4814116B2 (ja) | 実装基板外観検査方法 | |
TWI785579B (zh) | 元件辨識模型之自動模型重建方法及系統 | |
KR20230065558A (ko) | 딥러닝 기반의 mlcc 적층 얼라인먼트 검사 시스템 및 방법 | |
Kavitha et al. | Component identification and defect detection of printed circuit board using artificial intelligence | |
TW201714144A (zh) | 電子元件外觀影像檢測方法及其電腦可讀媒體 | |
TW202018600A (zh) | 基於神經網路的分類裝置及分類方法 | |
TWI758134B (zh) | 依據元件識別資料使用圖形特徵二次檢測之系統及方法 | |
Cortés-Perez et al. | Quality control and inspection reliability of the PCB manufacturing process through convolutional networks |