• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于邊緣計算改進的MobileNetV1-SSD表面缺陷視覺檢測方法

      2024-03-26 01:32:22汪國平陳仲生侯幸林
      船電技術(shù) 2024年3期
      關鍵詞:鋰電池注意力神經(jīng)網(wǎng)絡

      汪國平,胡 博,陳仲生,,侯幸林

      基于邊緣計算改進的MobileNetV1-SSD表面缺陷視覺檢測方法

      汪國平1,胡 博2,陳仲生1,3,侯幸林3

      (1. 湖南工業(yè)大學 電氣與信息工程學院,湖南 株洲 412007;2. 南京理工大學 瞬態(tài)物理國家重點實驗室,江蘇 南京 210094;3. 常州工學院 汽車工程學院, 江蘇 常州 213032)

      表面缺陷檢測是產(chǎn)品質(zhì)檢的重要工序之一,現(xiàn)有邊緣端視覺檢測大多存在識別率低、模型結(jié)構(gòu)復雜、部署困難、模型推理實時性差等問題。為此,本文以STM32H747微控制器為邊緣設備,基于MobileNetV1-SSD輕量化模型,研究了一種融合CBAM注意力機制的表面缺陷視覺檢測方法。首先,融合CBAM注意力機制,添加在最后一層的特征提取網(wǎng)絡之后,使缺陷目標在檢測模型中的特征表達能力得到增強,模型在僅增加少量的參數(shù)量的基礎上提升模型的檢測準確率;其次,對CBAM-MobilenetV1-SSD模型進行預處理;最后,采用X-CUBE-AI工具包在STM32H747微控制器中實現(xiàn)了模型的移植和部署。通過對比實驗表明,融合CBAM注意力機制的模型mAP達到83.75%,精度比原算法提高2.75%,參數(shù)量僅為1.67M,模型大小為622KB,且部署在邊緣設備對軟包鋰電池表面缺陷檢測精度有顯著提升。

      表面缺陷檢測;邊緣計算;STM32微控制器;MobileNetV1-SSD;CBAM

      0 引言

      在工業(yè)制造中,產(chǎn)品質(zhì)量對用戶和制造商至關重要。產(chǎn)品表面缺陷的存在(如劃痕、凹陷、氣泡等)可能嚴重影響產(chǎn)品的外觀和功能。因此,進行有效的表面缺陷檢測至關重要。

      近年來,基于卷積神經(jīng)網(wǎng)絡(CNN)的深度學習方法在產(chǎn)品表面缺陷檢測領域受到廣泛關注和應用,并取得了顯著的成果。目前,基于深度學習的目標檢測方法第一類是以 RCNN、Faster R-CNN為代表的兩階段目標檢測。鄭亞睿[1]等在Faster R-CNN基礎上引入雙動態(tài)頭的金字塔網(wǎng)絡,應用于鋼材表面缺陷檢測。第二類是以 YOLO、SSD為代表的直接進行位置回歸的目標檢測模型。葛釗明等人[2]基于YOLOv5網(wǎng)絡引入卷積注意力模塊,用于鋰電池極片缺陷檢測。Li等人[3]改進了SSD的骨干網(wǎng)絡,并提出了一種MobileNet-SSD 網(wǎng)絡,用于檢測罐裝密封容器的表面缺陷。

      以上研究利用不同的神經(jīng)網(wǎng)絡模型來實現(xiàn)對產(chǎn)品表面的缺陷檢測并取得了較好的效果。但實際上由于邊緣端視覺檢測大多存在識別率低、模型結(jié)構(gòu)復雜、部署困難、模型推理實時性差等問題,針對邊緣計算端[4]的缺陷檢測的研究甚少。因此,本文設計了一種融合卷積塊注意力機制(CBAM) 的 MobilenetV1-SSD檢測模型,以軟包鋰電池表面缺陷為實驗對象,通過構(gòu)建輕量化的MobilenetV1-SSD模型,在此基礎上通過引入CBAM 注意力機制來增強模型對缺陷目標的特征表達能力,進而提高對軟包鋰電池表面缺陷檢測精度。

      1 CBAM-MobileNetV1-SSD模型構(gòu)建

      1.1 MobileNetV1-SSD輕量化網(wǎng)絡

      MobileNetV1[5]是 Google 公司 2017 年發(fā)布的用于移動端的輕量化深度學習網(wǎng)絡,其核心思想是運用深度可分離卷積和倒置殘差結(jié)構(gòu),實現(xiàn)了高效的特征提取和信息處理,大大降低了計算量和參數(shù)數(shù)量。同時,MobileNetV1在有限計算資源的情況下仍保持較高的準確性和性能表現(xiàn)。

      SSD[6]網(wǎng)絡是一種單階段目標檢測網(wǎng)絡,它基于VGG16骨干網(wǎng)絡,通過金字塔特征提取結(jié)構(gòu)實現(xiàn)不同大小特征圖的分類和回歸。采用金字塔特征提取結(jié)構(gòu)通過不同卷積層和尺度的特征圖進行分類和回歸,能更好地適應小目標的檢測需求。SSD網(wǎng)絡具有更快的運算速度和更低的網(wǎng)絡復雜度,因而更適合于輕量化應用。為此,本文選取SSD網(wǎng)絡作為目標分類和邊界框回歸任務的主要框架,同時采用MobileNetV1作為骨干網(wǎng)絡,替代原有的VGG16網(wǎng)絡,構(gòu)建MobileNetV1-SSD輕量化模型。MobileNetV1網(wǎng)絡的計算量約為VGG網(wǎng)絡的1/30,從而明顯壓縮了缺陷檢測網(wǎng)絡模型。

      1.2 融合CBAM注意力機制

      在采用輕量化網(wǎng)絡技術(shù)后,根據(jù)MobileNetV1-SSD實驗結(jié)果可知模型的精度有小幅度的下降。為了解決這個問題,本文考慮在輕量化網(wǎng)絡模型中融合CBAM注意力機制,使模型更加關注重要的特征,模型在僅增加少量的參數(shù)量的基礎上提升模型的檢測準確率,從而提高模型的表現(xiàn)和泛化能力。CBAM[7]是一種用于圖像分類的注意力機制,可以有效地提高卷積神經(jīng)網(wǎng)絡的性能。其核心思想是將注意力機制嵌入到CNN中,以使CNN可以自適應地選擇圖像中最具有代表性的區(qū)域并進行更好的分類,給原本沒有注意力機制的模型,同時加入通道與空間上的注意力機制。其整體結(jié)構(gòu)原理如圖1所示。

      圖1 CBAM注意力機制整體結(jié)構(gòu)圖

      CBAM主要包括兩個模塊:通道注意力模塊和空間注意力模塊。通道注意力模塊主要關注通道維度上的特征,以適應不同通道之間的重要性差異,其模塊結(jié)構(gòu)原理如圖2所示。通道注意力模塊旨在學習特征圖中不同通道之間的關系。它通過兩個步驟來計算通道注意力:全局平均池和共享全連接層。首先,通過全局平均池化操作,對每個通道的特征圖進行全局平均池化,得到通道維度上的特征描述。然后,將這些描述送入一個共享全連接層來計算每個通道的權(quán)重,形成了通道注意力圖M,這個通道注意力圖包含了每個通道在特征圖中的重要性信息,權(quán)重值表示了每個通道對于整個特征圖的重要程度。最終,這個通道注意力圖會被應用到原始的特征圖上對不同通道的特征進行加權(quán),以增強有用的通道特征。

      圖2 通道注意力模塊結(jié)構(gòu)圖

      空間注意力模塊則側(cè)重于圖像中不同空間位置之間的關系。通過對圖像不同位置的特征進行加權(quán)來強調(diào)重要的空間區(qū)域,以增強模型對物體的空間結(jié)構(gòu)和布局的理解,其模塊的工作原理如圖 3所示。空間注意力模塊旨在學習特征圖在空間維度上的重要性分布。它主要通過兩個步驟來計算空間注意力:使用最大池化和最大值池化。首先,對于每個通道,空間注意力模塊分別對特征圖進行最大值池化和平均值池化操作,得到每個位置上的最大值和平均值信息。接著,這些信息被拼接在一起并送入一個卷積層,生成一個空間注意力圖M。這個注意力圖會乘以原始的特征圖,強調(diào)空間上重要的特征,抑制不重要的部分。

      圖3 空間注意力模塊結(jié)構(gòu)圖

      綜上所述,CBAM注意力機制的計算公式如下:

      由于考慮到STM32H747邊緣設備的存儲與計算資源有限,需要限制模型的大小,因此本文不考慮將在每層卷積層之后添加注意力機制模塊,而只是將注意力機制模塊只添加在最后一層的特征提取網(wǎng)絡之后。首先對模型的輸入通道進行全局平均池化和全局最大池化操作,獲取通道特征的全局信息。然后設置兩個全連接層的通道共享率為8和1,繼而得到維度大小為(Batch, 1, 1, 16)和(Batch, 1, 1, 64)的兩層共享全連接層,最后傳入 Sigmoid激活函數(shù)生成每個通道的權(quán)重值,最終將權(quán)重值乘到每個通道的特征圖上,達到增強重要通道特征的效果,以提高模型識別的精度。使得模型在僅增加少量的參數(shù)量的基礎上提升模型的檢測準確率。

      2 CBAM-MobilenetV1-SSD檢測模型部署

      2.1 模型預處理

      將CBAM-Mobilenetv1-SSD缺陷檢測模型移植到STM32H74微控制器之前,需要在PC 端設備對其進行預處理,其流程如圖4所示。PC 端的預處理步驟包括模型訓練、模型量化[8]和模型轉(zhuǎn)換,量化后輸出的.tflit文件即是STM32可加載的網(wǎng)絡模型。

      圖4 模型預處理流程圖

      2.2 模型部署

      為了在STM32H747微控制器上部署量化后的CBAM-Mobilenetv1-SSD缺陷檢測模型,本文選擇采用X-CUBE-AI工具[9]。它支持快速自動導入流行深度學習框架(如Keras,TensorFlow-Lite,Caffe等)訓練后的神經(jīng)網(wǎng)絡,將其換為適用STM32的優(yōu)化代碼,實現(xiàn)神經(jīng)網(wǎng)絡模型向可移植C模型的精確轉(zhuǎn)換,并優(yōu)化生成的庫以減少內(nèi)存占用。

      在STM32H747微控制器上部署CBAM-MobileNetV1-SSD缺陷檢測模型的流程如圖5所示。使用X-CUBE-AI 工具箱對 TFLite 模型進行轉(zhuǎn)換,得到預處理后CBAM-Mobilenetv1-SSD模型的大小僅有622KB、占用 RAM 大小僅為312KB,完全滿足STM32H747計算及存儲資源要求。

      圖5 CBAM-MobileNetV1-SSD模型部署流程圖

      CBAM-MobileNetV1-SSD模型轉(zhuǎn)化生成的C代碼包括network.c、network.h、network_data.c、network_data.h、network_data_param.c和network_data_param.h,其中network.c包含了神經(jīng)網(wǎng)絡的初始化、前向傳播函數(shù)和其他相關函數(shù);network.h文件包含了神經(jīng)網(wǎng)絡的結(jié)構(gòu)定義、函數(shù)聲明和常量定義;network_data.c和 network_data.h文件包含了神經(jīng)網(wǎng)絡的權(quán)重和偏置數(shù)據(jù);network_data_params.c和network_data_params.h包含了部署轉(zhuǎn)換后神經(jīng)網(wǎng)絡模型所需的數(shù)據(jù)和參數(shù)定義。

      最后,將上述這些數(shù)據(jù)和參數(shù)嵌入到STM32H747微控制器的代碼中,即可實現(xiàn)CBAM-Mobilenetv1-SSD缺陷檢測模型的推理,無需在運行時訪問外部數(shù)據(jù)文件,從而實現(xiàn)了視覺檢測的邊緣檢測。

      3 實驗測試與驗證

      本文針對兩類軟包鋰電池表面缺陷:劃痕和凹坑,人工制作軟包鋰電池表面缺陷數(shù)據(jù)集,全部缺陷圖像數(shù)量共有2000張,隨機選取1500張圖像作為訓練集,剩余500張作為測試集。PC端計算環(huán)境為 Inter i5 CPU、Nvidia GTX2080GPU、8 GB 內(nèi)存、Python3.8 及 Tensorflow2.83 框架。

      3.1 模型訓練

      在訓練過程中,選取 bath_size = 64、 epoc= 500,預測框 IOU 設置為 0.4,NMS 設置為 0.5,學習率設為 0.001,優(yōu)化器選擇 Adam 算法。

      CBAM-MobileNetV1-SSD和MobileNetV1-SSD模型的訓練及驗證過程的損失函數(shù)值隨迭代次數(shù)變化如圖6所示,可以看出CBAM-MobileNetV1-SSD模型訓練396個epoch達到收斂,且訓練與驗證的最小損失值分別為1.7023和0.964,而MobileNetV1-SSD模型訓練172個epoch達到收斂,且訓練與驗證的最小損失值分別為1.8794和1.4231。分析比較可知CBAM-MobileNetV1-SSD模型相比較于MobileNetV1-SSD模型在訓練和驗證時都表現(xiàn)出更低的損失值,具有更好的收斂性能和泛化能力,這表明本文的融合CBAM注意力機制改進方案是可行的。

      圖6 不同模型的訓練與驗證損失值曲線對比圖

      3.2 性能測試分析

      為了評價表面缺陷檢測的性能,本文選擇目標識別任務中常用的平均準確率均值(mAP:mean average precision) 作為評估指標。平均準確率均值指軟包鋰電池表面缺陷“defect”( 劃痕、凹坑) 的平均檢測精度,計算表達式如下。同時使用推理時間作為檢測速度評估的指標,模型的大小及參數(shù)量作為裁剪壓縮評估的指標。

      式中:表示準確率;表示召回率;表示預測為正,實際為正;表示預測為正,實際為負;表示預測為負,實際為正;為單個類別的平均精準率;表示個類別的平均值。

      CBAM-MobileNetV1-SSD和MobileNetV1-SSD模型的召回率如圖 7所示,CBAM-MobileNetV1-SSD模型檢測內(nèi)容 “defect”在召回率達到0.8 時有下降的趨勢,而MobileNetV1-SSD模型檢測內(nèi)容“defect”在召回率達到0.75時就已經(jīng)有下降的趨勢。這表明融合CBAM注意機制在達到相同的準確率條件下召回率更高,也就是模型檢測出的正例占比全部的正例更大,具有更好的檢測性。

      圖7 不同模型召回率對比圖

      模型的大小及性能如表 1 所示,可以看出CBAM-MobileNetV1-SSD模型的mAP值達到83.75%,比MobileNetV1-SSD模型提高了2.75%,且其參數(shù)量相比MobileNetV1-SSD模型僅有少量的增加。分析比較可知融合CBAM注意力機制,模型在僅增加少量的參數(shù)量的基礎上具有更好模的檢測精度。

      表1 模型大小及性能對比

      3.3 軟包鋰電池表面缺陷檢測平臺測試分析

      表面缺陷檢測平臺如果圖8所示,由傳送平臺、夾具、環(huán)形光源、光源控制器和相機組成。軟包鋰電池通過電機驅(qū)動傳送到相機正下方,環(huán)形光源為相機連續(xù)采集提供良好的圖像質(zhì)量。相機采用OV5640攝像頭在線采集軟包鋰電池表面圖像,接著對圖像進行預處理及特征提取,再調(diào)用部署在STM32H747的缺陷檢測深度學習模型,對獲取的產(chǎn)品表面圖像進行識別;最后,在LCD顯示屏顯示產(chǎn)品表面缺陷的的檢測結(jié)果。

      圖8 表面缺陷檢測平臺

      圖9 待檢測軟包鋰電池

      因此,本次實驗采用如圖9所示的待檢測軟包鋰電池,該軟包鋰電池表面有兩個缺陷,分別是劃痕和凹坑。在STM32H747微控制器上分別運行部署成功的CBAM-MobileNetV1-SSD和MobileNetV1-SSD模型,對軟包鋰電池表面進行實時缺陷檢測實驗。

      本次實驗中STM32H747運行的CBAM-MobileNetV1-SSD和MobileNetV1-SSD模型對軟包鋰電池表面缺陷檢測實驗結(jié)果如圖10所示,兩種模型對凹坑和劃痕這兩種缺陷均能準確識別出來,CBAM-MobileNetV1-SSD識別的凹坑和劃痕的置信度分別為0.83和0.99,而MobileNetV1-SSD識別的凹坑和劃痕的置信度分別為0.58和0.63,分析本次實驗結(jié)果可知,CBAM-MobileNetV1-SSD模型部署在邊緣設備對軟包鋰電池表面缺陷檢測精度有明顯提升。

      (a) CBAM-MobileNetV1-SSD檢測結(jié)果

      (b) MobileNetV1-SSD檢測結(jié)果

      圖10 軟包鋰電池表面缺陷檢測結(jié)果對比圖

      4 結(jié)語

      本文以STM32H747微控制器為核心,基于MobileNetV1-SSD輕量化模型,研究了一種融合CBAM注意力機制的表面缺陷視覺檢測方法,主要工作包括:1)采用融合CBAM注意力機制的方法對原算法模型的網(wǎng)絡結(jié)構(gòu)進行優(yōu)化,檢測精度提升了2.75%;2)對融合CBAM注意力機制前后的模型算法進行了對比實驗驗證,結(jié)果表明改進算法的模型具有更好的收斂性能和泛化能力;3)在STM32H747微控制器中實現(xiàn)了模型的移植和部署,并搭建檢測平臺進行實驗對比測試與驗證,最終實驗結(jié)果表明融合CBAM注意力機制的MobileNetV1-SSD模型對軟包鋰電池表面缺陷的邊緣側(cè)檢測精度有明顯的提高。

      [1] 鄭亞睿, 蔣三新. 基于雙動態(tài)頭Sparse R-CNN的表面缺陷檢測算法[J]. 儀表技術(shù)與傳感器, 2023(5): 97-105, 111.

      [2] 葛釗明, 胡躍明. 基于改進YOLOv5的鋰電池極片缺陷檢測[J]. 激光雜志, 2023, 44(2): 25-29.

      [3] Li Y T, Huang H S, Xie Q S, et al. Research on a surface defect detection algorithm based on MobileNet-SSD[J]. App Sci, 2018, 8(9): 1678.

      [4] 吳瑞東, 劉冰, 付平, 等. 應用于極致邊緣計算場景的卷積神經(jīng)網(wǎng)絡加速器架構(gòu)設計[J]. 電子與信息學報, 2023, 45(6): 1933-1943.

      [5] 畢鵬程, 羅健欣, 陳衛(wèi)衛(wèi). 輕量化卷積神經(jīng)網(wǎng)絡技術(shù)研究[J]. 計算機工程與應用, 2019, 55(16): 25-35.

      [6] Wang L H, Shi W P, Tang Y H, et al. Transfer Learning-Based lightweight SSD model for detection of pests in citrus[J]. Agronomy, 2023, 13(7): 1710.

      [7] Chen L J, Yao H D, Fu J Y, et al. The classification and localization of crack using lightweight convolutional neural network with CBAM[J]. Eng Struct, 2023, 275, Part B: 115291.

      [8] 楊春, 張睿堯, 黃瀧, 等. 深度神經(jīng)網(wǎng)絡模型量化方法綜述[J]. 工程科學學報, 2023, 45(10): 1613-1629.

      [9] Lucan O I. Seiculescu C C?leanu C D. A brief review of deep neural network implementations for ARM Cortex-M processor[J]. Electronics, 2022, 11(16): 2545.

      Edge computing-based enhancement of mobileNetV-SSD for surface defect visual detection

      Wang Guoping1, Hu Bo2, Chen Zhongsheng1,3, Hou Xinlin3

      (1. College of Electrical and Information Engineering, Hunan University of Technology, Zhuzhou 412007, Hunan China; 2. National Key Lab. of Transient Physics, Nanjing University of Science and Technology, Nanjing 210094, Jiangsu China; 3. College of Automotive Engineering, Changzhou Institute of Technology, Changzhou 213032, Jiangsu China)

      TM930.9

      A

      1003-4862(2024)03-0009-06

      2023-06-27

      國家自然科學基金項目(62101074)

      汪國平(1997- ),男,碩士研究生,研究方向:嵌入式機器視覺、產(chǎn)品缺陷檢測;E-mail:1106766548@qq.com

      陳仲生(1977- ),男,教授,博士,研究方向:狀態(tài)監(jiān)控與故障診斷、工業(yè)機器視覺。E-mail:chenzs@czu.cn

      猜你喜歡
      鋰電池注意力神經(jīng)網(wǎng)絡
      讓注意力“飛”回來
      神經(jīng)網(wǎng)絡抑制無線通信干擾探究
      電子制作(2019年19期)2019-11-23 08:42:00
      “揚眼”APP:讓注意力“變現(xiàn)”
      傳媒評論(2017年3期)2017-06-13 09:18:10
      A Beautiful Way Of Looking At Things
      基于神經(jīng)網(wǎng)絡的拉矯機控制模型建立
      重型機械(2016年1期)2016-03-01 03:42:04
      基于SVM的鋰電池SOC估算
      復數(shù)神經(jīng)網(wǎng)絡在基于WiFi的室內(nèi)LBS應用
      一種多采樣率EKF的鋰電池SOC估計
      基于支持向量機回歸和RBF神經(jīng)網(wǎng)絡的PID整定
      鋰電池百篇論文點評(2014.6.1—2014.7.31)
      翁牛特旗| 镇江市| 会同县| 明光市| 徐水县| 邢台市| 岑溪市| 鸡西市| 辽阳市| 沈丘县| 安塞县| 东兰县| 萨嘎县| 伊宁县| 长垣县| 银川市| 依安县| 潜江市| 阳朔县| 香格里拉县| 中卫市| 栖霞市| 清原| 南充市| 杂多县| 浮山县| 枣强县| 弥勒县| 壶关县| 武城县| 靖边县| 仁怀市| 鄂托克旗| 志丹县| 山丹县| 石楼县| 通道| 河曲县| 桃江县| 商丘市| 常熟市|