SCI论文(www.lunwensci.com):
摘要:太阳能电池片作为光电转换的重要部件,生产过程中容易产生表面缺陷和内部隐性缺陷(隐性裂纹,简称隐裂),严重影响了太阳能电池片的发电效率和成品合格率。目前基于图像处理的视觉检测方法针对隐裂的检测效果较差,无法满足工业现场需求。拟利用深度学习的目标检测网络对电池片进行隐裂检测研究。分析深度学习的目标检测网络模型算法,对选取的网络模型进行优化,解决了隐裂检测精度低的问题。利用采集的隐裂样本数据集,对比分析YOLOv5s、SSD、Faster-RCNN三种目标检测算法的隐裂检测效果,发现YOLOv5s模型综合性能较优。同时对YOLOv5s网络结构及功能模块进行优化,提高了隐裂检测速度和检测精度。结果表明,生成对抗样本构成的数据集中隐裂数据样本采用优化后的YOLOv5s进行隐裂检测,准确率可达到96%以上,单张图像检测时间大约为0.06 s。因此,结合生成对抗网络和目标检测网络可以实现隐裂的快速、高精度检测。
关键词:太阳能电池片;隐裂检测;深度学习;目标检测网络
Research on Deep Target Network Algorithm for Hidden Crack Detection of Solar Cells
Zhu Jiahua1,Peng Xinghui2,Gao Jian2,Wu Xiangdong2,Zhou Shuyu2
(1.Sichuan Changhong Electric Co.,Ltd.,Mianyang,Sichuan 621000,China;2.College of Mechanical Engineering,Sichuan University of Science&Engineering,Yibin,Sichuan 644000,China)
Abstract:As an important part of a photoelectric conversion,the production process is easy to produce surface defects and internal hidden defects(hidden crack),serious impact on the solar cell power generation efficiency and product quality.At present,the visual detection method based on image processing has poor detection effect on hidden cracks and can not meet the needs of industrial field.The target detection network of deep learning was used to study the hidden crack detection of battery cells.The deep learning target detection network model algorithm was analyzed,and the selected network model was optimized to solve the problem of low precision of hidden crack detection.Using the collected crack sample data set,the crack detection effect of the three target detection algorithms of YOLOv5s,SSD and Faster-RCNN were compared and analyzed,and it was found that the YOLOv5s model had better comprehensive performance.The results show that the YOLOv5s model has better comprehensive performance.At the same time,the structure and function module of YOLOv5s network were optimized to improve the detection speed and accuracy of hidden cracks.The results show that the accuracy of P-YOLOv5s can reach 96%and the detection time of single image is about 0.06 s.Therefore,the combination of generative adversarial network and target detection network can realize the fast and high precision detection of hidden cracks.
Key words:solar cell;detection of hidden crack defects;deep learning;target detection network
0引言
目前在工业生产现场,电池片缺陷一般采用常规图像检测算法进行处理。对于表面缺陷的检测,其精度能达到工业要求,但隐裂在实际检测中识别精度不高且不稳定[1]。为了准确检测电池片隐裂和避免漏检的发生,常辅以人工对其进行检测,但人工检测易受主观判断、环境因素等的影响,且工作强度大,无法对隐裂进行量化分析,急需研究基于机器视觉检测的算法革新及优化。
相比于当前基于图像处理和特征分析(Blob Analy⁃sis)的检测方法,图像处理算法不能准确检测隐裂,基于深度学习的目标检测可以有效克服当前电池片隐裂检测算法存在的不足[2],是解决隐裂检测精度低的有效方法[2-3]。以采集到的隐裂数据为输入,对比分析了Faster-RCNN、YOLOv5s、SSD三种目标检测算法的准确率和mAP,确定采用基于深度学习的目标检测网络YOLOv5s作为太阳能缺陷检测的算法。以YOLOv5s目标检测网络为基础,根据实际电池片的缺陷和纹理特征以及训练进程中发现的问题,分别对YOLOv5s的输入端,主干网络,检测端进行优化,并对YOLOv5s优化之后的检测数据结果进行验证与分析。
1电池片隐裂类型
图1所示为太阳能电池片的实物,该电池片由细栅线(图示横向细纹)和主栅线(图示纵向5条粗纹)覆盖,细栅线的作用是收集电荷,主栅线的作用是汇集细栅线中细微电流,最后形成较大电流[4],栅线被破坏会阻碍电池片收集电流,严重影响太阳能发电系统的效率。
如图2所示,隐裂包括条状隐裂、十字隐裂和边缘隐裂。条状隐裂主要呈现为不规则、无方向的曲线条状,覆盖面积较大,会横跨电池片的大量栅线,甚至是延伸到电池片的边缘。十字隐裂主要呈现为形状规则、无方向的十字交叉状,覆盖面积小,会横跨电池片的少量栅线,会出现在电池片边缘。边缘隐裂是三大类隐裂中形状面积最小的缺陷,主要呈现为规则、无方向的直线条状,覆盖面积最小,会横跨电池片极少量细栅线,主要出现在边缘附近。
2隐裂的样本采集与图像处理
2.1基于光致发光的样本采集
隐裂在可见光下无法显现,使用光致发光(PL)成像技术可采集到电池片隐裂图像样本,其主要的检测结构如图3所示。采用线阵近红外相机和光源采集图像。光致发光检测技术采用的是一种激光照射式发光检测技术,利用具备一定能量光子的激光对太阳能电池片表面进行照射,将会产生红外光线强度较弱的荧光,然后再利用近红外相机进行光子收集。若电池片内部存在缺陷,则缺陷处收集到的光子数必定较少,此时相机采集到的图像对应区域将会偏暗。根据图像的明暗程度,以及出现的位置、大小、形状等特点来判断电池片质量的好坏以及缺陷的类型。
图4(a)所示为电池片的实物,图4(b)所示为光致发光下成像。由实物图明显可以看到电池片表面外观上的特征,但无法看到电池片内部中的缺陷。图4(b)是在光致发光条件下,相机采集的光致发光图像,没有颜色特征,整体呈现灰度特征,但与可见光下成像不同的是,能够捕捉到电池片内部的缺陷。PL成像不需要接触电池片,在实现对太阳能电池片内部缺陷检测的同时,不会对太阳能电池片的质量品质产生任何损失,更利于产品的质量把控。
2.2隐裂的图像处理
通过光致发光采集到电池片图像数据之后,需进一步做预处理工作。在工业现场太阳能电池片在传送带上不断输送,采集到的图像存在一些背景的干扰以及由于传输不稳定导致电池片出现跑片的情况,因此在做隐裂检测之前,需要对图像进行预处理操作。主要实现过程:通过利用边界相关运算建立仿射变换模型,自适应求得图像的配准参数,自动实现太阳能电池片图像的平移、旋转和缩放,固定太阳能电池片在图像中的位置。
由于隐裂位置可能出现在电池片各个位置,导致提取到的主栅区域和非主栅区域隐裂是不一样的。为了合并缺陷检测结果,且不具备重复性,需要提取主栅特征,在缺陷检测之前必须提取主栅区域。主栅区域与邻域灰度差值在40左右,对预处理之后的图进行均值滤波和灰度腐蚀,可确定主栅区数目为4。因主栅区的位置仅会在大概10个像素点内的幅度进行左右波动,电池片图像中主栅位置基本不变。通过给点的坐标,选择邻近的插值方法,防止ROI在不垂直或水平的时候里面的等距线经过不完整的像素,最终得到定位主栅区域的ROI。
在提取到主栅特征之后,将缺陷区域划分为非主栅区域缺陷和主栅区域缺陷,缺陷在非主栅区域时,需要对图像进行特征提取,本文采用均值滤波、灰度腐蚀、动态阈值分割、开运算和闭运算,以不断缩小图像定义域的方式对图像进行提取处理[5]。主栅区域缺陷需在非主栅区域缺陷图像提取的基础上再增加一次闭运算,闭合断开的隐裂。
3基于深度学习的隐裂检测算法
由于常规图像算法不能准确检测隐裂,提出采用深度学习的目标检测算法进行隐裂检测。以准确率、检测时长为指标,对比分析了Faster-RCNN、SSD和YO⁃LOv5s三种目标检测算法,发现YOLOv5s综合性能较优。由于YOLOv5s的精度和速度存在可以改进空间,故对YOLOv5s输入端的Mosaic和自适应缩放模块、主干部分的Focus结构以及预测端的非极大值抑制模块进行优化。
3.1深度学习算法的选取
以800张十字隐裂为训练样本,300张为测试样本,对Faster-RCNN、SSD和YOLOv5s网络进行训练数据对比,其训练指标结果如表1所示。
从表1可知,3种目标检测网络均取得了不错的检测结果。其中Faster-RCNN的mAP达到96.23%,虽然满足对精度的要求,但参数量过于庞大,计算复杂,且单张图像检测时间过长,不利于实现实时的工业缺陷检测;SSD的mAP达到了93.30%,参数量仍过于庞大,且单张图像检测时间达到0.35 s没能满足工业现场检测低于0.2 s的要求;YOLOv5s的单张图像检测时间为0.01 s,参数量只有27.8 MB,大约仅占SSD和Faster-RCNN参数量的1/4。并且在小目标缺陷的检测中,YOLOv5s检测情况较好,能识别的最小隐裂尺寸为15×17。由于YO⁃LOv5s在输入到网络结构之前,通过随机缩放、随机裁剪、随机排布的方式进行拼接,增强了对小目标的检测效果,对本研究的缺陷检测有着更好的适配性,但检测准确率需进一步提高,需对YOLOv5s算法模型进行优化[6]。
3.2 YOLOv5s模型优化
在使用YOLOv5s期间,发现YOLOv5s对隐裂检测准确率较低,仍有提升空间,故对YOLOv5s输入端的Mo⁃saic和自适应缩放模块、主干部分的Focus结构以及预测端的非极大值抑制模块进行优化。
(1)输入端自适应缩放优化
在YOLOv5s中,图片长和宽若不一致,需将原始图片统一缩放到一个标准的尺寸,在送入主干网络和预测网络中去。输入端在模型训练和推理的时候,为了加快训练和推理模型的速度,YOLOv5s使用了自适应图片缩放,通过预测数据的长宽与Resize尺寸得到缩放系数,并选择小的缩放系数进行Resize,如果原图长宽不一致,较大的一方会缩放过多导致黑边的出现,对多余的黑边进行填充以提高目标检测推理速度,隐裂图像数据尺寸经过预处理裁减后为765×768,长宽比几乎一致,通过缩放系数得到此时仅多出厚度为3个像素的边框,采用上述填充操作反而会降低推理速度,因此简化此步骤仅保留Resize功能。相关操作具体如图5所示。
(2)主干部分优化
原始YOLOv5s分为4个模块,分别是输入部分、主干网络、颈部网络以及预测端。主干网络第一层为Focus结构,以640×640大小,通道数为3的输入图像为例,将其传入Focus结构,再经过一个1×1大小通道数为32的卷积操作,最终变成320×320×32的特征图,减少了计算量,其实现过程如图6所示。
DenseBlock是DenseNet网络的核心模块。DenseNet是一种具有紧密连接性质的卷积神经网络。其具体的连接方式可以表示为式(1)~(2)。
式中:Xl-1为l-1层的残差网络;Hl为对残差网络进行非线性变换。
式(1)中残差网络l层的输出是l-1层的输出加上对l-1层输出的非线性变换,只是对值进行相加,不改变通道数。由式(2)可知DenseNet网络是先将l-1层的输出特征图进行拼接之后,再进行非线性变换,即做通道间的堆积,而不是对值相加。所以不同层的特征图尺寸要保持相同的大小,这样做明显限制了下采样的运行。为了进行下采样,以便提取更多尺度的特征,DenseNet网络被细分为一个个更轻量型的DenseBlock模块。
DenseBlock结构如图7所示,可见,除了输入端,其包含4个模块,每个模块均为4层。以图中多层网络X0作为输入,每一层先通过Hi进行非线性变换,即依次进行归一化,激活函数以及卷积操作之后再传递至后续网络。不同于卷积特征图的级联操作,该模块会将输入特征图中的任意两层直接相连,所有之前层的特征图作为独立的输入,而本层的特征图同样会作为输入传递给后续层。这样做缓解了梯度消失的问题,可以代替切片操作对输入图像实施降维,进行特征提取的操作。
(3)预测部分优化
在目标检测模型的推理预测结尾部分,存在着待检测目标框重叠的现象,而重叠的框中可能是一些无用的重复图像信息,也可能是一些有效的待检测信息被遮盖住,但无论是哪一种结果,都需要将重叠部分分开,NMS(非极大值抑制)是目标检测算法中用来处理该问题的模块。NMS算法具体过程:首先,设定一个筛除的阈值,将所有重叠框的重叠部分按照分数进行排序,将得分最高的检测框与其他框不断地进行对比,若其余的检测框与该框的交并比超过了预先设定的阈值,NMS会使检测框得分强制归零,但是这可能会造成目标漏检,降低检测精度,故此需要进行一定优化优化[7]。
4目标检测网络优化性能检测分析
4.1模型训练设备配置
Pytorch具有简洁易上手、速度快和易调试等优点,同时其对NIVIDIAGPU优化良好,可以方便地实现将数据送入GPU缓存的操作。PyCharm编译器是调试方便且承载Python集成开发环境(Integrated Development Envi⁃ronment,IDE)[8]。综上考虑,选用Pycharm编译器、Py⁃torch深度学习框架和NIVIDIA GTX2080Ti GPU,作为电池片缺陷检测网络训练过程的运行环境[9]。检测所使用服务器配置和软件环境配置如表2所示。
4.2隐裂数据准备
本研究采用的太阳能电池片数据集采集于某公司电池片生产现场,主要研究对象是隐裂片,真实数据样本共3 600张,其中边缘隐裂1 200张、十字隐裂1 300张、条状隐裂1 100张,称为数据集CRA。结合数据量较少的边缘隐裂和条状隐裂划分为多个数据子集,按一定比例划分出训练集和测试集。详情如表3所示。
深度学习检测网络的数据样本需经过标注才可成为训练数据,由于labelImg软件具有速度快,操作方便的优点,本研究选用其作为数据标注软件。
4.3 YOLOv5s优化前后分析
以CRA1A为真实缺陷数据输入为训练集,以CRA2A为测试集,迭代次数为4 000,测试真实数据下YOLOv5s网络优化前后缺陷检测指标对比情况。为估算与对比优化前后YOLOv5s模型的具体表现,采用CRA1A数据集作为训练集,CRA2A数据集作为测试集,迭代次数为4 000,进行训练及检测推理。同时按表3的数据集按上述方法分别进行训练并完成测试,训练结果如表4所示。
其中Precision表示正确检测出缺陷的数目与目标缺陷总数的比值,mAP 0.5表示训练过程平均准确率,Time表示使用训练完成的检测模型检测测试集所耗费的总时长。从表结果可以看出,优化前后YOLOv5s的Pre⁃cision和mAP 0.5相比精度明显提高,故说明基于输入端、主干端的YOLOv5s优化在明显提高检测精度的情况下,检测速度可满足现场在线检测的需求[10-12]。既满足了输入端轻量化的目标,同时精度得到了很好的提高,满足了现场检测的需求。
5结束语
根据电池片生产现场出现的隐裂检测情况,采用深度学习中的目标检测算法进行隐裂检测。经过对比Fast⁃er-RCNN、SSD和YOLOv5s三种目标检测网络,确定了选取YOLOv5s目标检测网络作为隐裂检测模型。为进一步提高模型的检测精度和控制推理速度,完成了YO⁃LOv5s输入端、主干网络和预测端的优化工作,结果表明优化后的YOLOv5s训练精度提高了3.3%,检测速度控制在0.06 s以内。根据采集到的3种隐裂数据量,在缺陷数据较充足时,直接采用优化后的YOLOv5s进行缺陷检测,其精度和速度能满足工业生产现场需求。结果表明:相比图像检测算法,目标检测算法检测太阳能电池片隐裂更加稳定、精度更高且时间更短。可较好地解决工业现场电池片隐裂检测问题,同时该方法可为相关领域的内部缺陷检测提供可行的解决方案。
参考文献:
[1]袁天文.太阳能发电系统应用技术[J].电子技术与软件工程,2014(11):141.
[2]田晓杰,程耀瑜,常国立.基于深度学习优化SSD算法的硅片隐裂检测识别[J].机床与液压,2019,47(1):36-40.
[3]田晓杰.基于优化YOLOv3神经网络的硅片隐裂检测算法研究[D].太原:中北大学,2019.
[4]翟金叶.晶硅太阳能电池发展状况及趋势[J].电子技术与软件工程,2018(4):76.
[5]吴建华,李迟生,周卫星.中值滤波与均值滤波的去噪性能比较[J].南昌大学学报(工科版),1998(1):33-36.
[6]尹宏鹏,陈波,柴毅,等.基于视觉的目标检测与跟踪综述[J].自动化学报,2016,42(10):1466-1489.
[7]孙会江.基于生成数据增强的多尺度目标检测算法研究[D].成都:电子科技大学,2021.
[8]Redmon J,Divvala S,Girshick R,et al.You only look once:Uni⁃fied,real-time object detection[C]//Proceedings of the IEEE con⁃ference on computer vision and pattern recognition,Las Vegas,NV,USA,2016.
[9]刘丽.室内外场景下的目标检测算法应用研究[D].厦门:厦门大学,2019.
[10]Redmon J,Farhadi A.YOLO9000:Better,Faster,Stronger[C]//IEEE Conference on Computer Vision&Pattern Recognition.Ho⁃nolulu,2017.
[11]Redmon J,Farhadi A.YOLOv3:An Incremental Improvement[C]//Proceedings of 2018 IEEE Conference On Computer Vision and Pattern Recongnition.Washington D.C.,USA,2018.
[12]李阿娟.YOLOv5算法改进及其现实应用[D].太原:中北大学,2021.
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网!
文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/ligonglunwen/48035.html