999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于雙線性CNN與DenseBlock的導光板標記線缺陷檢測①

2020-07-25 01:46:56張家瑜周迪斌魏東亮金秉文解利軍
計算機系統應用 2020年7期
關鍵詞:分類特征檢測

張家瑜,周迪斌,魏東亮,金秉文,解利軍

1(杭州師范大學 杭州國際服務工程學院,杭州 311121)

2(杭州利珀科技有限公司,杭州 311300)

3(浙江大學 航空航天學院,杭州 310027)

導光板是一種亞克力材質的塑料板材,經過花紋燙印后,被廣泛用于顯示器背光模組核心組件.對導光板標記線的檢測,則是驗證當前燙印工藝是否合格的一個重要標準.使用數字圖像算法檢測導光板標記線雖然可以有效地對圖片進行檢測,但是面對特征更加復雜的大面積氣泡、嚴重污染和無標記線等情況無法得到滿意的結果.使用深度學習方法進行工業檢測,是學術界和工業界共同探索的課題.使用深度學習的方法對小數據集、低對比、高紋理、高相似的導光板標圖片進行缺陷檢測,導光板缺陷板材示意圖如圖1所示.

圖1 缺陷板材示意圖

目前越來越多的中外學者致力于機器視覺的研究,但卻少有導光板檢測的成熟方法以及學術論文可被參考,通過借鑒液晶屏缺陷檢測的研究方法進行研究.在數字圖像算法檢測方法中,文獻[1]中將圖像作為像素矩陣,利用奇異值分解(SVD)檢測缺陷,首先去除圖像背景,然后利用剩余奇異值重建圖像并顯示缺陷區域.但是這種方法中沒有提供消除各種缺陷類型時必須的奇異值數,以獲得良好的實驗結果.文獻[2]中,利用奇異值對圖像進行分類,并將缺陷圖片分為粗缺陷和細缺陷兩類,采用二維離散小波系數與區域增長相結合的方法提取缺陷區域,該算法在時間復雜度上表現較為優異,但是在應對導光板復雜特征時表現欠佳.文獻[3]中擴展了原霍夫變換的點到線的距離差,在非平穩灰度梯度的缺陷檢測中得到了有效的應用.然而不同的距離差值與相同的控制參數組合將會導致得到不同的結果,文中并未提到此自動檢測方法是否需要人工干預來設置參數.在神經網絡的檢測算法中,文獻[4]中作者為Mura缺陷的定量評估設計了一個模糊神經網絡,然而對于低對比度的Mura缺陷,如何準確地提取到缺陷特征是一個挑戰.文獻[5]中作者為預測Gap Mura缺陷使用4種神經網絡,分別是BP神經網絡、徑向基函數、學習向量量化1和學習向量量化2進行訓練,但是BP神經網絡本身具有收斂速度慢、權值收斂局部極小化等問題,并不能提供穩定的解決方案.文獻[6]中作者針對Mura缺陷采用監督學習網絡,將觀察到的Mura缺陷標記為特征,并被輸入到一個卷積神經網絡提取所選擇的特征.文中所使用的網絡需要提前表及特征,過程繁雜,工作量大,且文中使用網絡結構簡答單一,捕獲特征較少,無法應對復雜紋理的圖像分類任務.文獻[7]中作者使用神經網絡光學模型和遺傳算法等方法優化設計棱鏡型液晶導光板,以求在現有條件下獲得優異的亮度均勻性.但是使用的網絡BP神經網絡訓練方面問題多多,無法保證使用不同的數據集時的檢測效果.文獻[8]中作者融合STN和DenseNet卷積神經網絡組成新型網絡結構ST-DenseNet 用于樹種葉片數據集分類.文獻[9]中作者通過改進AlexNet 完成遮擋獼猴桃目標識別任務.文獻[10]中作者使用VGG16分類卷積神經網絡對血液細胞進行診斷分類研究.在理論研究方面,人們在探索分類卷積神經網絡時注意到了注意力這一概念,例如:文獻[11]中簡單的形狀檢測,文獻[12-15]中基于數字的任務,文獻[16]中的捉住的視覺控制游戲;文獻[17]中的正面人臉檢測等,都是面向分類卷積神經網絡中注意力機制的探索和研討.

上述分類卷積神經網絡的分類效果雖然表現不錯,但是由于網絡參數較多,運行時卷積神經網絡的時間復雜度較大.因工業產品檢測需要考慮時間成本和資金成本,無法直接使用上述分類網絡進行分類檢測.由于目前用于工業檢測的卷積神經網絡案例較少,查閱相關文獻后,選擇對現有卷積神經網絡進行改進,完成導光板分類檢測算法.針對工業檢測需求,更改DenseNet網絡中的卷積結構,結合Bilinear-CNN算法提高卷積神經網絡局部特征注意力.最終在900 張的測試圖片組成的測試數據集上達到了95.53%的準確率,平均單張圖像檢測時間為40.1 ms.

1 相關理論方法

卷積神經網絡(Convolutional Neural Networks,CNN)是一種特殊的人工神經網絡,其主要的特點是卷積運算操作.卷積神經網絡在進行分類或者回歸的時候,大致都分為兩個部分,他們分別是前饋運算和反饋運算.前饋運算是產生運算數據的過程,其主要通過卷積操作、匯合操作和非線性激活函數映射等一系列操作共同完成.反向傳播主要是計算預測值和真實值之間的誤差或損失,憑借反向傳播算法將損失逐層向前反饋,更新每一層的權重和偏置,通過周而復始的進行前饋運算和反饋運算,最終得到期望的模型.

假設某網絡有L層,用X0表示整個網絡的輸入,XL?1表示第L-1層的輸出.這里的層并不是單指某一個操作,它可以指卷積操作、匯合操作、非線性映射或其他變化中的任意單獨的一個操作,也可以是不同形式變化的任意組合.這里使用Hl(·)作為第L層的非線性變化.

在CNN中,前一個卷積層的輸出是后一個卷積層的輸入.

在ResNet中加入了一個跳躍連接,它繞過了具有恒等函數的非線性轉換.第l層的輸出是l?1層的輸出與l?1層非線性變化后的結果相加.

在DenseNet中,與ResNet最大的不同則是在于,DenseNet 中的每個DenseBlock 將所有特征計算單元(BN-ReLU- Conv(1×1)- BN-ReLU-C ov(3×3))的結果以密集連接的方式沿某一維度進行壓縮[18,19],代替了簡單的求和.一個具有i層的DenseBlock結構(結構如圖2所示),其密集連接數目為i×(i+1)/2.這讓后續的層可以訪問前面任何層所學習到的結果,DenseNet網絡結構如圖3所示.

DenseBlock中特征計算表達式如下所示:

公式中的[x0,x1,···,xl?1]分別代表在D enseBlock中的Hl(·)的結果張量.

其中,P(y=i|x)表示樣本x屬于第i類的概率.

圖2 DenseBlock結構示意圖

圖3 DenseNet網絡結構

2 基于雙線性CNN和DenseBlock的分類檢測框架

本文算法分上下兩步,第1步,基本權重訓練:通過修改DenseNet網絡,改進DenseBlock 中特征計算單元的結構,減少卷積神經網絡卷積層數量,避免過擬合,以及減少卷積神經網絡參數數量.第2步,權重模型優化:使用Bilinear-CNN分類算法組成混合深度模型進行遷移學習,將使用第1步訓練得到的權重遷移到第2步的Bilinear-CNN分類網絡重新訓練,通過捕捉特征通道之間的成對相關性,提高分類準確率,各步網絡結構如圖4所示.通過對實驗的卷積神經網絡算法的權重進行分析發現,本文所設計的卷積神經網絡算法僅需要極少的參數參與運算.

2.1 改進的神經網絡模型介紹

與傳統的為提高識別精度,通過增加卷積層數量或使用金字塔特征融合的方法不同.卷積神經網絡在工業檢測應用的場景,主要運行在工控機或者普通PC機上.因此設計卷積神經網絡時,首先考慮減少卷積神經網絡卷積層,然后再考慮提高卷積神經網絡分類精度.

2.1.1 減少卷積神經網絡參數

減少DenseBlock 中的卷積層數,通過減少卷積操作次數和卷積數量,提高卷積神經網絡運行速度.減少卷積層數量可以在減少運行時間的同時減少網絡參數數量.但是隨之而來的副作用,則是無法獲得足夠的特征,使得特征激活映射區域無法正確映射到目標物體上.

減少卷積操作中的通道數量,隨著卷積操作中通道數量的增加,網絡參數數量也隨之增加,使得網絡在運行時需要申請更多的顯存和內存空間.減少卷積操作中的通道數量,可以有效的降低卷積神經網絡的空間復雜度.

圖4 本文算法網絡結構

在特征計算單元中加入DropOut算法,通過設置忽略特征檢測器的概率,使某些神經元的激活值以一定的概率停止工作.DropOut的加入可以使當前模型泛化性更強,減少對某些局部特征的依賴,從而避免過擬合.

在每個DenseBlock后面加入多層感知器(MLP)[20],與Caffe 中MLP的實現方法不同,實驗算法中的MLP算子中沒有使用3×3 大小的卷積核進行卷積,僅使用兩層1×1 大小的卷積核進行卷積,這樣做有助于在加深網絡卷積深度與增強網絡容量和復雜度的同時,減少網絡參數數量[21].

2.1.2 加速損失函數收斂

在實驗中,發現使用原DenseNet網絡結構中的GAP結構,無法有效降低損失函數的損失值.在使用三層全連接層代替Global Average Pooling (GAP)之后,損失函數的損失值快速下降.對比前后結果,三層全連接層作為一個小型網絡,相比于GAP算法其可以獲取更多的特征.使用GAP算法對高紋理、低對比的灰度圖分類時,會造成特征圖上的特征丟失.

GAP 對所接收到的每一個特征圖都進行了極端降維,它將尺寸為h×w×d的張量縮小為1×1×d大小的張量.GAP激活區域與分類結果之間的關系證明如下所示[22]:

設fk(x,y)為卷積層在輸入圖片(x,y)處得到的K個單元的映射.對于K個單元執行全局平均池化的結果為:

假設當前所屬類別為C,令wck為K個單元所屬類別C對應的權重,其中wck代表了類別C中的Fk的重要性.

使用三層全連接層可以有效地降低損失函數損失值,加速了梯度下降,促使網絡可以更加快速的擬合權重參數,找到當前網絡的局部最優解.但是隨著三層全連接層的使用,導致卷積神經網絡的參數數量增加,所以在下一步的遷移學習過程中通過修改全連接層結構的方法,降低網絡參數數量.

2.2 雙線性CNN算法

雙線性CNN(如圖5)由兩組CNN特征提取器組成,它使用兩個卷積神經網絡的輸出在圖像的每個位置進行外積相乘,并在原圖各個位置進行池化以獲得最終的圖像特征描述符.通過外積操作捕捉特征通道之間的成對相關性,對局部特征之間的交互進行建模.由于雙線性CNN的兩個CNN的輸出是線性的,所以被叫做雙線性CNN[23].在雙線性CNN算法中,有并行子網絡A、B,網絡A的作用是對圖像中對象的特征部位進行定位,而網絡B 則是用來對網絡A 檢測到的特征區域進行特征提取,由這兩個網絡共同完成了圖像分類中最重要的兩個任務:區域檢測和特征提取[24].

雙線性CNN的全局圖像描述符,表示如下:

其中X=(x1,···,x|s|,xs∈Rc)是一組局部描述符,S是空間位置的集合(行和列的組合).其中局部描述符xs,通常使用Fisher vector、SIFT 等特征,也可以使用卷積神經網絡的正向傳播提取特征.描述符B(X)是一個大小為c×c的矩陣,因描述符本質上是一個向量,也可以將其稱為長度為c2的向量.

使用池化函數P用于聚合圖片中所有區域的雙線性特征,其在實現的時候有兩種方法,一種聚合方法是將所有雙線性特征累加,另外一種是使用max-pooling進行雙線性特征聚合.

累加聚合如下表示:

圖5 雙線性C NN結構圖

目前雙線性CNN 有兩種實現方法,第1種:使用不同的兩組卷積神經網絡作為特征提取器,第2種:使用同一組網絡獲取的最終特征描述符進行運算.通過對比研究,因考慮到算法最終的應用環境,最終選擇第2種實現方式進行實驗.

2.3 損失函數

在第一步的實驗訓練中嘗試了不同的損失函數,其中包括focal loss和交叉熵損失函數[24],在單目標分類實驗中發現,交叉熵損失函數的表現更為穩定,最終選擇交叉熵損失函數進行分類訓練.

交叉熵損失函數公式如下所示:

3 實驗分析

訓練數據集共有4059 張圖片,驗證和測試數據集各有896 張圖片.為應對不同工廠的不同產品,旨在尋找簡單易用的端到端的神經網絡,本文分類卷積神經網絡算法在訓練時并未對圖片預處理.

實驗電腦硬件配置如下:

(1)CPU:Intel Core(TM)i5-4590;四核四線程;主頻:3.3 GHz.

(2)實驗訓練用GPU:NVIDIA Titan V;顯存:12 GB;內存:250 GB.

(3)實驗測試用GPU:NVIDIA GTX 1060;顯存:6 GB.

(4)本機內存:DDR3:1600 MHz;內存:16 GB.

實驗軟件環境如下:

(1)操作系統:Windows 10,ubuntu 16.04.

(2)編程語言:Python.

(3)第三方庫:Pillow,numpy,matplotlib,tensorflow,keras,scikit-image.

3.1 DenseNet 實驗參數與結果

在第1步的訓練中,將訓練集輸入到網絡中進行模型訓練,訓練過程所涉及的參數有batch_size大小、學習率、激活函數、迭代次數和優化函數(訓練參數設置如表1所示).

表1 參數設置

使用實驗網絡模型對同一個數據集、在相同的訓練參數下,進行多次訓練后發現,每次訓練后得到的準確率在92%左右震蕩.從側面驗證,通過改進所得到的卷積神經網絡具有較好的魯棒性(loss 變化圖如圖6所示,本文使用留一法數據進行展示,用以凸顯卷積神經網絡擬合效果).

圖6 loss變化圖

3.2 雙線性CNN 實驗結果與分析

使用遷移學習技術對雙線性 CNN網絡進行訓練,通過修改第一步中的DenseNet網絡結構,使用雙線性CNN算法替換三層全連接層,在減少網絡參數的同時提高了分類準確率.在第二步訓練雙線性CNN時依然采用交叉熵損失函數作為圖像分類訓練的損失函數(如圖7).

將訓練集輸入到網絡中進行模型訓練,訓練過程所涉及的參數有batch_size、學習率、激活函數、迭代次數和優化函數等(如表2).

圖7 雙線性CNN loss 變化圖

實驗所用訓練數據集(如圖8)由3類缺陷圖片組成,分別是無線、有線和氣泡,每類有1353 張圖片,共計4059 張訓練圖片,圖片大小為448×448×1的灰度圖片.測試數據集和驗證數據集各有896 張圖片,在上述數據集中無線、有線和氣泡的缺陷圖片各有300 張測試圖片,圖片大小為448×448×1的灰度圖片.使用實驗算法在測試數據集上測試,最終得到分類準確率為95.53%.

經過對測試數據集圖片內容逐張圖片驗證發現,誤判主要于有線板材被嚴重污染的情況下出現.在對氣泡和無線板材進行逐張圖片驗證時發現,這兩類圖片的檢測準確率為100%.根據工廠質量品控標準,可以將合格的檢測為不合格的,但是不能存在不合格檢測為合格的情況.所以無線板材的準確檢測是保障導光板質量的最低標準,實驗算法基本實現了導光板標記線的檢測要求.實驗網絡分類結果如圖9.

使用VGG-16、V2-ResNet-101、AlexNet與本文網絡相對比,分類結果如表3所示.

根據表3數據所示,DesneNet-BCNN與其他主流網絡對比結果如下.

圖8 數據集示意圖

表3 分類網絡結果對比

圖9 實驗網絡分類結果示意圖

在網絡參數方面,較V2-ResNet-101卷積神經網絡參數減少了97.2%,較AlexNet卷積神經網絡參數減少了97.5%.

在準確率方面,較V2-ResNet-101卷積神經網絡準確率提升了0.44%,較AlexNet卷積神經網絡準確率提升了3.34%.

在平均單張圖片檢測時間方面,較V2-ResNet-101卷積神經網絡快了13.3 ms,較AlexNet卷積神經網絡慢了29.5 ms.

4 結語

本文卷積神經網絡主要分兩步完成,第1步:通過修改DenseNet網絡結構降低參數數量、提高檢測速度、減少圖片檢測所用時間以及避免訓練過擬合.第2步:使用遷移學習方法,將第1步訓練所的權重遷移到雙線性CNN進行進一步訓練,通過外積操作捕捉特征通道之間的成對相關性,提高分類準確率.使用本文算法在低對比、高紋理、高相似的灰度圖片小數據集上進行分類,最終取得了95.53%的準確率.相比于V2-ResNet-101網絡結構,準確率提升了0.44%,參數減少了97.2%,平均單張圖像檢測時間大約減少25%.因為使用機器視覺的方法對導光板缺陷進行檢測的相關文獻較少,使用深度學習方法的文獻更加稀少.因此現有的導光板檢測方面的文獻,無法提供有價值的參考和對比.由于工場計件生產規則限制,無法在工廠生產線上進行長時間的、大負荷的、連續的算法魯棒性和穩定性評測.但是在與傳統算法搭配進行缺陷檢測的過程中,就目前的算法檢測結果來看,已基本滿足工業生產的缺陷檢測需要.下一步,在面對減少缺陷檢測時間、提高缺陷檢測準確率、保證算法魯棒性和穩定性等方面,需要更深入的研究和分析.

猜你喜歡
分類特征檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
分類算一算
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
分類討論求坐標
數據分析中的分類討論
教你一招:數的分類
抓住特征巧觀察
主站蜘蛛池模板: 亚洲人成影视在线观看| 日韩精品免费一线在线观看| 在线中文字幕日韩| 国产精品偷伦视频免费观看国产 | 亚洲人成网线在线播放va| 欧美a在线视频| 手机看片1024久久精品你懂的| 国产美女精品在线| 亚洲系列中文字幕一区二区| 亚洲第一网站男人都懂| 欧美午夜久久| 男女性色大片免费网站| 国产精品久久久免费视频| 国产永久无码观看在线| 日韩A级毛片一区二区三区| 99在线视频免费| 一级片一区| 国产三级成人| 夜色爽爽影院18禁妓女影院| 无码精油按摩潮喷在线播放 | 欧美成a人片在线观看| 一本色道久久88综合日韩精品| 99热这里只有精品免费国产| 久996视频精品免费观看| 国产AV毛片| 国产精品白浆无码流出在线看| 国产成人资源| 国产精品成人观看视频国产 | 在线观看欧美国产| 国产精品一区在线麻豆| 91精品国产情侣高潮露脸| 久久女人网| 这里只有精品国产| 五月婷婷综合网| 日韩欧美高清视频| 久久天天躁夜夜躁狠狠| 欧美人在线一区二区三区| 久久精品免费看一| 亚洲成人精品| 精品视频第一页| 四虎成人精品在永久免费| 日本高清免费一本在线观看 | 国产一国产一有一级毛片视频| 国产尤物在线播放| 91久久精品日日躁夜夜躁欧美| 亚洲高清国产拍精品26u| 99视频精品全国免费品| 再看日本中文字幕在线观看| 97狠狠操| 538精品在线观看| 欧美精品xx| 色综合五月| 女人毛片a级大学毛片免费| 亚洲一区毛片| 国产全黄a一级毛片| 国产剧情一区二区| 91www在线观看| 精品色综合| 日韩免费毛片视频| 精品国产Av电影无码久久久| 国产青榴视频在线观看网站| 日本在线欧美在线| 午夜三级在线| 亚洲欧美在线综合一区二区三区 | 久久精品亚洲专区| 国产在线无码av完整版在线观看| 亚洲av片在线免费观看| 四虎精品国产永久在线观看| 色综合手机在线| 亚洲第一成年人网站| 欧美一区二区三区欧美日韩亚洲| 丝袜久久剧情精品国产| 国产无码性爱一区二区三区| 亚洲一区二区三区香蕉| 亚洲人成影视在线观看| 欧美a在线看| 亚洲愉拍一区二区精品| 精品91自产拍在线| 小说区 亚洲 自拍 另类| 久久国产精品电影| 黄色片中文字幕| 精品无码视频在线观看|