基于机器视觉的锂电池正负极冗余度缺陷检测
2021-12-29陈家智吴永明
陈家智,吴永明
(广东工业大学机电工程学院,广州 510006)
0 引言
在锂电池充电过程中,锂离子会从电池的正极往负极移动,当负极没有足够的能力容纳全部正极过来的锂离子时,就会出现析锂现象[1]。析出的锂离子慢慢形成了会刺穿隔膜的锂枝晶,导致电池内部短路,引起热失控,严重时可能会引起爆炸等重大事故[2]。为了防止锂枝晶的出现,要求锂电池的负极比正极有一定长度的冗余,并且电极要排列整齐,不能出现较大程度的弯曲和变形。锂电池的制造工艺是影响电池性能的主要因素。制造锂电池的工艺流程主要有以下几道工序:混料、涂布、干燥、辊压、卷绕或叠片、注液、封口、化成和成型等[3]。在卷绕或叠片的过程中,电池正负极片的相对位置会产生一定波动,使正负极片的边界距离发生变化,可能会有负极冗余度过大或无冗余度等质量问题的发生[4]。
近年来,机器视觉技术已被大量运用到工业检测当中,在锂电池负极片冗余区域的缺陷检测方面也有一些研究成果和应用。周佳禾等[5]提出了一种以卷积神经网络(CNN)为核心的锂电池电极缺陷检测算法,构建轻量级的CNN来提取图像的相关特征信息,并使用支持向量机(SVM)得出最终的预测结果,检测的准确性较高,但算法只识别出了有无褶皱缺陷。王东昆等[6]运用图像识别技术检测锂电池的正负极距离,通过灰度拉伸、阈值分割、角点检测等技术处理后,计算得出电池的正负极覆盖率,但该算法需要从多方向进行图像采样,较为耗工耗时。葛春平等[7]提出了一种叠片式锂电池的射线检测算法,算法重点描述了对叠片电池的射线影像分析,但算法的抗干扰性略微不足。
针对上述情况,本文提出一种锂电池正负极冗余度缺陷检测算法,先采用多种图像处理技术提取出冗余区域,再利用LSD(Line Segment Detector)直线检测技术寻找目标冗余量线段,最后运用SVM进行分类,得到检测结果。实验结果表明,相对于文献[6]中算法,本文算法操作更为简洁,只需单方向取样检测,减少了一些不必要的采样和检测时间;相对于文献[5]和文献[7]中算法,本文算法会精确检测每一段冗余度数值,更能准确显示各部位实际的质量状况。
1 锂电池正负极冗余度缺陷检测
实验图像均通过X射线检查机采集,图像会因相机的配置、外界的震动、光管的衰减以及中间的多级传输和处理等造成质量受损。因此,需要先提升图像质量,排除非目标部位与干扰项,再进行目标检测。锂电池正负极冗余度缺陷检测算法流程如图1所示。
图1 锂电池正负极冗余度检测算法流程
图像预处理阶段,对X射线原始图像进行感兴趣区域提取后,在频域上进行图像降噪,得到预处理后图像。
冗余区域提取阶段,对预处理后的图像进行图像分割,把电池的正负极区域分离开,得到冗余区域图像。
冗余度检测阶段,先在冗余区域图像中寻找出电池正负极片端点,再根据端点确定目标冗余线段,最后得出冗余度数值。
分类器设计阶段,通过提取得到的特征信息,进行分类器的设计。
1.1 图像预处理
为减少不必要的图像处理时间,先要进行ROI的提取,如图2a所示,再把图像转化为便于后续处理的灰度图像。
一般的图像去噪多在空域上进行,通过灰度图像与均值滤波、中值滤波、高斯滤波等做卷积操作,得到平滑图像,减少噪声干扰。由于所获取X射线图像的噪声不以椒盐噪声为主,而频域上的图像去噪对非椒盐噪声往往会有更好的效果[8],故采取在频域上的去噪方式。
常用的频域低通滤波器有巴特沃斯低通滤波器(BLPF)和高斯低通滤波器(GLPF)两种[9]。本实验选取了BLPF对图像进行频域去噪。巴特沃斯低通滤波器如公式1所示。其中, (u,v)为点坐标,D(u,v)为点(u,v)到中心点的距离,D0为截止距离,n为滤波器的阶数。经BLPF去噪后的图像如图2b所示。
(1)
(a) ROI图像 (b) 去噪后图像图2 去噪前后对比图
1.2 冗余区域提取
电池正负极的粘连状况对冗余线段的提取有很大的干扰,需要先把正负极区域分割开,得到冗余区域。本阶段总共有4步操作:①边缘检测;②区域填充;③提取正极区域;④提取冗余区域。
(1) 边缘检测
电池极片图像的信息重点是极片边缘的线段特征,为了增强图像的细节部分,需要对图像进行边缘检测。边缘检测常用的滤波算子有Laplacian算子、Sobel算子和Prewitt算子[10]。Laplacian算子是最简单的各向同性二阶微分线性算子,具有旋转不变性[11]。本实验图像经Laplacian算子(图3)处理后得到了很好的锐化效果。
图3 Laplacian算子模板
具有45°的旋转不变性。图像经过Laplacian算子锐化后效果如图4a所示。
(2) 区域填充
图像经过边缘检测之后,电池极片区域已被初步分割成两部分。由于这两部分内部并不连通,无法直接找到区域轮廓,所以需要对区域进行填充操作。区域填充将采用形态学操作进行处理,经多次形态学操作之后,两区域都得到了很好的填充,区域轮廓连续,且两部分也不存在粘连现象。填充后的图像如图4b所示。
(3) 提取正极区域
观察图4b可以发现,经形态学操作后,冗余区域轮廓对比原图会有较大的缺失现象,而正极区域轮廓却变化不大。因此,为提取冗余区域,需要先对正极区域进行提取。提取正极区域,需要用到轮廓检测技术,经轮廓检测后提取到的正极区域如图4c白色部分所示。
(4) 提取冗余区域
得到正极区域图像后,将正极区域图像与降噪后的ROI图像进行叠加操作,得到冗余区域图像。如图4d所示,冗余区域已被很好地提取出来,排除了来自正极区域的干扰。
(a) 锐化后图像 (b) 填充后图像
(c) 正极区域 (d) 冗余区域图4 冗余区域提取过程
1.3 冗余度检测
目标冗余线段是一些横向的线段,需要通过横向的空域滤波算子对图像进行过滤操作来获取。如图5a所示,冗余区域图像经过空域滤波算子过滤后,得到初步的横向线段图像。图像中仍保留许多非目标的细短线段,为了排除这些干扰,需使用形态学操作,利用腐蚀操作去除干扰线段,图5b为去除干扰线段后的图像。排除干扰后,通过目测已可以观察到所需的冗余线段。
(a) 初步横向线段 (b) 去除干扰后横向线段图5 横向线段图
为提取目标线段信息,需要使用直线检测技术。常用的直线检测方法有霍夫变换直线检测法[12]和LSD直线检测法[13]两种,本文算法采用检测速度更快的后者。经过LSD直线检测后,检测出了图中有m根线段,如图6所示,m是大于目标数量的。原因在于LSD将线段较粗的部分判断成一些线段相交的部分,导致线段的检测数量增多。为了解决这个问题,需要先找出正负极片端点,再根据端点得出目标冗余线段。
图6 LSD检测结果
通过LSD,从图6中获取了m根线段、2m个端点,目标端点在这2m个点当中。第1步,对这2m个点按纵坐标从小到大进行排序。第2步,对2m个点进行分组,把它们分成与目标线段数量相符。在正常情况下,同层端点的纵坐标差值会很小,不同层端点的纵坐标差值会略大。因此,把纵坐标之差小的点划分为一组。第3步,找出每组点中横坐标最小和最大的点,这些点即为目标正负极片的端点(图7a),将同组极片端点连接起来,得到目标冗余线段(图7b)。最后,通过每组正负极片端点的坐标即可计算出每条冗余线段的长度(即冗余度)。
(a) 正负极片端点 (b) 目标冗余线段图7 冗余线段提取
1.4 分类器设计
根据获取的冗余线段,提取线段的长度特征和角度特征,再进行分类器的设计,实现对锂电池质量的快速准确判断。
1.4.1 特征提取
对于长度特征,需要提取的是最大冗余长度lmax和最小冗余长度lmin。设冗余线段共有n条,第i(i∈[1,n])条冗余线段的左右端点坐标分别为(xi1,yi1)、(xi2,yi2),冗余长度为li,则:
(2)
lmax=max{li}
(3)
lmin=min{li}
(4)
对于角度特征,需要提取的是最大弯折角度amax和角度标准差astdev。设第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 分类器选择
常用的分类器有逻辑回归、朴素贝叶斯、决策树、支持向量机和集成模型等。对于简单的二分类问题,SVM往往更加高效准确。因此,本实验选取了SVM作为分类器。
2 实验结果及分析
本实验在电脑(Intel(R)Core(TM)i5-8250U CPU@1.60GHz 1.80GHz,8G运存,Windows10-64bit)环境下运行,代码使用Visual Studio 2017集成开发环境和OpenCV 3.4.5计算机视觉库实现。
本实验采集的锂电池X射线图像的层数为12层,原始图像大小为1000×1000,ROI图像大小为320×320。图像样本总量为139个,检测结果如表1所示,良品检测结果图与次品检测结果图如图8、图9所示。
表1 实验结果
续表
图8 良品检测结果 图9 次品检测结果
图像符合检测要求的数量为134个,图像检测出异常的数量为5个。图像检测出异常主要有以下两个原因:①电池摆放不正,出现过大的位置偏离,在ROI图像提取的时候无法准确提取到目标部位;②在图像采集的时候,有外界异物进入,遮挡了部分目标部位,改变了目标图像原本的主要结构。检测出异常的产品需要重新采样再检测。
在符合检测要求的图像中,被正确检测的数量为132个,被错误检测的数量为2个。对于被错误检测的情况,主要是因为在过滤干扰项的时候,把一些原本就短的目标线段也一并完全腐蚀掉,导致后续的直线检测检测不到线段,实为良品最后却被检测鉴定为次品。
整体检测时长基本稳定在670~790 ms之间,平均检测时长721 ms。普通锂电池生产线每分钟产出数(PPM)一般为30~35个,约2 s生产一个锂电池产品,因此,算法满足双角模式的在线检测需求。
3 结论
针对锂电池正负极冗余度缺陷的特点,基于机器视觉技术,提出了一种锂电池正负极冗余度缺陷在线检测算法。算法通过频域和空域相结合的方式进行图像处理,间接提取出完整的冗余区域,利用正负极片端点确定目标冗余线段,再使用SVM进行分类操作。实验结果显示,该算法的准确率达98.5%,检测时长稳定在670 ms到790 ms之间,平均运行时间为721 ms。实验表明,该算法具有准确度高、稳定性好、运行速度快等优点,符合工业检测上的应用需求,有望运用在实际的锂电池质量检测当中。