陳家智,吳永明
(廣東工業(yè)大學(xué)機(jī)電工程學(xué)院,廣州 510006)
在鋰電池充電過程中,鋰離子會從電池的正極往負(fù)極移動,當(dāng)負(fù)極沒有足夠的能力容納全部正極過來的鋰離子時,就會出現(xiàn)析鋰現(xiàn)象[1]。析出的鋰離子慢慢形成了會刺穿隔膜的鋰枝晶,導(dǎo)致電池內(nèi)部短路,引起熱失控,嚴(yán)重時可能會引起爆炸等重大事故[2]。為了防止鋰枝晶的出現(xiàn),要求鋰電池的負(fù)極比正極有一定長度的冗余,并且電極要排列整齊,不能出現(xiàn)較大程度的彎曲和變形。鋰電池的制造工藝是影響電池性能的主要因素。制造鋰電池的工藝流程主要有以下幾道工序:混料、涂布、干燥、輥壓、卷繞或疊片、注液、封口、化成和成型等[3]。在卷繞或疊片的過程中,電池正負(fù)極片的相對位置會產(chǎn)生一定波動,使正負(fù)極片的邊界距離發(fā)生變化,可能會有負(fù)極冗余度過大或無冗余度等質(zhì)量問題的發(fā)生[4]。
近年來,機(jī)器視覺技術(shù)已被大量運(yùn)用到工業(yè)檢測當(dāng)中,在鋰電池負(fù)極片冗余區(qū)域的缺陷檢測方面也有一些研究成果和應(yīng)用。周佳禾等[5]提出了一種以卷積神經(jīng)網(wǎng)絡(luò)(CNN)為核心的鋰電池電極缺陷檢測算法,構(gòu)建輕量級的CNN來提取圖像的相關(guān)特征信息,并使用支持向量機(jī)(SVM)得出最終的預(yù)測結(jié)果,檢測的準(zhǔn)確性較高,但算法只識別出了有無褶皺缺陷。王東昆等[6]運(yùn)用圖像識別技術(shù)檢測鋰電池的正負(fù)極距離,通過灰度拉伸、閾值分割、角點(diǎn)檢測等技術(shù)處理后,計算得出電池的正負(fù)極覆蓋率,但該算法需要從多方向進(jìn)行圖像采樣,較為耗工耗時。葛春平等[7]提出了一種疊片式鋰電池的射線檢測算法,算法重點(diǎn)描述了對疊片電池的射線影像分析,但算法的抗干擾性略微不足。
針對上述情況,本文提出一種鋰電池正負(fù)極冗余度缺陷檢測算法,先采用多種圖像處理技術(shù)提取出冗余區(qū)域,再利用LSD(Line Segment Detector)直線檢測技術(shù)尋找目標(biāo)冗余量線段,最后運(yùn)用SVM進(jìn)行分類,得到檢測結(jié)果。實(shí)驗(yàn)結(jié)果表明,相對于文獻(xiàn)[6]中算法,本文算法操作更為簡潔,只需單方向取樣檢測,減少了一些不必要的采樣和檢測時間;相對于文獻(xiàn)[5]和文獻(xiàn)[7]中算法,本文算法會精確檢測每一段冗余度數(shù)值,更能準(zhǔn)確顯示各部位實(shí)際的質(zhì)量狀況。
實(shí)驗(yàn)圖像均通過X射線檢查機(jī)采集,圖像會因相機(jī)的配置、外界的震動、光管的衰減以及中間的多級傳輸和處理等造成質(zhì)量受損。因此,需要先提升圖像質(zhì)量,排除非目標(biāo)部位與干擾項(xiàng),再進(jìn)行目標(biāo)檢測。鋰電池正負(fù)極冗余度缺陷檢測算法流程如圖1所示。
圖1 鋰電池正負(fù)極冗余度檢測算法流程
圖像預(yù)處理階段,對X射線原始圖像進(jìn)行感興趣區(qū)域提取后,在頻域上進(jìn)行圖像降噪,得到預(yù)處理后圖像。
冗余區(qū)域提取階段,對預(yù)處理后的圖像進(jìn)行圖像分割,把電池的正負(fù)極區(qū)域分離開,得到冗余區(qū)域圖像。
冗余度檢測階段,先在冗余區(qū)域圖像中尋找出電池正負(fù)極片端點(diǎn),再根據(jù)端點(diǎn)確定目標(biāo)冗余線段,最后得出冗余度數(shù)值。
分類器設(shè)計階段,通過提取得到的特征信息,進(jìn)行分類器的設(shè)計。
為減少不必要的圖像處理時間,先要進(jìn)行ROI的提取,如圖2a所示,再把圖像轉(zhuǎn)化為便于后續(xù)處理的灰度圖像。
一般的圖像去噪多在空域上進(jìn)行,通過灰度圖像與均值濾波、中值濾波、高斯濾波等做卷積操作,得到平滑圖像,減少噪聲干擾。由于所獲取X射線圖像的噪聲不以椒鹽噪聲為主,而頻域上的圖像去噪對非椒鹽噪聲往往會有更好的效果[8],故采取在頻域上的去噪方式。
常用的頻域低通濾波器有巴特沃斯低通濾波器(BLPF)和高斯低通濾波器(GLPF)兩種[9]。本實(shí)驗(yàn)選取了BLPF對圖像進(jìn)行頻域去噪。巴特沃斯低通濾波器如公式1所示。其中, (u,v)為點(diǎn)坐標(biāo),D(u,v)為點(diǎn)(u,v)到中心點(diǎn)的距離,D0為截止距離,n為濾波器的階數(shù)。經(jīng)BLPF去噪后的圖像如圖2b所示。
(1)
(a) ROI圖像 (b) 去噪后圖像圖2 去噪前后對比圖
電池正負(fù)極的粘連狀況對冗余線段的提取有很大的干擾,需要先把正負(fù)極區(qū)域分割開,得到冗余區(qū)域。本階段總共有4步操作:①邊緣檢測;②區(qū)域填充;③提取正極區(qū)域;④提取冗余區(qū)域。
(1) 邊緣檢測
電池極片圖像的信息重點(diǎn)是極片邊緣的線段特征,為了增強(qiáng)圖像的細(xì)節(jié)部分,需要對圖像進(jìn)行邊緣檢測。邊緣檢測常用的濾波算子有Laplacian算子、Sobel算子和Prewitt算子[10]。Laplacian算子是最簡單的各向同性二階微分線性算子,具有旋轉(zhuǎn)不變性[11]。本實(shí)驗(yàn)圖像經(jīng)Laplacian算子(圖3)處理后得到了很好的銳化效果。
圖3 Laplacian算子模板
具有45°的旋轉(zhuǎn)不變性。圖像經(jīng)過Laplacian算子銳化后效果如圖4a所示。
(2) 區(qū)域填充
圖像經(jīng)過邊緣檢測之后,電池極片區(qū)域已被初步分割成兩部分。由于這兩部分內(nèi)部并不連通,無法直接找到區(qū)域輪廓,所以需要對區(qū)域進(jìn)行填充操作。區(qū)域填充將采用形態(tài)學(xué)操作進(jìn)行處理,經(jīng)多次形態(tài)學(xué)操作之后,兩區(qū)域都得到了很好的填充,區(qū)域輪廓連續(xù),且兩部分也不存在粘連現(xiàn)象。填充后的圖像如圖4b所示。
(3) 提取正極區(qū)域
觀察圖4b可以發(fā)現(xiàn),經(jīng)形態(tài)學(xué)操作后,冗余區(qū)域輪廓對比原圖會有較大的缺失現(xiàn)象,而正極區(qū)域輪廓卻變化不大。因此,為提取冗余區(qū)域,需要先對正極區(qū)域進(jìn)行提取。提取正極區(qū)域,需要用到輪廓檢測技術(shù),經(jīng)輪廓檢測后提取到的正極區(qū)域如圖4c白色部分所示。
(4) 提取冗余區(qū)域
得到正極區(qū)域圖像后,將正極區(qū)域圖像與降噪后的ROI圖像進(jìn)行疊加操作,得到冗余區(qū)域圖像。如圖4d所示,冗余區(qū)域已被很好地提取出來,排除了來自正極區(qū)域的干擾。
(a) 銳化后圖像 (b) 填充后圖像
(c) 正極區(qū)域 (d) 冗余區(qū)域圖4 冗余區(qū)域提取過程
目標(biāo)冗余線段是一些橫向的線段,需要通過橫向的空域?yàn)V波算子對圖像進(jìn)行過濾操作來獲取。如圖5a所示,冗余區(qū)域圖像經(jīng)過空域?yàn)V波算子過濾后,得到初步的橫向線段圖像。圖像中仍保留許多非目標(biāo)的細(xì)短線段,為了排除這些干擾,需使用形態(tài)學(xué)操作,利用腐蝕操作去除干擾線段,圖5b為去除干擾線段后的圖像。排除干擾后,通過目測已可以觀察到所需的冗余線段。
(a) 初步橫向線段 (b) 去除干擾后橫向線段圖5 橫向線段圖
為提取目標(biāo)線段信息,需要使用直線檢測技術(shù)。常用的直線檢測方法有霍夫變換直線檢測法[12]和LSD直線檢測法[13]兩種,本文算法采用檢測速度更快的后者。經(jīng)過LSD直線檢測后,檢測出了圖中有m根線段,如圖6所示,m是大于目標(biāo)數(shù)量的。原因在于LSD將線段較粗的部分判斷成一些線段相交的部分,導(dǎo)致線段的檢測數(shù)量增多。為了解決這個問題,需要先找出正負(fù)極片端點(diǎn),再根據(jù)端點(diǎn)得出目標(biāo)冗余線段。
圖6 LSD檢測結(jié)果
通過LSD,從圖6中獲取了m根線段、2m個端點(diǎn),目標(biāo)端點(diǎn)在這2m個點(diǎn)當(dāng)中。第1步,對這2m個點(diǎn)按縱坐標(biāo)從小到大進(jìn)行排序。第2步,對2m個點(diǎn)進(jìn)行分組,把它們分成與目標(biāo)線段數(shù)量相符。在正常情況下,同層端點(diǎn)的縱坐標(biāo)差值會很小,不同層端點(diǎn)的縱坐標(biāo)差值會略大。因此,把縱坐標(biāo)之差小的點(diǎn)劃分為一組。第3步,找出每組點(diǎn)中橫坐標(biāo)最小和最大的點(diǎn),這些點(diǎn)即為目標(biāo)正負(fù)極片的端點(diǎn)(圖7a),將同組極片端點(diǎn)連接起來,得到目標(biāo)冗余線段(圖7b)。最后,通過每組正負(fù)極片端點(diǎn)的坐標(biāo)即可計算出每條冗余線段的長度(即冗余度)。
(a) 正負(fù)極片端點(diǎn) (b) 目標(biāo)冗余線段圖7 冗余線段提取
根據(jù)獲取的冗余線段,提取線段的長度特征和角度特征,再進(jìn)行分類器的設(shè)計,實(shí)現(xiàn)對鋰電池質(zhì)量的快速準(zhǔn)確判斷。
1.4.1 特征提取
對于長度特征,需要提取的是最大冗余長度lmax和最小冗余長度lmin。設(shè)冗余線段共有n條,第i(i∈[1,n])條冗余線段的左右端點(diǎn)坐標(biāo)分別為(xi1,yi1)、(xi2,yi2),冗余長度為li,則:
(2)
lmax=max{li}
(3)
lmin=min{li}
(4)
對于角度特征,需要提取的是最大彎折角度amax和角度標(biāo)準(zhǔn)差astdev。設(shè)第i(i∈[1,n])條冗余線段與水平線的夾角為ai,平均角度為amean,則:
amax=max{ai}
(5)
(6)
(7)
每次檢測都會計算lmax、lmin、amax、astdev這四個特征信息,并將它們組成一個特征向量,特征向量為:
featvec=[lmax,lmin,amax,astdev]
(8)
1.4.2 分類器選擇
常用的分類器有邏輯回歸、樸素貝葉斯、決策樹、支持向量機(jī)和集成模型等。對于簡單的二分類問題,SVM往往更加高效準(zhǔn)確。因此,本實(shí)驗(yàn)選取了SVM作為分類器。
本實(shí)驗(yàn)在電腦(Intel(R)Core(TM)i5-8250U CPU@1.60GHz 1.80GHz,8G運(yùn)存,Windows10-64bit)環(huán)境下運(yùn)行,代碼使用Visual Studio 2017集成開發(fā)環(huán)境和OpenCV 3.4.5計算機(jī)視覺庫實(shí)現(xiàn)。
本實(shí)驗(yàn)采集的鋰電池X射線圖像的層數(shù)為12層,原始圖像大小為1000×1000,ROI圖像大小為320×320。圖像樣本總量為139個,檢測結(jié)果如表1所示,良品檢測結(jié)果圖與次品檢測結(jié)果圖如圖8、圖9所示。
表1 實(shí)驗(yàn)結(jié)果
續(xù)表
圖8 良品檢測結(jié)果 圖9 次品檢測結(jié)果
圖像符合檢測要求的數(shù)量為134個,圖像檢測出異常的數(shù)量為5個。圖像檢測出異常主要有以下兩個原因:①電池擺放不正,出現(xiàn)過大的位置偏離,在ROI圖像提取的時候無法準(zhǔn)確提取到目標(biāo)部位;②在圖像采集的時候,有外界異物進(jìn)入,遮擋了部分目標(biāo)部位,改變了目標(biāo)圖像原本的主要結(jié)構(gòu)。檢測出異常的產(chǎn)品需要重新采樣再檢測。
在符合檢測要求的圖像中,被正確檢測的數(shù)量為132個,被錯誤檢測的數(shù)量為2個。對于被錯誤檢測的情況,主要是因?yàn)樵谶^濾干擾項(xiàng)的時候,把一些原本就短的目標(biāo)線段也一并完全腐蝕掉,導(dǎo)致后續(xù)的直線檢測檢測不到線段,實(shí)為良品最后卻被檢測鑒定為次品。
整體檢測時長基本穩(wěn)定在670~790 ms之間,平均檢測時長721 ms。普通鋰電池生產(chǎn)線每分鐘產(chǎn)出數(shù)(PPM)一般為30~35個,約2 s生產(chǎn)一個鋰電池產(chǎn)品,因此,算法滿足雙角模式的在線檢測需求。
針對鋰電池正負(fù)極冗余度缺陷的特點(diǎn),基于機(jī)器視覺技術(shù),提出了一種鋰電池正負(fù)極冗余度缺陷在線檢測算法。算法通過頻域和空域相結(jié)合的方式進(jìn)行圖像處理,間接提取出完整的冗余區(qū)域,利用正負(fù)極片端點(diǎn)確定目標(biāo)冗余線段,再使用SVM進(jìn)行分類操作。實(shí)驗(yàn)結(jié)果顯示,該算法的準(zhǔn)確率達(dá)98.5%,檢測時長穩(wěn)定在670 ms到790 ms之間,平均運(yùn)行時間為721 ms。實(shí)驗(yàn)表明,該算法具有準(zhǔn)確度高、穩(wěn)定性好、運(yùn)行速度快等優(yōu)點(diǎn),符合工業(yè)檢測上的應(yīng)用需求,有望運(yùn)用在實(shí)際的鋰電池質(zhì)量檢測當(dāng)中。