技术领域
[0001] 本
发明涉及
计算机视觉、深度学习技术领域,具体涉及一种基于自适应深度学习的新能源锂电池表面缺陷检测方法。
背景技术
[0002] 锂电池广泛的应用于移动设备、新能源
汽车、家电等领域,为我们的生活带来了极大的便捷。锂电池具有
能量密度高、使用寿命长自放电率低的特点,其一般是使用锂
合金为
负极材料、使用非
水电解质溶液的电池。对于软
包装电池一般在业态溶液套上
聚合物外壳,并在结构上采用
铝塑膜进行包装,正是由于软包装的特点,在企业的生产过程中常常由于密封不严、不均匀,或者是生产过程中的磕碰都会导致电池表面出现凸包缺陷,这种缺陷严重的影响了电池的安全性、使用寿命和性能,必须对锂电池表面缺陷,尤其是凸包现象进行严格检查。
[0003] 一些小型锂电池企业的主要检测方式是人工进行质检,使电池旋转一周,然后通过人眼进行观察,这种方式效率极低、误检率高。因此,开始出现基于
图像处理的锂电池检测研究。
[0004] 一般的锂电池,例如18650锂电池,或类似的柱状锂电池都需要连续采集各个柱面的影像来得到完整的结果,一般较为先进的采集设备可以通过三至四张采集图像进行拼接得到完整的柱面图像。
[0005] 一些研究提出的采用相机加深度学习的方式对电池外观进行检查,这种方式需要大量的数据集标注,同时过度依赖三维点
云信息,并且受数据集的标注影响很大。目前采用深度学习的方法主要是先获得电池三维点云模板,然后进行模板匹配的方式进行缺陷检查,之后生成标注,这种检测方式很不稳定、速度慢、且对于微小的凸包缺陷无法检测,导致检测速度慢、漏检率高。
[0006] 另一些研究提出用几十余种打光方式综合得到缺陷,以清华大学洛阳高端装备研究院的最新产品为例。该设备使用四百余种
光源,则相机需要连续采集足够多的图像才能保证每种光源的照射后的图像都能被捕捉。由于光控系统复杂且相机
帧率存在技术限制,该方法检测标称时间为四分之一秒左右,但该系统明显无法调用所有光源,且无法直接通过单种光源的
图像采集来得到结果。此类系统参数过于复杂,在生产中、维护时调参和校准的工作费时费
力,且无法达到理论上的性能最优,导致虽然漏检率低,但误报率高。
[0007] 因此,现有锂电池表面缺陷检测技术存在检测效率低、误检率高的问题。
发明内容
[0008] 本发明提供了一种基于自适应深度学习的新能源锂电池表面缺陷检测方法,该方法基于计算机视觉技术、深度学习技术实现了锂电池表面缺陷检测,检测效率更高,误检率更低。
[0009] 一种基于自适应深度学习的新能源锂电池表面缺陷检测方法,该方法包括:
[0010] 步骤一,采集锂电池表面灰度图像,利用非线性算子对锂电池表面灰度图像进行非线性映射,解耦照射分量和反射分量:
[0011] ln(G(x,y)+1)=ln(I(x,y)+1)+ln(R(x,y)+1)
[0012] 其中,G为锂电池表面灰度图像,I为照射分量,R为反射分量,(x,y)为
像素点坐标;
[0013] 步骤二,通过傅里叶变换将解耦的照射分量和反射分量变换至频域;
[0014] 步骤三,利用高斯高通
滤波器分别对照射分量的频域数据和反射分量的频域数据进行滤波,得到滤波锂电池频域数据:
[0015] G′(u,v)×H(u,v)=I′(u,v)×H(u,v)+R′(u,v)×H(u,v)
[0016] 其中,H(u,v)为高斯
高通滤波器,I′(u,v)代表着照射分量的频域数据,R′(u,v)代表着反射分量的频域数据,G′(u,v)为锂电池频域数据,G′(u,v)×H(u,v)为滤波锂电池频域数据;
[0017] 步骤四,对滤波锂电池频域数据进行傅里叶反变换、指数变换,得到重构锂电池图像;
[0018] 步骤五,构建形态学结构元素,分别对重构锂电池图像进行膨胀、
腐蚀操作,将膨胀结果与腐蚀结果做差,得到增强缺陷图像;
[0019] 步骤六,利用大津
阈值法对增强缺陷图像进行
图像分割、连通域分析以及筛选处理,得到标注图像;
[0020] 步骤七,对x、y方向的Sobel梯度算子进行基于随机权重分配的线性
叠加,生成梯度算子SobelG:
[0021] SobelG=SobelGx*a+SobelGy*b
[0022] 其中,SobelGx、SobelGy分别表示x、y方向的Sobel梯度算子,SobelG表示随机生成的梯度算子,a∈[0,1],b∈[0,1],a+b∈[0,1];使用随机生成的梯度算子SobelG对锂电池表面灰度图像进行处理;将处理结果与锂电池原始光照分布图像叠加,得到样本增强图像;
[0023] 步骤八,针对多个锂电池,根据步骤一至七生成锂电池表面灰度图像、样本增强图像以及标注图像,作为样本数据集,基于交叉熵函数训练深度
卷积神经网络;
[0024] 步骤九,将待检测锂电池的表面灰度图像输入训练好的深度卷积神经网络,实现新能源锂电池表面缺陷检测。
[0025] 步骤二包括:
[0026] 对解耦的照射分量和反射分量进行傅里叶变换,得到照射分量的频域数据和反射分量的频域数据:
[0027] FT(ln(G(x,y)))=FT(ln(I(x,y)+1))+FT(ln(R(x,y)+1)
[0028] 其中,FT表示傅里叶变换。
[0029] 步骤三中的高斯高通滤波器为:
[0030]
[0031] 其中,常数c用来控制滤波器函数斜面的锐化,取值在γH、γL之间,γH>1,γL<1,D0为截止
频率,D2(u,v)表示与频率中心的距离的平方。
[0032] 步骤五包括:
[0033] 构造形态学结构元素k:
[0034]
[0035] 采用结构元素k对重构锂电池图像S进行膨胀运算得到膨胀结果X;
[0036] 采用结构元素k对重构锂电池图像S进行腐蚀运算得到腐蚀结果Y;
[0037] 图像X与图像Y相减得到增强缺陷图像G1:
[0038] G1=X-Y。
[0039] 步骤七包括:
[0040] 对x、y方向的Sobel梯度算子进行基于随机权重分配的线性叠加,生成梯度算子SobelG:
[0041] SobelG=SobelGx*a+SobelGy*b
[0042] 其中,SobelGx、SobelGy分别表示x、y方向的Sobel梯度算子,SobelG表示随机生成的梯度算子,a∈[0,1],b∈[0,1],a+b∈[0,1];
[0043] 使用随机生成的梯度算子SobelG对锂电池表面灰度图像进行处理,得到模拟光照细节的图像;
[0044] 对锂电池表面灰度图像进行低通滤波,得到锂电池原始光照分布图像;
[0045] 将模拟光照细节的图像与锂电池原始光照分布图像点对点相加,得到样本增强图像。
[0046] 步骤八中的交叉熵函数为:
[0047]
[0048] 其中,S1为通道1的输出结果,L1是标注图像中像素对应的二值标签,缺陷标注
位置为1,其余位置为0,α为一超参数。
[0049] 本发明的有益效果在于:
[0050] 1.本发明采用解耦照射分量和反射分量、傅里叶变换等计算机视觉技术,对锂电池图像进行处理,获得更加准确的缺陷
定位,无需人工标注,提高了标注效率和准确率,并且有助于降低缺陷的误检率;
[0051] 2.本发明采用深度学习技术,基于获得的缺陷标注图像对神经网络进行训练,实现了半监督的缺陷检测,提高了缺陷检测效率;
[0052] 3.本发明通过设计的梯度算子模拟随机照射干扰,即可得到多种光源效果的图像,实现样本增强,而非使用多种乃至上百种光源去
感知边缘特征,不仅提高了检测效率,而且,基于样本增强的数据集训练神经网络,对光源、缺陷类型具有更强的泛化能力。
附图说明
[0053] 图1为基于自适应深度学习的新能源锂电池表面缺陷检测方法
流程图;
[0054] 图2为锂电池表面灰度图像示意图;
[0055] 图3为重构锂电池图像示意图;
[0056] 图4为增强缺陷图像示意图;
[0057] 图5为标注图像示意图;
[0058] 图6为模拟光照细节的图像示意图;
[0059] 图7为锂电池原始光照分布图像示意图;
[0060] 图8为样本增强图像示意图。
具体实施方式
[0061] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图以及
实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0062] 本发明提供一种基于自适应深度学习的新能源锂电池表面缺陷检测方法。该方法通过对图像进行非线性映射得到照射强度模型与反射强度模型,进一步通过傅里叶变换、滤波、形态学处理、图像分割等计算机视觉技术得到标注结果。进一步地,基于标注结果,利用深度学习技术实现半监督的新能源锂电池表面缺陷检测。本发明方法流程图如图1所示。下面通过具体实施例来进行说明。
[0063] 实施例一:
[0064] 基于自适应深度学习的新能源锂电池表面缺陷检测方法包括:
[0065] 步骤一,采集锂电池表面灰度图像,利用非线性算子对锂电池表面灰度图像进行非线性映射,解耦照射分量和反射分量:
[0066] ln(G(x,y)+1)=ln(I(x,y)+1)+ln(R(x,y)+1)
[0067] 其中,G为锂电池表面灰度图像,I为照射分量,R为反射分量,(x,y)为像素点坐标。
[0068] 采用普通面阵相机获取锂电池表面灰度图像G。在获取图像中,由于锂电池呈圆柱状,因此需拍摄锂电池四个方向的图像。
[0069] 将相机固定,通过伺服
电机与托盘带动电池转动,每次旋转90度,通过这样的方式获取单个电池的四幅图像。这里以其中一幅图像为例,图2为锂电池表面灰度图像。
[0070] 由图2我们可以看到,图像的光照是不均匀的,以下将去除光照不均匀影响,并且增强凸包缺陷及暗区域细节。
[0071] 根据成像原理可知,一幅通过物理光学过程产生的图像p都可以表示为照射分量与反射分量的乘积:
[0072] p(x,y)=i(x,y)×r(x,y)
[0073] 其中,i为图像p的照射分量,r为图像p的反射分量,x,y为像素点坐标。
[0074] 根据上述公式可以看出,图像的照射分量是反射分量相乘关系,在
信号学当中难以分开。
[0075] 因此,通过图像的非线性映射将图像信号转换为线性组合信号,即:
[0076] ln(p(x,y))=ln(i(x,y))+ln(r(x,y))
[0077] 在实际计算中为防止对数有负数现象,将对数内加1,即:
[0078] ln(G(x,y)+1)=ln(I(x,y)+1)+ln(R(x,y)+1)
[0079] 其中,G为锂电池表面灰度图像,I为照射分量,R为反射分量,(x,y)为像素点坐标。
[0080] 通过上述算式对锂电池表面灰度图像进行非线性映射,解耦照射分量、反射分量。
[0081] 步骤二,通过傅里叶变换将解耦的照射分量和反射分量变换至频域。
[0082] 对解耦的照射分量和反射分量进行傅里叶变换,有:
[0083] FT(ln(G(x,y)))=FT(ln(I(x,y)+1))+FT(ln(R(x,y)+1)
[0084] 根据该公式可以求出:I′(u,v),R′(u,v)。I′(u,v)代表着照射分量的频域数据,由于光照照射一般是均匀变化的,所以I′(u,v)代表着低频信息。物体的反射强度一般是突变的,R′(u,v)是反射分量的频域数据,代表着高频信息。
[0085] 对图像等离散分量进行傅里叶变换时,一般采用二维离散傅里叶变换公式:
[0086]
[0087] 其中,f(x,y)代表大小为M*N的矩阵,其中,x的取值区间[0,1,…,M-1]和y的取值区间[0,1,…,N-1],x、y均为整数,F(u,v)为f(x,y)的傅里叶变换
频谱成分,是两个实频率变量μ和v的复值函数,频率μ对应于x轴,频率v对应于y轴,e为自然常数,i为虚数单位,π为圆周率。
[0088] 步骤三,利用高斯高通滤波器分别对照射分量的频域数据和反射分量的频域数据进行滤波,得到滤波锂电池频域数据:
[0089] G′(u,v)×H(u,v)=I′(u,v)×H(u,v)+R′(u,v)×H(u,v)
[0090] 其中,H(u,v)为高斯高通滤波器,I′(u,v)代表着照射分量的频域数据,R′(u,v)代表着反射分量的频域数据,G′(u,v)为锂电池频域数据,G′(u,v)×H(u,v)为滤波锂电池频域数据。
[0091] 为了抑制低频分量,降低图像灰度值变化的动态范围,抑制光照不均匀现象的产生,根据高斯高通滤波器H(u,v)进行滤波:
[0092]
[0093] 其中,常数c用来控制滤波器函数斜面的锐化,取值在γH、γL之间,γH>1,γL<1,D0为截止频率,D2(u,v)表示与频率中心的距离的平方。
[0094] 采用滤波器H(u,v)对G(u,v)进行滤波:
[0095] G′(u,v)×H(u,v)=I′(u,v)×H(u,v)+R′(u,v)×H(u,v)
[0096] 其中,H(u,v)为高斯高通滤波器,I′(u,v)代表着照射分量的频域数据,R′(u,v)代表着反射分量的频域数据,G′(u,v)为锂电池频域数据,G′(u,v)×H(u,v)为滤波锂电池频域数据。
[0097] 至此,得到了滤波锂电池频域数据。
[0098] 步骤四,对滤波锂电池频域数据进行傅里叶反变换、指数变换,得到重构锂电池图像。
[0099] 对滤波锂电池频域数据G′(u,v)×H(u,v)进行傅里叶反变换得到
空域图像D。
[0100] 对空域图像D进行指数变换还原图像得到重构锂电池图像S:
[0101] S(x,y)=eD(x,y)
[0102] 其中,(x,y)为对应的图像坐标,S为重构锂电池图像,D为空域图像。重构锂电池图像如图3所示。
[0103] 步骤五,构建形态学结构元素,分别对重构锂电池图像进行膨胀、腐蚀操作,将膨胀结果与腐蚀结果做差,得到增强缺陷图像。
[0104] 构造形态学结构元素k:
[0105]
[0106] 采用结构元素k对重构锂电池图像S进行膨胀运算得到膨胀结果X。
[0107] 采用结构元素k对重构锂电池图像S进行腐蚀运算得到腐蚀结果Y。
[0108] 图像X与图像Y相减得到增强缺陷图像G1,即:
[0109] G1=X-Y
[0110] 得到的增强缺陷图像如图4所示。从图4可以看出图像锂电池凸包区域的外得到加强,抑制噪声,增强缺陷灰度响应。
[0111] 步骤六,利用大津阈值法对增强缺陷图像进行图像分割、连通域分析以及筛选处理,得到标注图像。
[0112] 从图4可以看出锂电池表面凸包缺陷已经非常明显,可使用大津阈值法对增强图像进行二值化处理得到分割结果。进一步地,基于连通域分析以及筛选处理,得到标注图像,如图5所示。
[0113] 实施者应当知道,连通域分析的
算法基于公知的面积筛选、比例筛选即可。一种实施方式是
逐行扫描阈值化后的图像,将具有相同值的像素组成团,从而检测出阈值化结果的连通域。进一步地,对检测到的连通域进行筛选,可以根据连通域面积等因素制定筛选规则。
[0114] 实施者可以根据实施场景的图像大小、
分辨率等因素设计筛选规则。对于得到的分割结果,实施者可以结合传统的
机器视觉经验、设计简单、保守的样本筛选流程,例如,连通域比例筛选时使得阈值更保守、忽略缺陷不明显的样本等。
[0115] 此步骤是为了在后续步骤中得到更好的效果,不作为本发明的保护内容,在此不再赘述。
[0116] 步骤七,对x、y方向的Sobel梯度算子进行基于随机权重分配的线性叠加,生成梯度算子SobelG:
[0117] SobelG=SobelGx*a+SobelGy*b
[0118] 其中,SobelGx、SobelGy分别表示x、y方向的Sobel梯度算子,SobelG表示随机生成的梯度算子,a∈[0,1],b∈[0,1],a+b∈[0,1];使用随机生成的梯度算子SobelG对锂电池表面灰度图像进行处理;将处理结果与锂电池原始光照分布图像叠加,得到样本增强图像。
[0119] 基于积累、筛选得到的样本,可以直接训练深度卷积神经网络,实施者应当知道,样本数量推荐大于1000张以上。
[0120] 由于直接基于小量样本的训练是极不严谨的,容易使得网络泛化能力变差。因此,需要进行针对锂电池设计的样本增强算法训练。一方面,锂电池外壳、热缩套的材质不同,其反射效果也不同,另一方面,对于不同的打光方案而言,表面的缺陷反射效果也不同。因此,需要对
相位、光照分布等特性进行增强。
[0121] 下面对样本增强进行详细阐述。
[0122] 首先,对图像进行基于Sobel算子的边缘提取,并只提取一个方向。例如,基于提取x方向的梯度,或者基于SobelGy=[SobelGx]T提取y方向梯度。
[0123] 众所周知,上述的SobelGx,SobelGy分别对图像进行自左向右、自上向下的方向求导,因此,做倒相处理可以得到另一方向的模拟光照图像:Sobel′Gx=SobelGx*(-1),Sobel′Gy=SobelGy*(-1)。
[0124] 综上,可以利用下式生成梯度算子模拟不同光照:
[0125] SobelG=SobelGx*a+SobelGy*b
[0126] 其中,SobelGx、SobelGy分别表示x、y方向的Sobel梯度算子,SobelG表示随机生成的梯度算子,a∈[0,1],b∈[0,1],a+b∈[0,1]。
[0127] 对x,y方向的算子进行随机权重的线性叠加即可模拟不同光照条件的特征。
[0128] 使用随机生成的SobelG对锂电池表面灰度图像进行处理,得到模拟光照细节图像,如图6所示。图6中左、右两个图像是根据a、b不同的随机权重随机生成的两个SobelG得到的模拟光照细节图像。
[0129] 进一步地,可以对锂电池表面灰度图像进行低通滤波,可以得到锂电池原始光照分布图像,如图7所示。
[0130] 将模拟光照细节图像与锂电池原始光照分布图像点对点相加,得到样本增强图像,如图8所示。图8左是将图6左与图7叠加得到的样本增强图像,图8右是将图6右与图7叠加得到的样本增强图像。
[0131] 如此,通过设计的梯度算子模拟随机照射干扰,即可得到多种光源效果的图像,实现样本增强,而非使用多种乃至上百种光源去感知边缘特征。
[0132] 步骤八,针对多个锂电池,根据步骤一至七生成锂电池表面灰度图像、样本增强图像以及标注图像,作为样本数据集,基于交叉熵函数训练深度卷积神经网络。
[0133] 深度卷积神经网络的训练需要一定数量的样本数据。针对多个锂电池样本,根据步骤一至八生成锂电池表面灰度图像、样本增强图像以及标注图像。将所有锂电池样本的灰度图像、样本增强图像、标注图象作为样本数据集,用于对深度卷积神经网络进行训练。
[0134] 对于小样本训练深度卷积神经网络而言,一般使用交叉熵损失函数和Adam优化器来保证训练的成功性。但是小的体积的检测对于交叉熵函数而言不能很好地在训练后期快速提高
精度,为了
加速训练,同时一定程度上提高检测精度,对交叉熵函数做更大梯度的改进:
[0135]
[0136] 其中,S1为通道1的输出结果,L1是标注图像中像素对应的二值标签,标注位置为1,其余位置为0,α为一超参数。α越大,损失函数的惩罚越严重,对于本发明,推荐α在3左右。对于本发明,标注位置即二值分割标注图像中缺陷所在亮斑位置。
[0137] 实施者应当知道,锂电池的检测是一种特殊的检测应用,对于
深度神经网络的训练何时截至,应准备验证集进行观察,适时停止。
[0138] 步骤九,将待检测锂电池的表面灰度图像输入训练好的深度卷积神经网络,实现新能源锂电池表面缺陷检测。
[0139] 最后,使用训练好的深度卷积神经网络对待检测锂电池表面灰度图像进行推理,对输出结果二值化得到缺陷图像,实现新能源锂电池表面缺陷检测。
[0140] 对于语义分割网络结果的后处理,众所周知的方法是直接对分割的通道进行二值化处理即可,在此不再赘述。
[0141] 本发明能够克服电池表面光照不均匀现象,增强图像表面光照均匀度,提升图像暗区域细节。本发明采用解耦照射分量和反射分量、傅里叶变换等计算机视觉技术,对锂电池图像进行处理,获得更加准确的缺陷定位,无需人工标注,提高了标注效率和准确率,并且有助于降低缺陷的误检率;采用深度学习技术,基于获得的缺陷标注图像对神经网络进行训练,实现了半监督的缺陷检测,提高了缺陷检测效率;通过设计的梯度算子模拟随机照射干扰,即可得到多种光源效果的图像,实现样本增强,而非使用多种乃至上百种光源去感知边缘特征,不仅提高了检测效率,而且,基于样本增强的数据集训练神经网络,对光源、缺陷类型具有更强的泛化能力。
[0142] 以上实施例仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何
修改、等同替换和改进等,均应包含在本发明的保护范围之内。