Deep Learning-Based Automatic Classification System for Photovoltaic Cell Defects
With the steady improvement of solar photovoltaic technology, its performance and stability and other indicators will directly affect the efficiency of the system. However, in the production of photovoltaic cells, there are often various defects, which may lead to reduced power output, shortened life, and even seriously affect the safety and reliability of the system. Traditional defect classification methods of photovoltaic cells mainly rely on manual feature extraction and manual classification, which has low efficiency and low accuracy. In order to solve this problem, a deep learning-based defect classification method for photovoltaic cells is proposed in this study. In this paper, four different deep learning models, ResNet-18, ResNet-34, ResNet-50 and VGG-16, were selected as research objects, and targeted improvements were made to the different models. Then, through careful experimental Settings and strict evaluation criteria, the effects of these improved models on the task of photovoltaic cell defect classification were compared. The accuracy, loss function and convergence rate of the model are compared and analyzed to find out the most suitable network model for defect classification of photovoltaic cells. It provides important support for quality control and fault diagnosis during the manufacturing and operation of photovoltaic cells. In the future, the algorithm performance will be further optimized to explore more efficient and accurate deep learning models, and combined with practical application needs, to promote the wide application and promotion of this technology in the field of photovoltaic cells.
Defect Classification
随着全球对可再生能源发展的迅速。光伏电池因具有可持续的能源发展方式,使其在全球范围内都具有很高的热度,产量逐年升高,生产运输过程中出现缺陷的概率也随之提高,电池缺陷的产量增加导致系统工作效率大幅度降低,伴随的是产量的提升没有使系统的发电效率有很明显的提高。
深度学习在图像分类领域开发前,光伏电池缺陷分类方法大多数是依据人的视觉进行识别,这种方式的弊端也很明显,首先,工作人员会因为长时间重复工作而引起视觉疲劳;其次,人的视觉在识别光伏电池是否有缺陷时,思考的时间要比计算机思考的时间久;最后,因为有些缺陷很相似,会导致工作人员进行模糊判断,不仅会影响准确度,还会使光伏电池进行返厂维修时因缺陷的不同增加维修时间。随着光伏产业的迅速发展,光伏电池的产量随着需求量的增加而增多,人工的视觉分类方法很明显无法满足大规模生产需求。
近些年,图像分类技术在深度学习的领域上也有所研究,并取得显著成效。可通过深度学习在缺陷的图像上训练分类模型,将训练好的模型应用到光伏电池缺陷分类上,可高效率、高准确率的对缺陷进行识别。
在深度学习的研究和应用中,选择合适的网络模型对于解决特定的问题至关重要。尤其在光伏电池缺陷分类等视觉识别任务中,模型的选择直接影响到分类的准确性和效率。本文旨在通过对比实验,探究不同的深度网络模型在光伏电池缺陷分类任务上的表现。本文对ResNet-18
首先要收集光伏电池的图像数据,包括正常和各种缺陷的图像,下一步对收集到的光伏电池图像进行标注,包括正常和不同类型缺陷的图像,例如:裂纹、黒芯、短路、断栅和碎片等。因为收集到部分缺陷的图像数量较少,需要通过数据增强(亮度增强、变暗、旋转和翻转等)的方式来扩充数据集的数量,防止模型出现过拟合,提高其泛化能力。将扩充好的缺陷图像数据集按照4:1的比例分为训练集和测试集,为了改善图像数据,使其更适合后续模型分类任务,需要对训练集和测试集进行预处理,其中训练集里的缺陷图像首先进行随机裁剪为224 × 224尺寸的图像,其次,将其转换转化成Pytorch的张量(Tensor格式),最后进行归一化处理。而测试集预处理需要将图像缩放为256 × 256尺寸、对256 × 256尺寸的图像进行中心裁剪(尺寸为224 × 224),最后进行归一化处理。
本文选择了ResNet-18、ResNet-34、ResNet-50和VGG-16四种不同的深度学习模型作为研究对象,并对这四种模型的输出层和归一化层进行针对性的修改。提出改进的网络模型,旨在优化光伏电池缺陷分类的性能。再将训练好的模型作为特征提取器,用于Softmax分类器进行分类任务,最后将每一种深度卷积神经网络模型通过准确率、召回率和损失函数等指标对比分析得到较好的模型用于对光伏电池缺陷图像进行分类。
本文采用的模型之一——VGG-16模型,为了提高此模型的准确度和收敛速度,更好的与光伏电池缺陷图像数据进行适配,对其输出层的结构进行微调。
VGG-16模型包括5部分特征提取层和输出层(包括全连接层和Softmax分类激活函数),其中特征提取层的每部分结束,都会经过一次最大池化层进行下采样,再经过拉伸操作得到的数据流与4096个神经元进行相连,最后通过Softmax分类操作将其输出为1000个类别结果,其结构如
本文的分类结果共有8类,由7类光伏电池缺陷以及正常组成。因此,将网络的最后一层Fc1000删除,并用一个8分类的Softmax分类器对其进行替代,改进后的网络模型如
本文应用了ResNet网络中的三个模型(ResNet-18、ResNet-34和ResNet-50)。以ResNet-18为例进行说明,模型包括5部分特征提取层、全连接层和Softmax分类激活函数,其中特征提取层的每部分都有若干个参差块结构组成,最后经过平均池化层进行下采样,将数据流从7 × 7 × 512转变为1*1*512结构,再经过拉伸操作得到的数据流与512个神经元进行相连,最后通过Softmax分类操作将其输出为1000个类别结果,其输出层结构如
运用一个8分类的Softmax分类器对Fc1000进行替代,改进后的网络模型如
在深度学习中,层数不断增加的情况下,上层接收数据的分布会受到低层参数的影响。这种现象,经过多个层的累积作用,会使得网络顶层面对的输入数据分布发生显著的变动。网络的高层需要不断适应来自底层参数变化引起的输入分布的波动,这个过程会显著减缓网络整体的学习进度。因此,引入了归一化策略,其核心思想是通过将输入数据的分布规范到一个特定的范围内,来稳定每一层的输入分布。这样做可以减少输入分布变动对网络的影响,进而提高网络学习的效率。在神经网络中,广泛采用的归一化技术包括实例归一化(Instance Normalization, IN)
在经典的残差网络设计中,批归一化(BN)被广泛应用于卷积层后。然而BN的效果受到Batch大小的影响较大,主要是因为它在计算数据的均值和方差时依赖于批量内的样本。在小批量数据的情况下,得到的统计量可能无法准确反映整体数据分布,从而影响BN的性能。所以本文采用自适配归一化(Switchable Normalization, SN)
(1)
公式(1)与IN、LN和BN的定义相似。其中γ和β分别为尺度因子和平移因子,是两个可以进行学习的训练参数,ε是一个极小值,用于避免产生分母为0错误计算,集合定义为 , 和 为相应统计量对应的权重系数,均值的加权系数 的计算公式如(2)所示。
(2)
学习率在随机梯度下降算法是影响神经网络训练效果的关键因素之一。设置过高的学习率可能导致网络在寻找最优解的过程中步长过大,使得损失函数值出现震荡,有可能错过最佳解。反之,设置为过低的学习率可能致使网络参数更新缓慢,增加训练时间。因此,应采用先快后慢的策略来实现最优化,在训练初期应设置较高学习率来加快收敛速度,随着训练时间的增加,逐渐降低学习率,以实现更精细的权重调整,帮助模型更接近最优解。本文的学习策略为等间隔调整学习函数(StepLR)。
本文的Epoch为30,根据官方在StepLR情况下Epoch为30时,初始学习率(lr)为0.005。其次本文学习率下降间隔(Step_Size)设置为5,调整倍数(Gamma)为0.5,即,每5个Epoch学习率下降为之前的一半,随着网络的迭代学习率逐步衰减,最终收敛到7.813e−5。
环境 | 配置 | 参数 |
Windows版本 | Windows 11 | |
软件环境 | Python版本 | Python 3.9.5 |
续表
深度学习框架 | PyTorch 1.13.1 | |
库 | CUDA 11.6 |
为了验证本文提出的光伏电池缺陷分类方法的有效性,仿真实验所使用的计算机软硬件配置如
环境 | 配置 | 参数 |
CPU | Intel (R) Core (TM) i7-10875H | |
硬件环境 | GPU | Geforce RTX 2060 |
内存大小 | 16GB |
为了保证模型达到最优,对实验的超参数进行预设,迭代次数、批量处理大小、优化器和学习率等参数设置如
名称 | 参数 |
Epoch | 30 |
Batch SizeOptimizere | 20Adam
|
初始学习率 | 0.005 |
实验使用的图像数据来源于两个部分,一部分来自河北工业大学、北京航空航天大学联合发布的——PVE-LD数据集,另一部分则是在网站上进行爬取获得。最终选取7类较为常见的光伏电池缺陷和1类无缺陷的图像数据构建数据集,在构建的数据集中随机选取的图像示例如
在构建的数据集时,由于缺陷数据的稀缺性,光伏电池缺陷图像数据量较小,正常图像和缺陷图像数量差距非常大,不仅如此,由于光伏电池有些缺陷出现的概率相比其他缺陷类型而言出现的概率更低,所以各个缺陷类别之间的图像数量差距也会严重失调,导致在训练模型时出现过拟合的情况,加大了模型训练的难度。在各类别图像数量比例严重失调的情况下,将训练好的模型用于分类任务,可能会出现分类结果更偏向图像数据量较大的类别,降低模型分类的准度。因此数据增强在本次光伏电池的缺陷分类任务当中是尤为关键的。
本文将缺陷图像数据集采用数据增强的方式,涵盖了亮度增强、旋转和翻转。数据增强前的图像数量如
类别 | 原始图像 | 亮度增强 | 水平翻转 | 旋转90° |
碎片 |
续表
裂纹 | ||||
水平未对准 |
进行模型训练时需要将数据集划分为训练集和测试集,比例为4:1,训练集和测试集中各类缺陷图像数量如
在相同实验条件下,通过改进后的ResNet-18、ResNet-34、ResNet-50和VGG-16四种网络模型训练,将不同模型的准确率、收敛速度和召回率等多个维度进行记录,得到以下实验结果。
1) VGG-16网络模型
图10. VGG-16网络模型的评价指标
VGG-16网络模型的评价指标如
2) ResNet-18网络模型
图11. ResNet-18网络模型的评价指标
ResNet-18网络模型的评价指标如
3) ResNet-34网络模型
图12. ResNet-34网络模型的评价指标
ResNet-34网络模型的评价指标如
4) ResNet-50网络模型
图13. ResNet-50网络模型的评价指标
ResNet-50网络模型的评价指标如
为了找出最适合光伏电池缺陷分类任务的网络模型。在相同实验条件下,将改进后的ResNet-18、ResNet-34、ResNet-50和VGG-16四种网络模型通过准确率、收敛速度和召回率等多个维度进行比较分析,比较这些模型在光伏电池缺陷分类任务上的效果。
图14. 四种网络模型的评价指标
模型 | 准确率(Ac) | 损失函数 | 精确率(Pr) | 召回率(Re) | F1 Score |
VGG-16 | 87.86% | 31.41% | 89.41% | 88.73% | 87.80% |
ResNet-18 | 96.97% | 12.05% | 97.88% | 96.74% | 97.20% |
ResNet-34 | 97.08% | 12.24% | 97.99% | 96.96% | 97.38% |
ResNet-50 | 97.08% | 12.51% | 98.19% | 97.01% | 97.50% |
四种网络模型的评价指标如
以上结果表明,ResNet-18模型在光伏电池缺陷分类任务上具有显著的效果,是最适合光伏电池缺陷分类任务的网络模型。
运用选好的网络模型ResNet-18,进行分类效果的展示,如
图15. 分类效果示例
通过对这四种模型的输出层和归一化层进行针对性的修改,本文提出了改进的网络模型,旨在优化光伏电池缺陷分类的性能。最后,我们基于一系列性能指标对四种模型进行了详细的对比分析。实验结果表明,虽然各模型均展现出了较高的分类性能,但最终选取ResNet-18作为光伏电池缺陷分类的优选模型。这一选择基于ResNet-18模型在准确率、训练效率和资源消耗等方面的综合表现。