本發(fā)明實(shí)施例涉及自動光學(xué)檢測技術(shù)領(lǐng)域,尤其涉及一種基于圖像識別的焊點(diǎn)類型檢測和裝置。
背景技術(shù):
自動光學(xué)檢測(Automatic Optic Inspection,AOI)是工業(yè)制作過程的必要環(huán)節(jié),其檢測原理是利用光學(xué)方式取得成品的表面狀態(tài),以影像處理來檢測異物或表面瑕疵。而電路板卡焊錫面焊點(diǎn)的焊錫缺陷檢測是電路板卡缺陷檢測領(lǐng)域中一項(xiàng)重要的應(yīng)用。機(jī)器通過攝像頭拍攝電路板卡圖像,其中,電路板卡圖像由三色光進(jìn)行照明,獲得焊錫的立體信息。然后提取焊點(diǎn)的局部圖像,并通過圖像處理技術(shù),判斷焊點(diǎn)是否有連錫、少錫、多錫等缺陷,最后將疑似缺陷的焊點(diǎn)顯示或標(biāo)記出來,方便查看與檢修。
在傳統(tǒng)的AOI系統(tǒng)中,焊錫缺陷檢測方法主要是通過對采集到的焊點(diǎn)圖像顏色信息進(jìn)行特征提取,例如,提取焊點(diǎn)圖像中紅色、藍(lán)色、綠色顏色的占比,然后通過閾值判別或BP神經(jīng)網(wǎng)絡(luò)進(jìn)行焊點(diǎn)焊錫缺陷的檢測。但是,在實(shí)際應(yīng)用過程中,該方法存在制版麻煩、精準(zhǔn)度低及穩(wěn)定性差等問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種基于圖像識別的焊點(diǎn)類型檢測方法和裝置,以快速準(zhǔn)確地檢測焊錫缺陷。
第一方面,本發(fā)明實(shí)施例提供了一種基于圖像識別的焊點(diǎn)類型檢測方法,該方法包括:
基于獲取到的至少兩種類型的焊點(diǎn)的焊錫圖像建立訓(xùn)練樣本集;
基于訓(xùn)練樣本集中的訓(xùn)練樣本對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練;
將待識別的焊錫圖像輸入到訓(xùn)練完成的所述卷積神經(jīng)網(wǎng)絡(luò)中,對焊錫圖像中的焊點(diǎn)的類型進(jìn)行識別。
第二方面,本發(fā)明實(shí)施例還提供了一種基于圖像識別的焊點(diǎn)類型檢測裝置,該裝置包括:
訓(xùn)練樣本集建立模塊,用于基于獲取到的至少兩種類型的焊點(diǎn)的焊錫圖像建立訓(xùn)練樣本集;
卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練模塊,用于基于訓(xùn)練樣本集中的訓(xùn)練樣本對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練;
焊點(diǎn)類型識別模塊,用于將待識別的焊錫圖像輸入到訓(xùn)練完成的所述卷積神經(jīng)網(wǎng)絡(luò)中,對焊錫圖像中的焊點(diǎn)的類型進(jìn)行識別。
本發(fā)明實(shí)施例所提供的技術(shù)方案,首先構(gòu)建了一個(gè)卷積神經(jīng)網(wǎng)絡(luò),該卷積神經(jīng)網(wǎng)絡(luò)輸入的為焊錫圖像,輸出的為焊點(diǎn)的類型,選取至少兩種類型的焊點(diǎn)的焊錫圖像對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,進(jìn)而將待識別的焊錫圖像輸入至訓(xùn)練完成的卷積神經(jīng)網(wǎng)絡(luò),識別焊點(diǎn)的類型,解決了傳統(tǒng)焊錫缺陷檢測方法所存在的制版麻煩、精準(zhǔn)度低及穩(wěn)定性差等問題,通過將焊錫圖像輸入至訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)模型中,即可簡單快速地對焊點(diǎn)類型進(jìn)行識別,以實(shí)現(xiàn)焊錫缺陷地精準(zhǔn)檢測。
附圖說明
圖1A為本發(fā)明實(shí)施例一所提供的一種基于圖像識別的焊點(diǎn)類型檢測方法的流程圖;
圖1B為本發(fā)明實(shí)施例一所提供的一種焊點(diǎn)類型為正常的焊錫圖像示意圖;
圖1C為本發(fā)明實(shí)施例一所提供的一種焊點(diǎn)類型為少錫的焊錫圖像示意圖;
圖1D為本發(fā)明實(shí)施例一所提供的一種焊點(diǎn)類型為連錫的焊錫圖像示意圖;
圖1E為本發(fā)明實(shí)施例一所提供的一種焊點(diǎn)類型為多錫的焊錫圖像示意圖;
圖2A為本發(fā)明實(shí)施例二所提供的一種基于圖像識別的焊點(diǎn)類型檢測方法的流程圖;
圖2B為本發(fā)明實(shí)施例二的基于圖像識別的焊點(diǎn)類型檢測方法訓(xùn)練階段的流程示意圖;
圖2C為本發(fā)明實(shí)施例二所適用的一種卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)示意圖;
圖2D為本發(fā)明實(shí)施例二的基于圖像識別的焊點(diǎn)類型檢測方法實(shí)施階段的流程示意圖;
圖3為本發(fā)明實(shí)施例三所提供的一種基于圖像識別的焊點(diǎn)類型檢測裝置的結(jié)構(gòu)框圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖對本發(fā)明具體實(shí)施例作進(jìn)一步的詳細(xì)描述??梢岳斫獾氖?,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。
另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部 分而非全部內(nèi)容。在更加詳細(xì)地討論示例性實(shí)施例之前應(yīng)當(dāng)提到的是,一些示例性實(shí)施例被描述成作為流程圖描繪的處理或方法。雖然流程圖將各項(xiàng)操作(或步驟)描述成順序的處理,但是其中的許多操作可以被并行地、并發(fā)地或者同時(shí)實(shí)施。此外,各項(xiàng)操作的順序可以被重新安排。當(dāng)其操作完成時(shí)所述處理可以被終止,但是還可以具有未包括在附圖中的附加步驟。所述處理可以對應(yīng)于方法、函數(shù)、規(guī)程、子例程、子程序等等。
實(shí)施例一
圖1A為本發(fā)明實(shí)施例一提供的一種基于圖像識別的焊點(diǎn)類型檢測方法的流程圖,本實(shí)施例可適用于對焊錫缺陷的檢測,該方法可以由基于圖像識別的焊點(diǎn)類型檢測裝置來執(zhí)行,具體包括如下步驟:
S110、基于獲取到的至少兩種類型的焊點(diǎn)的焊錫圖像建立訓(xùn)練樣本集。
其中,至少兩種類型的焊點(diǎn)可包括兩種類型的焊點(diǎn),例如可將焊點(diǎn)分為正常和不正常兩種類型;當(dāng)然也可包括兩種以上的焊點(diǎn)的類型,如圖1B-1E所示,可將焊點(diǎn)的類型進(jìn)行更加細(xì)致地劃分,如可分為正常(圖1B)、少錫(圖1C)、連錫(圖1D)和/或多錫(圖1E)等類型??梢岳斫獾氖牵5暮更c(diǎn)類型可以是符合要求的類型,例如,焊點(diǎn)的形狀或者焊點(diǎn)焊錫用量在預(yù)設(shè)的誤差范圍內(nèi)。
在基于獲取到的至少兩種類型的焊點(diǎn)的焊錫圖像建立訓(xùn)練樣本集之前,還包括:獲取至少兩種類型的焊點(diǎn)的焊錫圖像。具體地,通過人工標(biāo)注的方法得到焊錫圖像的焊點(diǎn)的類型信息;進(jìn)而基于所述焊點(diǎn)的類型信息獲取標(biāo)注過的獲取到的至少兩種類型的焊點(diǎn)的焊錫圖像。其中,可以根據(jù)焊點(diǎn)的類型信息確定焊錫是否存在缺陷,進(jìn)一步地,還可以確定焊錫缺陷的類別信息。
一般地,為了使得焊點(diǎn)類型的檢測準(zhǔn)確性更高,需要大量的訓(xùn)練樣本。在本實(shí)施例中,訓(xùn)練樣本集中的焊錫圖像可以是獲取到的大量的原始的焊錫圖像;也可以是將原始的焊錫圖像進(jìn)行數(shù)據(jù)擴(kuò)展后生成新的焊錫圖像,進(jìn)而將原始的焊錫圖像和擴(kuò)展后的焊錫圖像均作為訓(xùn)練樣本集中的訓(xùn)練樣本,進(jìn)一步增加樣本的數(shù)量。
S120、基于訓(xùn)練樣本集中的訓(xùn)練樣本對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。
卷積神經(jīng)網(wǎng)絡(luò)是人工神經(jīng)網(wǎng)絡(luò)中的一種,可用于圖像識別領(lǐng)域。卷積神經(jīng)網(wǎng)絡(luò)以輸入、輸出的重構(gòu)誤差為能量函數(shù),通過前向、后向傳播過程優(yōu)化調(diào)整網(wǎng)絡(luò)的聯(lián)結(jié)權(quán)值,使能量函數(shù)達(dá)到最小。其中,前向傳播過程采用權(quán)值共享方法減少訓(xùn)練的權(quán)值個(gè)數(shù),降低復(fù)雜度與參數(shù)個(gè)數(shù);后向傳播過程以標(biāo)簽值和預(yù)測值誤差最小為代價(jià)函數(shù),進(jìn)行權(quán)值微調(diào)。
在本實(shí)施例中,為了能夠同時(shí)捕捉到低層的特征信息和高層抽象的特征信息,卷積神經(jīng)網(wǎng)絡(luò)在結(jié)構(gòu)上可以包括至少兩個(gè)并聯(lián)分支的子網(wǎng)絡(luò)。具體可以是卷積神經(jīng)網(wǎng)絡(luò)以包括兩個(gè)、三個(gè)以及更多個(gè)并聯(lián)分支的子網(wǎng)絡(luò)??梢岳斫獾氖牵矸e神經(jīng)網(wǎng)絡(luò)具體的子網(wǎng)絡(luò)的數(shù)量,可以在實(shí)際應(yīng)用過程中,結(jié)合焊點(diǎn)的類型以及焊錫圖像的特征等進(jìn)行設(shè)定,在此不做限定??紤]到卷積神經(jīng)網(wǎng)絡(luò)所占用的內(nèi)存及識別效率等問題,卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)可以在滿足需求的基礎(chǔ)上盡可能地簡單化。例如,卷積神經(jīng)網(wǎng)絡(luò)可以包括并聯(lián)的第一子網(wǎng)絡(luò)和第二子網(wǎng)絡(luò)。
考慮到卷積網(wǎng)絡(luò)的構(gòu)建與訓(xùn)練的便利性,可選地,訓(xùn)練樣本集中的訓(xùn)練樣本(焊錫圖像)在輸入卷積神經(jīng)網(wǎng)絡(luò)之前,可預(yù)先調(diào)整為同一大小的RGB圖像。
S130、將待識別的焊錫圖像輸入到訓(xùn)練完成的所述卷積神經(jīng)網(wǎng)絡(luò)中,對焊錫圖像中的焊點(diǎn)的類型進(jìn)行識別。
如前所述,在確定了原始的卷積神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)之后,通過使用大量的訓(xùn)練樣本對該原始卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,即可得到所述焊點(diǎn)類型的識別模型。只需將待識別的焊錫圖像輸入到訓(xùn)練完成的卷積神經(jīng)網(wǎng)絡(luò)中,即可完成對焊錫圖像中的焊點(diǎn)的類型的識別。
本實(shí)施例的技術(shù)方案,首先構(gòu)建了一個(gè)卷積神經(jīng)網(wǎng)絡(luò),該卷積神經(jīng)網(wǎng)絡(luò)輸入的為焊錫圖像,輸出的為焊點(diǎn)的類型,選取至少兩種類型的焊點(diǎn)的焊錫圖像對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,進(jìn)而將待識別的焊錫圖像輸入至訓(xùn)練完成的卷積神經(jīng)網(wǎng)絡(luò),識別焊點(diǎn)的類型,解決了傳統(tǒng)焊錫缺陷檢測方法所存在的制版麻煩、精準(zhǔn)度低及穩(wěn)定性差等問題,通過將焊錫圖像輸入至訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)模型中,即可簡單快速地對焊點(diǎn)類型進(jìn)行識別,以實(shí)現(xiàn)焊錫缺陷地精準(zhǔn)檢測。
實(shí)施例二
圖2A為本發(fā)明實(shí)施例二提供的一種基于圖像識別的焊點(diǎn)類型檢測方法的流程圖。如圖2A所示,本實(shí)施例在上述各實(shí)施例的基礎(chǔ)上,優(yōu)選是將基于獲取到的至少兩種類型的焊點(diǎn)的焊錫圖像建立訓(xùn)練樣本集進(jìn)一步優(yōu)化為對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像進(jìn)行數(shù)據(jù)擴(kuò)展;基于原始的焊錫圖像以及數(shù)據(jù)擴(kuò)展后的焊錫圖像建立訓(xùn)練樣本集。
在此基礎(chǔ)上,可選是所述基于訓(xùn)練樣本集中的訓(xùn)練樣本對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練之前,還包括:構(gòu)建包括并聯(lián)的第一子網(wǎng)絡(luò)和第二子網(wǎng)絡(luò)的卷積神經(jīng)網(wǎng)絡(luò),其中,所述第一子網(wǎng)絡(luò)所包括的層級的數(shù)量大于所述第二子網(wǎng)絡(luò)所包含的層級的數(shù)量。
進(jìn)一步地,在上述各實(shí)施例的基礎(chǔ)上,所述基于訓(xùn)練樣本集中的訓(xùn)練樣本 對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,優(yōu)選是還可以包括:基于訓(xùn)練樣本集中的訓(xùn)練樣本,采用梯度下降法對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練及優(yōu)化。
具體地,本實(shí)施例的方法可以包括:
S210、對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像進(jìn)行數(shù)據(jù)擴(kuò)展。
具體地,對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像進(jìn)行數(shù)據(jù)擴(kuò)展,可包括下述中的至少一項(xiàng):對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像依照預(yù)設(shè)角度旋轉(zhuǎn),例如,對焊錫圖像進(jìn)行90度、180度或270度旋轉(zhuǎn);對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像進(jìn)行隨機(jī)裁剪;對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像進(jìn)行伽馬Gamma變換,可以削弱外界光照、圖像亮度或者灰度值對焊錫圖像的影響。即,可以通過上述任一種方式或任兩種方式組合對焊錫圖像進(jìn)行變換以實(shí)現(xiàn)數(shù)據(jù)擴(kuò)展;或者同時(shí)采用多種方式組合對焊錫圖像進(jìn)行變換以實(shí)現(xiàn)數(shù)據(jù)擴(kuò)展。
S220、基于原始的焊錫圖像以及數(shù)據(jù)擴(kuò)展后的焊錫圖像建立訓(xùn)練樣本集。
在本實(shí)施例中,原始的焊錫圖像通過數(shù)據(jù)擴(kuò)展后,將原始的焊錫圖像以及數(shù)據(jù)擴(kuò)展后的焊錫圖像均作為訓(xùn)練樣本,訓(xùn)練樣本集中的訓(xùn)練樣本將成倍的增加,且使得訓(xùn)練樣本集中的訓(xùn)練樣本更加豐富,而且可多角度、多區(qū)域地展現(xiàn)樣本。這樣還可以較好的降低卷積神經(jīng)網(wǎng)絡(luò)過擬合的可能性,使得卷積神經(jīng)網(wǎng)絡(luò)的模型獲得更好的泛化能力。
S230、構(gòu)建包括并聯(lián)的第一子網(wǎng)絡(luò)和第二子網(wǎng)絡(luò)的卷積神經(jīng)網(wǎng)絡(luò),其中,所述第一子網(wǎng)絡(luò)所包括的層級的數(shù)量大于所述第二子網(wǎng)絡(luò)所包含的層級的數(shù)量。
在本實(shí)施例中,通過所包括的層級的數(shù)量較多的第一子網(wǎng)絡(luò)捕捉焊錫圖像 中焊點(diǎn)類型的高層抽象的特征信息,通過所包括的層級的數(shù)量較少的第二子網(wǎng)絡(luò)捕捉焊錫圖像中焊點(diǎn)類型的低層的特征信息,實(shí)現(xiàn)同時(shí)捕捉焊錫圖像的低層的特征信息和高層抽象的特征信息,以更加準(zhǔn)確地判斷焊錫圖像中焊點(diǎn)的類型。
具體地,所述構(gòu)建包括并聯(lián)的第一子網(wǎng)絡(luò)和第二子網(wǎng)絡(luò)的卷積神經(jīng)網(wǎng)絡(luò)可包括:構(gòu)建包括一個(gè)卷積層、一個(gè)非線性激活函數(shù)層和一個(gè)池化層的第二子網(wǎng)絡(luò),以及包括至少兩個(gè)卷積層和至少兩個(gè)非線性激活函數(shù)層的第一子網(wǎng)絡(luò);并聯(lián)所述第一子網(wǎng)絡(luò)和所述第二子網(wǎng)絡(luò)以構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)。示例性地,第一子網(wǎng)絡(luò)可以包括三個(gè)卷積層和三個(gè)非線性激活函數(shù)層。
在圖像處理中,對圖像用一個(gè)卷積核進(jìn)行卷積運(yùn)算,實(shí)際上是一個(gè)濾波的過程,可用于增強(qiáng)焊錫圖像的原始信號,檢測更多的特征信息,并且降低噪音。可以理解的是,卷積層的卷積核大小(例如3*3,5*5等)及卷積核的數(shù)量(例如64個(gè)等),可以根據(jù)實(shí)際需求進(jìn)行設(shè)定。
在本實(shí)施例中,激活函數(shù)層選用非線性ReLu激活函數(shù)層,主要為訓(xùn)練樣本的特征提供非線性表達(dá)能力。在正向傳播過程中,相比較于傳統(tǒng)的sigmoid和tanh函數(shù),ReLu函數(shù)在計(jì)算激活值時(shí)不需要計(jì)算指數(shù)而僅需要設(shè)置閾值。ReLu激活函數(shù)層能夠加速收斂,縮短學(xué)習(xí)周期,使得網(wǎng)絡(luò)可自行引入稀疏性,且減少了參數(shù)的相互依存關(guān)系,能夠有效緩和過擬合問題的發(fā)生。
池化層,也稱下采樣層,主要是為了使得網(wǎng)絡(luò)獲得一定程度的位移、尺度、形變不變性,而且能夠降低上一層輸出的特征向量,不易出現(xiàn)過擬合現(xiàn)象。
為了更好地進(jìn)行特征融合,所述構(gòu)建包括并聯(lián)的第一子網(wǎng)絡(luò)和第二子網(wǎng)絡(luò)的卷積神經(jīng)網(wǎng)絡(luò),還可以包括:基于所述第一子網(wǎng)絡(luò)、所述第二子網(wǎng)絡(luò)、通道連接層以及與所述通道連接層相連的至少一個(gè)全連接層構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)。其 中所述全連接層還可以包括第一全連接層和第二全連接層。進(jìn)一步地,第一全連接層可以對應(yīng)于通道連接層的特征信息(包括具體特征及對應(yīng)的權(quán)重值等);第二連接層可對應(yīng)于焊點(diǎn)的類型,比如可以將焊點(diǎn)類型表示為正常、少錫、連錫及多錫四類。
S240、基于訓(xùn)練樣本集中的訓(xùn)練樣本,采用梯度下降法對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練及優(yōu)化。
在機(jī)器學(xué)習(xí)算法中,通常需要對原始的模型構(gòu)建損失函數(shù),接下來便是通過優(yōu)化算法對損失函數(shù)進(jìn)行優(yōu)化,以便尋找到最優(yōu)的參數(shù)。在本實(shí)施例中,可以采用梯度下降法對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化。
示例性地,梯度下降法可包括批量梯度下降法(Batch Gradient Descent,BGD)、小批量梯度下降法MBGD及隨機(jī)梯度下降算法(Stochastic Gradient Descent,SGD)等。
S250、將待識別的焊錫圖像輸入到訓(xùn)練完成的所述卷積神經(jīng)網(wǎng)絡(luò)中,對焊錫圖像中的焊點(diǎn)的類型進(jìn)行識別。
本實(shí)施例的技術(shù)方案,進(jìn)一步地對訓(xùn)練樣本進(jìn)行數(shù)據(jù)擴(kuò)展,使得訓(xùn)練樣本更加豐富,也使得卷積神經(jīng)網(wǎng)絡(luò)更加地泛化,且用梯度下降法對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,使得訓(xùn)練完成的卷積神經(jīng)網(wǎng)絡(luò)在應(yīng)用過程中,可適用于各種待識別的焊錫圖像,且精準(zhǔn)度更高。
作為本發(fā)明實(shí)施例的一優(yōu)選實(shí)例,如圖2B所示,在訓(xùn)練階段,我們會根據(jù)一些設(shè)定好的數(shù)據(jù)擴(kuò)展方法,對得到的焊錫圖像進(jìn)行數(shù)據(jù)擴(kuò)展,增加訓(xùn)練樣本的個(gè)數(shù),增加訓(xùn)練樣本的多樣性,降低過擬合;然后將擴(kuò)展后的訓(xùn)練數(shù)據(jù)輸入給預(yù)先構(gòu)建好的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,通過梯度下降方法(如SGD)優(yōu)化卷 積神經(jīng)網(wǎng)絡(luò)的參數(shù);若訓(xùn)練的卷積神經(jīng)網(wǎng)絡(luò)在測試集上滿足要求,則可以結(jié)束卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。
具體地,如圖2C所示,可預(yù)先將輸入的訓(xùn)練樣本調(diào)整為成64*64大小的RGB圖像,輸入至卷積神經(jīng)網(wǎng)絡(luò)的各并聯(lián)子網(wǎng)絡(luò)中。在整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)上,為了能夠同時(shí)捕捉低層的特征信息和高層抽象的特征信息,構(gòu)建了兩個(gè)分支的子網(wǎng)絡(luò),分別為第一子網(wǎng)絡(luò)和第二子網(wǎng)絡(luò)。其中,第一子網(wǎng)絡(luò)由3個(gè)卷積層和3個(gè)非線性激活函數(shù)(ReLu激活函數(shù)層)組成,主要用于提取高層的抽象的特征信息;第二子網(wǎng)絡(luò)由一個(gè)卷積層、一個(gè)ReLu激活函數(shù)層和一個(gè)池化層構(gòu)成。
在本實(shí)施例中,具體地,第一子網(wǎng)絡(luò)所包括的層級如下所述:第1層是卷積層,卷積層的卷積核大小為3*3,卷積核的數(shù)量為64個(gè);第2層是一個(gè)非線性激活函數(shù)層,此處采用的是ReLU激活函數(shù),主要為特征提供非線性表達(dá)能力;第3層是卷積層,卷積核大小為3*3,卷積核的數(shù)量為64個(gè);第4層是ReLu激活函數(shù)層;第5層是池化層(下采樣區(qū)域2*2),也稱下采樣層,主要是為了使得網(wǎng)絡(luò)獲得一定程度的位移、尺度、形變不變性;第6層是卷積層,卷積核大小為3*3,卷積核數(shù)量為64;第7層是ReLu激活函數(shù)層;第8層是池化層(下采樣區(qū)域2*2)。
第二子網(wǎng)絡(luò)所包括的層級如下所述:其第1層是卷積層,卷積核大小為5*5,卷積核的數(shù)量為64;第2層是非線性ReLu激活函數(shù)層;第3層是池化層(下采樣區(qū)域4*4)。
進(jìn)而,將從第一子網(wǎng)絡(luò)和第二子網(wǎng)絡(luò)中分別得到特征信息通過通道連接層連接起來,輸入給第一全連接層和第二全連接層,其中,第一全連接層的神經(jīng)元個(gè)數(shù)為256個(gè),第二全連接層的神經(jīng)元個(gè)數(shù)為4個(gè),即對應(yīng)著需要分類的焊 點(diǎn)的類型的數(shù)目,最后輸入Softmax層,即輸出層,輸出結(jié)果。
在實(shí)施階段,如圖2D所示,只要將實(shí)際待識別的焊錫圖像,輸入訓(xùn)練完成的卷積神經(jīng)網(wǎng)絡(luò),進(jìn)行一次前向計(jì)算,即可得到該焊錫圖像中焊點(diǎn)所屬的類型。進(jìn)而,可以根據(jù)識別出的焊點(diǎn)的類型確定焊錫是否存在缺陷,從而實(shí)現(xiàn)焊錫缺陷檢測。相比于訓(xùn)練階段,實(shí)施階段很簡單。只需將實(shí)際生產(chǎn)環(huán)境下的焊錫圖像,輸入給訓(xùn)練完成后的卷積神經(jīng)網(wǎng)絡(luò)模型,這樣就獲得了輸入的焊錫圖像數(shù)據(jù)在4個(gè)類別上的概率分布??蛇x取其中概率最大的類別作為焊錫圖像的缺陷類別,如果是少錫,多錫,連錫這三種缺陷的一種,則可標(biāo)注這個(gè)焊錫,將其留給作業(yè)人員進(jìn)行確認(rèn)和修復(fù)。
采用本實(shí)施例的技術(shù)方案,能夠簡單、快速、準(zhǔn)確地識別出焊錫圖像中焊點(diǎn)的類型,方便焊錫缺陷的查看與檢修。
實(shí)施例三
圖3所示為本發(fā)明實(shí)施例三提供的一種基于圖像識別的焊點(diǎn)類型檢測裝置的結(jié)構(gòu)框圖,該裝置可通過硬件和/或軟件的方式實(shí)現(xiàn),并一般可獨(dú)立的配置在用戶終端或服務(wù)器中實(shí)現(xiàn)本實(shí)施例的方法。如圖3所示,所述基于圖像識別的焊點(diǎn)類型檢測裝置具體包括:訓(xùn)練樣本集建立模塊310、卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練模塊320和焊點(diǎn)類型識別模塊330。
其中,訓(xùn)練樣本集建立模塊310,用于基于獲取到的至少兩種類型的焊點(diǎn)的焊錫圖像建立訓(xùn)練樣本集;卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練模塊320,用于基于訓(xùn)練樣本集中的訓(xùn)練樣本對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練;焊點(diǎn)類型識別模塊330,用于將待識別的焊錫圖像輸入到訓(xùn)練完成的所述卷積神經(jīng)網(wǎng)絡(luò)中,對焊錫圖像中的焊點(diǎn)的類型進(jìn)行識別。
本實(shí)施例的技術(shù)方案,首先構(gòu)建了一個(gè)卷積神經(jīng)網(wǎng)絡(luò),該卷積神經(jīng)網(wǎng)絡(luò)輸入的為焊錫圖像,輸出的為焊點(diǎn)的類型,選取至少兩種類型的焊點(diǎn)的焊錫圖像對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,進(jìn)而將待識別的焊錫圖像輸入至訓(xùn)練完成的卷積神經(jīng)網(wǎng)絡(luò),識別焊點(diǎn)的類型,解決了傳統(tǒng)焊錫缺陷檢測方法所存在的制版麻煩、精準(zhǔn)度低及穩(wěn)定性差等問題,通過將焊錫圖像輸入至訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)模型中,即可簡單快速地對焊點(diǎn)類型進(jìn)行識別,以實(shí)現(xiàn)焊錫缺陷地精準(zhǔn)檢測。
在上述技術(shù)方案的基礎(chǔ)上,所述訓(xùn)練樣本集建立模塊可包括:焊錫圖像數(shù)據(jù)擴(kuò)展單元和訓(xùn)練樣本集建立單元。其中,焊錫圖像數(shù)據(jù)擴(kuò)展單元,用于對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像進(jìn)行數(shù)據(jù)擴(kuò)展;訓(xùn)練樣本集建立單元,用于基于原始的焊錫圖像以及數(shù)據(jù)擴(kuò)展后的焊錫圖像建立訓(xùn)練樣本集。
在上述各技術(shù)方案的基礎(chǔ)上,所述焊錫圖像數(shù)據(jù)擴(kuò)展單元可用于下述中的至少一項(xiàng):
對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像依照預(yù)設(shè)角度旋轉(zhuǎn);
對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像進(jìn)行隨機(jī)裁剪;
對獲取到的至少兩種類型的焊點(diǎn)原始的焊錫圖像進(jìn)行伽馬Gamma變換。
在上述各技術(shù)方案的基礎(chǔ)上,所述裝置還包括:
卷積神經(jīng)網(wǎng)絡(luò)構(gòu)建模塊,用于在基于訓(xùn)練樣本集中的訓(xùn)練樣本對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練之前,構(gòu)建包括并聯(lián)的第一子網(wǎng)絡(luò)和第二子網(wǎng)絡(luò)的卷積神經(jīng)網(wǎng)絡(luò),其中,所述第一子網(wǎng)絡(luò)所包括的層級的數(shù)量大于所述第二子網(wǎng)絡(luò)所包含的層級的數(shù)量。
在上述各技術(shù)方案的基礎(chǔ)上,所述卷積神經(jīng)網(wǎng)絡(luò)構(gòu)建模塊可具體用于:
構(gòu)建包括一個(gè)卷積層、一個(gè)非線性激活函數(shù)層和一個(gè)池化層的第二子網(wǎng)絡(luò),以及包括至少兩個(gè)卷積層和至少兩個(gè)非線性激活函數(shù)層的第一子網(wǎng)絡(luò);
并聯(lián)所述第一子網(wǎng)絡(luò)和所述第二子網(wǎng)絡(luò)以構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)。
在上述各技術(shù)方案的基礎(chǔ)上,所述卷積神經(jīng)網(wǎng)絡(luò)構(gòu)建模塊還可進(jìn)一步用于:
基于所述第一子網(wǎng)絡(luò)、所述第二子網(wǎng)絡(luò)、通道連接層以及與所述通道連接層相連的至少一個(gè)全連接層構(gòu)建卷積神經(jīng)網(wǎng)絡(luò)。
在上述各技術(shù)方案的基礎(chǔ)上,所述卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練模塊可具體用于:
基于訓(xùn)練樣本集中的訓(xùn)練樣本,采用梯度下降法對預(yù)先構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練及優(yōu)化。
上述裝置可執(zhí)行本發(fā)明實(shí)施例一和實(shí)施例二所提供的方法,具備執(zhí)行上述方法相應(yīng)的功能模塊和有益效果。未在本實(shí)施例中詳盡描述的技術(shù)細(xì)節(jié),可參見本發(fā)明實(shí)施例一和實(shí)施例二所提供的方法。
注意,上述僅為本發(fā)明的較佳實(shí)施例及所運(yùn)用技術(shù)原理。本領(lǐng)域技術(shù)人員會理解,本發(fā)明不限于這里所述的特定實(shí)施例,對本領(lǐng)域技術(shù)人員來說能夠進(jìn)行各種明顯的變化、重新調(diào)整和替代而不會脫離本發(fā)明的保護(hù)范圍。因此,雖然通過以上實(shí)施例對本發(fā)明進(jìn)行了較為詳細(xì)的說明,但是本發(fā)明不僅僅限于以上實(shí)施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實(shí)施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。