Defects detection method of photovoltaic cells based on lightweightconvolutional neural network
-
摘要:
光伏电池片中的缺陷会影响整个光伏系统使用寿命及发电效率。针对现有电池片自动检测中尺寸弱小缺陷漏检率高的问题,建立了一种特征增强型轻量化卷积神经网络模型。针对性地设计了特征增强提取模块,提高了弱边界的提取能力,同时根据多尺度识别原理,增加了小目标预测层,实现了多尺度特征预测。在实验测试中,该模型平均精度均值(mAP)达到87.55%,比传统模型提高了6.78个百分点,同时检测速度达到40帧/s,满足精准性与实时性的检测要求。
Abstract:The defects in photovoltaic cells affect the service life and power generation efficiency of the entire photovoltaic system. Aiming at the high missed detection rate of weak and small defects in the automatic detection of existing cells, a feature-enhanced lightweight convolutional neural network model was established. The feature enhancement extraction module was designed specifically to improve the extraction ability of weak boundaries. In addition, according to the principle of multi-scale recognition, a small target prediction layer was added to realize multi-scale feature prediction. In the experimental test, the mean average precision (mAP) of the model reaches to 87.55%, which is 6.78 percentage points higher than the traditional model. Moreover, the detection speed reaches to 40 fps, which meets the accuracy and real-time detection requirements.
-
引言
太阳能作为一种可再生的能源,以其清洁、安全、取之不尽、用之不竭等显著优势,已成为发展最快的可再生能源之一[1]。光伏发电系统是将太阳能转化为电能最直接的实现形式,而电池片是光伏发电系统中光电转换的主体。由于电池片基体的易碎性,在电池片生产过程中,不可避免地会产生各种缺陷,如隐裂、划伤等,这些缺陷会直接影响到太阳能电池的输出功率和使用寿命[2]。目前,对电池片的检测主要依靠的是机器视觉的检测方法,在成像方案上主要有电致发光成像(electroluminescence,EL)和光致发光成像(Photoluminescence,PL)。其中因PL技术不需要接触电池片,且能对过程片(非成品电池片)进行检测,更利于产品的质量把控,逐渐成为电池片检测的重要技术。
在前期的研究中,针对电池片激光孔角隐裂缺陷,我们提出了利用卷积神经网络(convolutional neural networks,CNN)检测的算法,设计了3种不同结构的CNN模型对缺陷进行分类,最优分类准确率达到了99.25%[3]。而针对电池片其他位置的检测,特别是弱小缺陷的检测,算法的分辨能力是个重要方面。现有的电池片检测算法主要利用缺陷和背景的差异性来检测缺陷[4-5],但是由于PL缺陷图像存在形态微小、隐蔽性好等特点,背景的重构和评价易引起缺陷误检与漏检。
近年来,深度网络强大的特征提取能力得到广泛应用[6]。这些算法主要分为二阶段算法和一阶段算法2个分支。尽管二阶段在精度上有优势,但是在兼顾效率和准确性的工业检测领域更倾向于后者[7]。Li等人使用端到端的全卷积YOLO网络对带钢表面6种缺陷类型进行检测评估[8],达到了97.55%的准确率和95.86%的召回率。Qiu等人针对风力机叶片的各种缺陷,提出了一种基于YOLO多尺度特征金字塔融合多层特征的小目标检测方法[9],平均准确率为91.3%。文献[10]~[11]针对YOLOv3-Tiny实时检测会丢失部分精度的问题,深化了YOLOv3-Tiny网络,引入了注意力机制模块,增强网络的特征提取能力,该方法满足实时性,并提高了检测精度。
缺陷检测中精度和速度是2个重要的性能指标。YOLOv3-Tiny是目前目标检测速度较快的算法之一,但是在小目标检测中精度较低。而本文检测的缺陷尺寸在电池片中占比较小,直接利用原网络结构检测,易出现漏检。因此,本文构建了一种轻量化卷积神经网络模型,该模型加深了主干特征提取网络结构,增加了更小目标的预测尺度,从而增强了模型在特征提取和小缺陷目标检测方面的性能,以更好地完成电池片中的检测任务。
1 太阳能电池片缺陷PL成像特点
太阳能电池片PL成像是通过外部高能激光对硅片进行照射,价电带上的电子吸收光子能量被激发跃迁至传导带,电子在经过一段时间后又从传导带回到价电带,产生荧光光子。硅片在电子能量转换过程中形成各种能阶,而其对应能量激发出硅离子产生荧光成像,并能突显出电池片内部缺陷。其成像原理如图1所示。
PL成像时由于激光孔与周围栅线没有被激发离子,从图像上看,会形成黑色圆点加十字线,呈现出角点特征,如图2所示。
由于硅片基体的易碎性、应力集中等原因,在电池片激光孔附近易产生大小在0.5 mm~5 mm的内部微细裂纹,称为隐裂。电池片缺陷类型如图3所示。隐裂在PL图中呈现出亮度较暗的方向线,如45°斜线(第1种隐裂,如图3(a)所示)或者是“X”交叉形(第2种隐裂,如图3(b)所示)。异物与电池片接触所受摩擦力大小不均造成电池片表面出现划痕,如图3(c)所示。由于电池片中局部阴影发热产生热斑效应,造成电池片出现黑斑,如图3(d)所示。这些缺陷容易造成电池片损坏,严重影响电池片的寿命和工作效率。因此,对隐裂、划痕、黑斑的检测是电池片检测的重要内容,也是实现电池片自动缺陷识别的重点和难点。
2 轻量化卷积神经网络的电池片缺陷识别模型
2.1 融合特征增强的深度网络模型
YOLOv3-Tiny网络结构如图4所示。图4中主干特征提取网络采用3×3大小的卷积核,每进行一次卷积操作就进行一次池化操作。在检测小目标时存在如下不足:一是YOLOv3-Tiny网络结构层次较浅,主干网络卷积层仅有7层,检测精度较低;二是网络模型的检测尺度信息较少,仅有13×13、26×26这2个尺度来检测电池片缺陷,容易造成微小缺陷的漏检。
为兼顾模型精度和速度,本文进行如下改进:一是在原网络结构的基础上增加了1×1与3×3大小的卷积核,1×1卷积核用于通道数调整,3×3用于提取高维空间特征;二是在原网络13×13、26×26这2个尺度缺陷预测的基础上增加一上采样层Upsample,形成13×13、26×26、52×52的3尺度预测模型,增强对小目标特征提取的能力。改进后的网络结构如图5所示。
改进后的网络输入为3通道416×416,输出分为3个部分,分别为13×13的输出层及26×26、52×52的2个分支。主干网络经过22层的特征提取,经历了较深的网络层数感受野较大,适合于大目标(如划伤)预测,在这个特征图谱上做第1次预测Prediction1。
在主干网络的第1次预测路径中,将第20层13×13的特征层使用1×1卷积核调整通道数后,对输出进行1次上采样,将上采样特征与主干网络的第13个特征层在通道维度上相堆叠,卷积操作后得到尺寸为26×26的输出层。该输出层经历了较浅的网络层数,对应的感受野较小,适合于小目标预测,在这个特征图谱上做第2次预测Prediction2。
在第2次预测路径中,将第27层26×26的特征层使用1×1卷积核调整通道数后,对输出进行1次上采样,并将上采样特征与主干网络的第9个特征层52×52在通道维度上相堆叠,经过卷积特征融合后,构建1个新的尺寸为52×52的输出层。该输出层的特征信息来自浅层信息与第2次预测特征图谱的融合,拥有的图像低维特征信息更多,对应的感受野更小,适合于更小目标预测,在这个特征图谱上做第3次预测Prediction3,如图6所示。
通过这样的网络设计,不仅能够融合不同尺度的特征图,还可以对浅层特征信息加工后具有深层语义理解的能力。
2.2 多尺度预测边界框
如前所述,不同大小的输出层代表输入层感受野也不一样。为了能融合不同层次的输出,本文对每个通道的输出用9个参数表达输入层的预测框。分别为预测框中心点所在网格相对于该网格左上角的偏移$ {t_x} $、$ {t_y} $,预测框的宽和高$ {t_w} $、$ {t_h} $,预测框的置信度${p_{\rm{obj}}}$,第1种隐裂得分$ {s_1} $,第2种隐裂得分$ {s_2} $,划痕得分$ {s_3} $,黑斑得分$ {s_4} $组成。具体表达如下:
$$ {b_x} = \sigma ({t_x}) + {c_x} $$ (1) $$ {b_y} = \sigma ({t_y}) + {c_y} $$ (2) $$ {b_w} = {p_w}{e^{{t_w}}} $$ (3) $$ {b_h} = {p_h}{e^{{t_h}}} $$ (4) 式中:$ {b_x} $、$ {b_y} $为边界框中心点坐标;$ {b_w} $、$ {b_h} $为边界框的宽和高;$ {c_x} $、$ {c_y} $为目标框中心所属网格的左上角坐标;$ \sigma ({t_x}) $、$ \sigma ({t_y}) $为中心坐标相对于所属网格左上角的偏移距离;$ {p_w} $、$ {p_h} $为预设边框的宽和高。
在训练时不断调整大小,将网格中预测框与标签中的目标框进行匹配,选取与目标框具有最大IoU(intersection over Union)值的边界框作为输出结果[12]。边界框预测示意图如图7所示。
3 实验结果与分析
3.1 实验环境
本文在Windows操作系统下,使用Darknet深度学习框架,实验环境为NVIDIA GTX 1050、Intel(R)Core i5 7300HQ,opencv3.4,内存8 G,安装CUDA10.0、cudnn7.4.1实现GPU加速,使用python语言实现本文改进网络算法。
3.2 数据集划分
本文在国内某大型太阳能电池厂共收集了电池片图像6 000多张有代表性的缺陷样本。为增加数据的多样性,避免数据集过少发生过拟合,对部分缺陷样本加入了亮度变换与翻转等操作增强数据集。最终形成18 000张样本,共4类缺陷,分别为第1种隐裂、第2种隐裂、划痕、黑斑,每张图片大小在630×635 pixel~665×695 pixel之间,图片中缺陷大小在64×64 pixel~85×200 pixel之间。数据增强后的部分数据集如图8所示。
将数据集按一定的比例划分为训练集、验证集与测试集。为便于训练,数据集格式转换成VOC格式,并对含缺陷图片进行标注,经过整理后各类数据集数量如表1所示。
表 1 数据集划分Table 1. Division of data set数据集 第1种隐裂/张 第2种隐裂/张 划痕/张 黑斑/张 总数量/张 训练集 2 800 3 800 2 400 4 000 12 000 验证集 750 800 630 820 3 000 测试集 680 820 660 840 3 000 3.3 改进前后的效果对比
为获得更好的模型训练效果,本文训练设置模型训练最大迭代次数为20 000次,初始学习率为0.001,迭代10 000次以后,学习率为0.000 1,批量设置为64,子批量设置为8。按照设置的训练参数完成训练后,改进前后网络的损失函数下降情况如图9所示。从图9中可以看出,改进后的网络模型收敛效果优于原始网络。
本文对不同类型缺陷进行了测试,并采用准确率(precision,P)、召回率(recall,R)、平均精度AP值(average precision,TAP)及综合性能评价指标mAP值(mean average precision,TmAP)等进行评估[13]。
训练后的PR曲线如图10所示。图10中PR曲线下方的面积就是对应类别的AP值,曲线下方面积越大,说明对应的AP值越高,检测性能更优。
分别计算改进前后模型在第1种隐裂、第2种隐裂、划痕、黑斑4种缺陷上的AP值如表2所示。
表 2 2种网络模型的AP值比较Table 2. Comparison of AP values of two network models网络模型 第1种隐裂 第2种隐裂 划痕 黑斑 YOLOv3-Tiny的AP值/% 79.19 90.00 64.10 89.80 本文网络的AP值/% 83.04 92.68 80.83 93.66 从表2可以看出,改进后的模型在不同类型缺陷上的AP值都有所提升。增长最多的是划痕,增长约为17个百分点,这说明改进后的网络对于形态变化较大时的缺陷适应性更好;而AP值绝对增长最少的是第2种隐裂,仅约为3个百分点,这主要是因为第2种隐裂缺陷图片参与训练的数据集较多,缺陷形状单一,检测效果更佳。
为更直观展示改进网络模型的检测效果,图11为模型改进前后部分检测效果对比。
从图11可以看出,改进后的模型明显改善了漏检情形(如图中箭头处),而且模型识别准确率有所提高,能够准确检测出不同类型的缺陷。
3.4 不同网络的性能对比
为验证本文改进算法的效率,本文在相同实验条件下,将SSD、YOLOv3、YOLOv3-Tiny与本文网络模型在测试数据集上测试,结果如表3所示。
表 3 不同网络模型的性能比较Table 3. Performance comparison of different network models网络模型 TmAP/% FPS SSD 97.52 12 YOLOv3 94.31 25 YOLOv3-Tiny 80.77 47 本文网络 87.55 40 从表3可以看出,SSD与YOLOv3的TmAP值高于YOLOv3-Tiny和本文网络模型,但其网络模型大,检测速度慢[14-15],不适用于生产流水线上电池片的实时检测。本文网络模型较YOLOv3-Tiny网络模型的TmAP值提高了6.78个百分点,表明改进后的网络模型检测性能有所提升。虽然由于增加特征增强层给计算带来了一定的时间开销,但在满足25 fps的前提下达到了目标检测实时性要求。
总之,本文提出的模型能够在兼顾效率和准确性的前提下,能较好地完成检测任务。该检测模型用于现场测试,如图12所示,运行良好。
4 结论
太阳能电池片缺陷微小的特点,给缺陷的高效检测与识别带来困难。本文在保证效率的前提下,提出了一种轻量化特征增强型卷积神经网络模型。该模型加深了主干特征提取网络结构,另外增加一个预测尺度层,实现3尺度预测,加强了浅层特征图的语义信息,从而提高了小尺度缺陷的检测精度。在测试数据集上mAP达到87.55%的识别率,速度为40 fps,满足实时检测要求,这对于光伏产业缺陷自动识别问题中CNN的使用具有重要意义。
-
表 1 数据集划分
Table 1 Division of data set
数据集 第1种隐裂/张 第2种隐裂/张 划痕/张 黑斑/张 总数量/张 训练集 2 800 3 800 2 400 4 000 12 000 验证集 750 800 630 820 3 000 测试集 680 820 660 840 3 000 表 2 2种网络模型的AP值比较
Table 2 Comparison of AP values of two network models
网络模型 第1种隐裂 第2种隐裂 划痕 黑斑 YOLOv3-Tiny的AP值/% 79.19 90.00 64.10 89.80 本文网络的AP值/% 83.04 92.68 80.83 93.66 表 3 不同网络模型的性能比较
Table 3 Performance comparison of different network models
网络模型 TmAP/% FPS SSD 97.52 12 YOLOv3 94.31 25 YOLOv3-Tiny 80.77 47 本文网络 87.55 40 -
[1] KABIR E, KUMAR P, KUMAR S, et al. Solar energy: potential and future prospects[J]. Renewable & Sustainable Energy Reviews,2018,82:894-900.
[2] DHIMISH M, HOLMES V, MEHRDADI B, et al. The impact of cracks on photovoltaic power performance[J]. Journal of Science:Advanced Materials and Devices,2017,2(2):199-209. doi: 10.1016/j.jsamd.2017.05.005
[3] 刘怀广, 刘安逸, 周诗洋, 等. 基于深度神经网络的太阳能电池组件缺陷检测算法研究[J]. 应用光学,2020,41(2):327-336. doi: 10.5768/JAO202041.0202006 LIU Huaiguang, LIU Anyi, ZHOU Shiyang, et al. Research on detection algorithm of solar cell component defects based on deep neural network[J]. Journal of Applied Optics,2020,41(2):327-336. doi: 10.5768/JAO202041.0202006
[4] 范程华, 王群京, 曹欣远, 等. 基于信号突变点校正的太阳能电池片缺陷检测方法[J]. 激光与光电子学进展,2020,57(6):246-251. FAN Chenghua, WANG Qunjing, CAO Xinyuan, et al. Defect detection method for solar cell based on signal catastrophe-points correction[J]. Laser & Optoelectronics Progress,2020,57(6):246-251.
[5] 王宪保, 李洁, 姚明海, 等. 基于深度学习的太阳能电池片表面缺陷检测方法[J]. 模式识别与人工智能,2014,27(6):517-523. doi: 10.3969/j.issn.1003-6059.2014.06.006 WANG Xianbao, LI Jie, YAO Minghai, et al. Solar cells surface defects detection based on deep learning[J]. Pattern Recognition and Artificial Intelligence,2014,27(6):517-523. doi: 10.3969/j.issn.1003-6059.2014.06.006
[6] 陈超, 齐峰. 卷积神经网络的发展及其在计算机视觉领域中的应用综述[J]. 计算机科学,2019,46(3):63-73. doi: 10.11896/j.issn.1002-137X.2019.03.008 CHEN Chao, QI Feng. Review on development of convolutional neural network and its application in computer vision[J]. Computer Science,2019,46(3):63-73. doi: 10.11896/j.issn.1002-137X.2019.03.008
[7] 杨铭, 文斌. 一种改进的YOLOv3-Tiny目标检测算法[J]. 成都信息工程大学学报,2020,35(5):531-536. YANG Ming, WEN Bin. An improved YOLOv3-Tiny target detection algorithm[J]. Journal of Chengdu University of Information Technology,2020,35(5):531-536.
[8] LI J Y, SU Z F, GENG J H, et al. Real-time detection of steel strip surface defects based on improved YOLO detection network[J]. IFAC-PapersOnLine,2018,51(21):76-81. doi: 10.1016/j.ifacol.2018.09.412
[9] QIU Z, WANG S, ZENG Z, et al. Automatic visual defects inspection of wind turbine blades via YOLO-based small object detection approach[J]. Journal of Electronic Imaging,2019,28(4):43023-1-11.
[10] 李文涛, 张岩, 莫锦秋, 等. 基于改进YOLOv3-tiny的田间行人与农机障碍物检测[J]. 农业机械学报,2020,51(s1):1-8. doi: 10.6041/j.issn.1000-1298.2020.S1.001 LI Wentao, ZHANG Yan, MO Jinqiu, et al. Detection of pedestrian and agricultural vehicles in field based on improved YOLOv3-tiny[J]. Transactions of the Chinese Society for Agricultural Machinery,2020,51(s1):1-8. doi: 10.6041/j.issn.1000-1298.2020.S1.001
[11] ZHANG Y, SHEN Y L, ZHANG J. An improved tiny-yolov3 pedestrian detection algorithm[J]. Optik,2019,183:17-23. doi: 10.1016/j.ijleo.2019.02.038
[12] JIANG B, LUO R, MAO J, et al. Acquisition of localization confidence for accurate object detection [EB/OL]. [2021-07- 20]. https://arxiv.org/abs/1807.11590.
[13] 徐建桥, 吴俊, 陈向成, 等. 基于规范化样本拆分的轴承缺陷检测[J]. 应用光学,2021,42(2):327-333. doi: 10.5768/JAO202142.0203006 XU Jianqiao, WU Jun, CHEN Xiangcheng, et al. Bearing defects detection based on standardized sample split[J]. Journal of Applied Optics,2021,42(2):327-333. doi: 10.5768/JAO202142.0203006
[14] PARK J H, HWANG H W, MOON J H, et al. Automated identification of cephalometric landmarks: part 1—comparisons between the latest deep-learning methods YOLOV3 and SSD[J]. The Angle Orthodontist,2019,89(6):903-909. doi: 10.2319/022019-127.1
[15] 吴天舒, 张志佳, 刘云鹏, 等. 基于改进SSD的轻量化小目标检测算法[J]. 红外与激光工程,2018,47(7):47-53. WU Tianshu, ZHANG Zhijia, LIU Yunpeng, et al. A lightweight small object detection algorithm based on improved SSD[J]. Infrared and Laser Engineering,2018,47(7):47-53.
-
期刊类型引用(15)
1. 王婧骅,崔璨,张云飞,段玉玮,赵婉茹. 基于循环神经网络的异常用电数据检测方法. 电子设计工程. 2024(01): 120-123+128 . 百度学术
2. 彭雪玲,林珊玲,林志贤,郭太良. 改进的YOLOv5s太阳能电池片缺陷检测算法. 液晶与显示. 2024(02): 237-247 . 百度学术
3. 刘玉淇,吴一全. 基于机器视觉的太阳能电池片缺陷检测算法综述. 光学精密工程. 2024(06): 868-900 . 百度学术
4. 何翔,杨爱军,黎健生,陈彩云,游宏亮. 基于cycleGAN的太阳电池电致发光图像数据增强方法. 液晶与显示. 2024(08): 1057-1069 . 百度学术
5. 林维修,李峰,王海峰,许育燕,金科扬. 基于图像处理的光伏组件热斑缺陷检测方法. 计算技术与自动化. 2024(03): 121-126 . 百度学术
6. 李莉杰,高方,李元涛,田壮梅,吕莉源,张梦洁. 储能设备电池极片缺陷检测网络研究. 电力大数据. 2024(06): 22-31 . 百度学术
7. 张引贤,张展耀,张希雅. 基于边缘神经网络的海岛光伏表面异常检测. 浙江电力. 2024(12): 95-103 . 百度学术
8. 葛钊明,胡跃明. 基于改进YOLOv5的锂电池极片缺陷检测. 激光杂志. 2023(02): 25-29 . 百度学术
9. 何翔. 基于DCGANs的半片光伏组件电致发光图像增强技术. 应用光学. 2023(02): 314-322 . 本站查看
10. 刘耀迪,肖钰蕙,杨超. 智能化光伏缺陷检测系统. 光源与照明. 2023(06): 136-138 . 百度学术
11. 王云冰,付晓刚,牛源. 基于无人机光伏巡检的路线优化与故障检测. 上海电机学院学报. 2023(05): 275-280 . 百度学术
12. 艾上美,周剑峰,张必朝,张涛,王红斌. 基于改进SSD算法的光伏组件缺陷检测研究. 智慧电力. 2023(12): 53-58 . 百度学术
13. 刘敏,陈凌宇,钱洲亥,李治国. 光伏电池片弱边缘缺陷空耦超声特征检测. 制造业自动化. 2022(04): 191-195 . 百度学术
14. 符长虹,陈锟辉,鲁昆瀚,郑光泽,赵吉林. 面向边缘智能光学感知的航空紧固件旋转检测. 应用光学. 2022(03): 472-480 . 本站查看
15. 凌旭峰,周丽婕,祝毓,杨红卫,杨杰. 基于生成式自监督学习的太阳能电池板缺陷检测. 机械制造. 2022(07): 12-18 . 百度学术
其他类型引用(8)