【挑戰(zhàn)】
該方案來自某全球領(lǐng)先的鋰電池研發(fā)和制造企業(yè)。面對不斷增加的市場需求,該企業(yè)積極引入了智能制造技術(shù),對多種鋰電池的各個生產(chǎn)環(huán)節(jié)進行調(diào)控與優(yōu)化,提高生產(chǎn)效率,在保持優(yōu)異品質(zhì)的同時突破產(chǎn)能瓶頸。以該企業(yè)的核心產(chǎn)品之一——動力鋰電池為例。動力鋰電池的基本單元是電芯。每一個完備電芯的生產(chǎn)都必須經(jīng)過極其嚴格的褶皺、暗斑、掉料以及絕緣膜異常等瑕疵的缺陷檢測,以保證最終產(chǎn)品的可靠性與安全性。但在大規(guī)模產(chǎn)線上,如果采用人工檢測等傳統(tǒng)方式來執(zhí)行毫米級的缺陷檢測,不僅速度慢、耗時巨大,精細和準確度更是無從談起。即便引入基于工業(yè)相機的計算機圖像輔助檢測等自動化方法,也存在缺乏擴展性和靈活性等問題,無法有效應對新產(chǎn)品導致的新瑕疵形式的檢測,限制了產(chǎn)能。
【解決方案】
為有效應對以上問題,這家企業(yè)在英特爾的支持下,利用AI 方法構(gòu)建全新的動力電池缺陷檢測方案。通過對產(chǎn)能需求的評估,該企業(yè)希望新方案能夠達到單條產(chǎn)線 423FPS(Frame Per Second,幀率)的檢測速度,同時檢測準確率達到 1DPPM(Defect Part Per Million,每百萬的缺陷數(shù)量)。
新方案一方面根據(jù)動力電池產(chǎn)線的實際部署情況,以基于英特爾 架構(gòu)的平臺為基礎(chǔ),構(gòu)建云(總部云數(shù)據(jù)中心)-邊(邊緣計算節(jié)點)- 端(產(chǎn)線工控機、工業(yè)相機)的架構(gòu),并引入英特爾 至強 可擴展處理器、Analytics Zoo 和 OpenVINO 工具套件,以及面向英特爾 架構(gòu)優(yōu)化的 PyTorch 等軟硬件,形成端到端的機器視覺缺陷檢測方案;另一方面,根據(jù)檢測場景的差異,方案中也部署了多種不同的深度學習和機器學習算法模型,讓檢測速度和準確率均獲得了顯著提升。
一、“云 - 邊 - 端” 協(xié)同,構(gòu)建基于機器視覺的缺陷檢測平臺
為構(gòu)建高性能的缺陷檢測平臺,雙方首先從基礎(chǔ)架構(gòu)入手,根據(jù)總部云數(shù)據(jù)中心、各產(chǎn)線的生產(chǎn)管理系統(tǒng)、各類檢測設(shè)備在缺陷檢測流程中的不同作用,以及所處的不同場景帶來的特定需求,設(shè)計出 “云 - 邊 - 端” 協(xié)同的方案。
“云” 端的總部數(shù)據(jù)中心,可以利用強大的計算能力和來自各產(chǎn)線的豐富數(shù)據(jù),根據(jù)生產(chǎn)場景需要進行集中化的模型訓練,再將訓練好的模型發(fā)布給 “邊緣” 和 “端” 側(cè)。
“邊緣” 計算節(jié)點部署在分廠或產(chǎn)線服務器中,主要包括推理服務器、模型管理器以及模型倉庫等組件,用于較重模型的推理,并將推理結(jié)果推送至產(chǎn)線質(zhì)量控制系統(tǒng)中。
“端” 則位于工廠內(nèi)每條生產(chǎn)線上,主要執(zhí)行圖像采集、預處理、預分類及輕量級推理工作。
工業(yè)視覺平臺系統(tǒng)架構(gòu)圖
這一架構(gòu)經(jīng)部署后對提升缺陷檢測效率效果顯著。如上圖所示,首先,方案采用了分層推理的方案。從前文可知,無論哪種目標檢測算法,都會耗費龐大的算力和帶寬(用于數(shù)據(jù)傳輸)資源;且離產(chǎn)線越遠,檢測時延就越高。在新方案中,端側(cè)系統(tǒng)采用開源的 OpenCV 計算機視覺庫對采集的圖像流實施預處理,并將預分類等簡單工作負載部署在基于英特爾 酷睿 i5/i7 處理器的工業(yè) PC 上,且使用輕量級模型進行推理,將結(jié)果直接反饋回產(chǎn)線,應用效率極高。
對于目標檢測、圖像分割等較 “重” 的工作負載,則通過邊緣計算節(jié)點完成。這些節(jié)點由基于第二代英特爾 至強 可擴展處理器的服務器(集群)構(gòu)建,可以從云數(shù)據(jù)中心調(diào)取合適的模型和參數(shù),并通過英特爾提供的統(tǒng)一大數(shù)據(jù)分析及 AI 平臺Analytics Zoo 來構(gòu)建分布式的推理方案。而云端數(shù)據(jù)中心則主要承擔高強度模型訓練、推理以及管理職責。除了由基于第二代英特爾 至強 可擴展處理器的服務器構(gòu)成高性能計算集群外,云端還配備了可擴展的中心存儲數(shù)據(jù)庫,存儲各類中間過程數(shù)據(jù)以及最終模型和參數(shù)。
經(jīng)過本地預處理的海量圖像流匯集到云端后,方案采用Labelme 標注工具對數(shù)據(jù)集中的圖像進行標注,并將標注后的特征類別及位置信息傳輸?shù)接嬎慵褐羞M行訓練和推理。
Labelme 工具不僅可以標注各種形狀,還具備圖像分類、目標檢測、場景分割、實例分割、視頻標注等功能,可以很好覆蓋動力電池缺陷檢測的范圍。更重要的是,該工具支持像素級的細粒度標注,有助于提升標注效率與準確度。
值得一提的是,云端的算力雖然充沛,但其遠離產(chǎn)線,實時性會受到一定影響。新方案在云端引入了面向英特爾 架構(gòu)優(yōu)化的 PyTorch 框架,以及 OpenVINO 工具套件來進一步加速推理過程。原生 PyTorch 深度學習框架內(nèi)置了強大的視覺工具包 torchvision,包含目前流行的數(shù)據(jù)集、模型結(jié)構(gòu)和常用的圖片轉(zhuǎn)換工具,可輕松應對各種圖像檢測場景。新框架不僅繼承了原生 PyTorch 簡潔、靈活的特點,還引入面向深度神經(jīng)網(wǎng)絡(luò)的英特爾 數(shù)學核心函數(shù)庫(Intel Math Kernel Library forDeep Neural Networks, 英特爾 MKL-DNN),其包含的高度矢量化、線程化的構(gòu)建模塊,能有效提高框架在基于英特爾 架構(gòu)的處理器上的運行速度,配合 OpenVINO 工具套件所提供的模型優(yōu)化器、指令集優(yōu)化等功能,令新方案獲得了非常好的推理性能。
最后,Analytics Zoo 的引入使 “云 - 邊 - 端” 協(xié)同架構(gòu)的運行變得更為順暢。這一架構(gòu)將 Spark、PyTorch、OpenVINO 工具套件以及其它軟件和框架,無縫集成到同一管道中,有助于新方案將數(shù)據(jù)存儲、數(shù)據(jù)處理以及訓練推理的流水線整合到統(tǒng)一的基礎(chǔ)設(shè)施,不僅大幅提升新方案的部署效率、資源利用率和可擴展性,也能減少硬件管理以及系統(tǒng)運維成本。
二、針對不同檢測場景,采用適宜檢測算法
在這家全球領(lǐng)先的鋰電池生產(chǎn)制造企業(yè)的動力電池產(chǎn)線中,有三種主要的動力電池缺陷檢測場景:絕緣膜間隙檢測、正負極偏差檢測以及絕緣膜異常問題檢測。不同的場景對檢測環(huán)境、檢測速度、檢測精度以及檢測參數(shù)都有不同的要求。通過縝密的技術(shù)分析,英特爾幫助該企業(yè)針對不同檢測場景部署了不同的目標檢測模型。
■ 絕緣膜間隙檢測
絕緣膜是電池充放電時鋰離子傳輸?shù)闹匾橘|(zhì),其間隙過大或過小都會影響電池的性能,因此在生產(chǎn)中需要嚴格把控絕緣膜的間隙范圍。但如圖所示,絕緣膜的厚度僅為毫米級別,對檢測精度要求高。
絕緣膜間隙檢測圖
英特爾在方案中建議采用 Mask R-CNN 目標檢測模型,來實現(xiàn)精細的絕緣膜間隙檢測流程。Mask R-CNN 模型是 FasterRCNN 算法模型的一個分支,特點是可對檢測目標實施逐像素的分類,進而確定圖像中檢測目標的類別和位置,并對其進行分割,尤其適合精密檢測場景的使用。采用 Mask R-CNN 模型對圖片進行像素級分類,分割出檢測邊緣,再通過 OpenCV測量實現(xiàn)產(chǎn)線所需的 0.3-3.9mm 的測量需求,超過該范圍即可確定為缺陷電池。
■ 正負極偏差檢測
在動力鋰電池生產(chǎn)過程中,正極片、絕緣膜、負極片三層材料會疊壓在一起進行卷繞,正常的電池正負極需交替出現(xiàn),且個數(shù)一定。如圖所示,圖片中細長的為陰極,粗的為陽極。如果出現(xiàn)單個極連續(xù)出現(xiàn)或者個數(shù)不符情況,電池即可被視為存在缺陷,需及時進行自動糾偏調(diào)整來控制質(zhì)量,這對實時性的要求非常高,處理延遲要求在數(shù)十毫秒內(nèi)。
正負極片偏差檢測圖
英特爾在方案中建議采用輕量級快速目標檢測模型——YOLOv3來進行正負極偏差檢測。如前文(第14頁 “YOLO算法” 部分)所述,YOLO算法模型的主要特點就是檢測速度高,而YOLO v3模型作為其輕量級進階版本,在檢測準確率和推理速度上有了進一步的提升,尤其適用于諸如動力電池產(chǎn)線正負極偏差檢測所需的實時性和小型目標敏感檢測。
■絕緣膜異常問題檢測
絕緣膜異常問題檢測主要用于避免動力電池中的絕緣膜異常,導致正負極接觸而引發(fā)短路事故。如圖所示,絕緣膜非常薄,因此該檢測對精細度和準確率要求非常高。在經(jīng)典的深度神經(jīng)網(wǎng)絡(luò)中,網(wǎng)絡(luò)層數(shù)越多,能夠提取到的圖像特征越豐富,也更符合該類檢測的需求。但隨著網(wǎng)絡(luò)深度的增加,退化(Degradation)問題也隨之產(chǎn)生,即準確率會先上升直至飽和,如果繼續(xù)增加深度,準確率反而會下降。
絕緣膜破損、丟失、褶皺問題檢測實例
ResNet 可有效解決這一問題。其由多個殘差塊和恒等映射塊拼接而成,與一般深度神經(jīng)網(wǎng)絡(luò)相比,能有效避免深層網(wǎng)絡(luò)的梯度消失和退化問題。因此,英特爾在方案中建議采用經(jīng)典的ResNet50 殘差網(wǎng)絡(luò)實施訓練。
三、混合學習方法和遷移學習訓練,提升檢測效率和準確率
經(jīng)過產(chǎn)線檢測實踐發(fā)現(xiàn),通過單一的深度學習方法獲得更優(yōu)的準確率與召回率,需要手工對 logits 進行適當?shù)恼{(diào)整。這無疑給整個檢測過程帶來了一定的不確定性,并增加了使用難度。為此,英特爾在方案中推薦采用機器學習中的支持向量機(Support Vector Machine, SVM)分類器與 ResNet50 殘差網(wǎng)絡(luò)一起,組成混合模型來實施檢測,同樣也可以達到類似的優(yōu)化效果。SVM 分類器能夠依據(jù)支持向量與分類超平面間隔最大化的原則,通過多次訓練迭代,尋求最優(yōu)的分類超平面來實現(xiàn)數(shù)據(jù)分類。針對絕緣膜異常檢測中的多分類(multiple-class)問題,SVM 能將其分解為多個二分類問題,再構(gòu)造多個分類器來解決。ResNet50+SVM 的組合方案,不僅很好地解決了絕緣膜破損、丟失、褶皺等異常問題的檢測難題,還大幅提升了檢測效率和準確率。模型的檢測效率和準確度除了與選擇合適的模型相關(guān)外,還需要有充足的訓練數(shù)據(jù)。一般情況下,要滿足實用要求,數(shù)據(jù)集量級需達到百萬級甚至千萬級。但在實際產(chǎn)線中,如此高量級的數(shù)據(jù)集很難收集,且采用大數(shù)據(jù)集從頭訓練也需要耗費大量時間及資源。
【方案價值】
創(chuàng)新的架構(gòu)以及適宜檢測算法的運用,使該企業(yè)的電池生產(chǎn)全流程缺陷檢測方案一上線,就獲得了良好的效果。實際部署后,單條產(chǎn)線的檢測速度和準確度都超過了預期指標。
在滿足產(chǎn)線所需的檢測精度和檢測速度之外,新方案在目標檢測模型的創(chuàng)新應用上也獲得顯著效果。以 ResNet50 殘差網(wǎng)絡(luò)和 SVM 分類器的混合模型在絕緣膜異常問題檢測場景中的使用效果為例,在驗證測試中,先以 1,000 張圖片作為樣本集,在 ResNet50 模型中進行模型微調(diào)得到基準值(97.85% 的準確率和 94% 的召回率),然后在此基礎(chǔ)上分別進行參數(shù)調(diào)整,以及使用 ResNet50+SVM 的混合模型進行訓練。驗證結(jié)果如圖 2-1-16 所示,在 ResNet50 模型中進行參數(shù)調(diào)整優(yōu)化后,可將準確率提高至 99%,將召回率提高至 97.56%,而加入SVM 分類器后,更是將準確率提升至 99.12%,將召回率提升至 99.16%,檢測精度提升顯著。
審核編輯 :李倩
-
鋰電池
+關(guān)注
關(guān)注
260文章
8108瀏覽量
170196 -
機器視覺
+關(guān)注
關(guān)注
162文章
4373瀏覽量
120336 -
智能制造
+關(guān)注
關(guān)注
48文章
5564瀏覽量
76343
原文標題:動力鋰電池全生產(chǎn)流程缺陷檢測方案
文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論