一种基于深度学习目标检测的光伏缺陷检测方法

著录项
  • CN202111337200.2
  • 20211112
  • CN114092838A
  • 20220225
  • 前郭县富邦能源科技服务有限公司;林赐云
  • 薛辉;张喜山;田野;赵晓龙;吴薇;苏冬雨
  • G06V20/17
  • G06V20/17 G06V10/80 G06V10/762 G06V10/82 G06K9/62 G06N3/04 G06N3/08

  • 吉林省松原市前郭县王府站镇哈玛尔村
  • 吉林(22)
摘要
本发明公开了一种基于深度学习目标检测的光伏缺陷检测方法,属于深度学习、神经网络和光伏电站缺陷检测技术领域。具体方法如下:首先应用无人机对原始数据进行采集,将采集到的数据传回后台系统进行隔帧提取及预处理;接着制作红外图像数据集;然后将图片放入网络进行训练,输出特征图片;最后将预测网络整合到光伏检测后台系统,对无人机拍摄回传的红外视频可进行实时检测。本发明方法通过深度学习结合无人机红外成像技术实现红外光伏故障检测,操作流程简单,相较于传统的光伏热斑检测方法,本发明方法大大节省了人力物力、识别速度更快、鲁棒性强、检测效率高。
权利要求

1.一种基于深度学习目标检测的光伏缺陷检测方法,其特征主要体现在:

S1、原始数据的采集:在光照度较好的晴朗天气,应用旋翼无人机及搭载的红外光谱相机对光伏组件进行拍摄,在拍摄之前提前进行路径规划,拍摄后的光伏板红外视频会实时回传并进行下一步处理;

S2、制作红外图像数据集:由于深度学习目标检测算法需要大量的标记数据,所以需要在训练之前对红外图像进行标记;首先,使用开源工具LabelImage对所有图像进行标注,生成包含标注信息的.xml文件;接下来,将.xml文件并存放在事先准备好的VOCdevkit结构目录下,其中包括存储.xml文件的Annotations文件,存放原始图片的JPEGImages文件以及存放.txt文件的ImageSets-Main;

S3、对原数据进行数据增强操作:由于采取的样本数量较少,需要在对标注完的红外图片进行水平翻转、旋转、倒置、裁剪拼接等方法增大原始数据集的数量,以确保检测结果的准确性;

S4、对标注好的红外图像进行先验框聚类:需应用K-means++算法对先验框进行聚类;K-Means++算法是无监督的聚类算法,它实现起来比较简单,聚类效果也不错,因此应用很广泛,应用在本发明符合对快速性和准确性的需求:

k个初始化的质心的位置选择对最后的聚类结果和运行时间都有很大的影响,因此需要选择合适的k个质心;如果仅仅是完全随机的选择,有可能导致算法收敛很慢;K-Means++算法就是对K-Means随机初始化质心的方法的优化;

K-Means++的对于初始化质心的优化策略也很简单,如下:

a)从输入的数据点集合中随机选择一个点作为第一个聚类中心μ1;

b)对于数据集中的每一个点Xi,计算它与已选择的聚类中心中最近聚类中心的距

c)选择一个新的数据点作为新的聚类中心,选择的原则是:D(x)较大的点,被选取作为聚类中心的概率较大;

d)重复b和c直到选择出k个聚类质心;

e)利用这k个质心来作为初始化质心去运行标准的K-Means算法;

S5、训练网络:将处理好的数据集放入网络中、并更改对应的classes文件类别信息、类别名称、训练迭代次数以及对应的文件路径,初次训练设置总训练次数为5000epoch,由于浅层特征在迭代次数增加到一定数量后相似度较高,而层数越高泛化能力越好,故设置到第4000个epoch时冻结一部分Darknet53训练网络,此外还可以一定程度上加快训练速度;接着加入CutMix在线数据增强方法,当网络训练过程中,我们会使用梯度下降法来优化目标函数;

接下来运行train.py脚本开始训练;神经网络的实质就是在正向传播过程中求取目标权值信息并计算损失,在反向传播过程中加入损失函数调节权值;通过上百次迭代得到的loss值很小时,便可保存权重文件用于目标检测;本发明中的骨干网络使用了Darknet53网络结构,由一系列残差结构组成,并在基础上的主干部分继续堆叠原来的残差块,支路部分则相当于一个残差边,经过少量处理直接连接到最后,每个卷积层均通过批量归一化BatchNormalization和Mish激活函数操作;此骨干网络将基础层的特征映射划分为两部分,然后通过跨阶段层次结构将它们合并,在减少了计算量的同时保证了准确率,Mish激活函数能够进一步提高训练精度,其原理如下所示:

y=x*tanh(ln(1+exp(x)))

在训练过程中,使用CutMix算法进行数据增强;本发明使用的CutMix使用两张图片进行拼接,并随机缩放、随机裁剪、随机排布的方式进行拼接,进一步的增大了数据集,增强了系统的鲁棒性;红外光伏热斑目标一般较小,小目标的AP一般比中目标和大目标低很多,为了使识别更准确,随机使用2张图片,随机缩放,再随机分布进行拼接,大大丰富了检测数据集,特别是随机缩放增加了很多小目标,让网络的鲁棒性更好;此外CutMix数据增强在训练时可以直接计算2张图片的数据,在扩充数据集的同时保证了训练速度;

在训练网络过程中,在Backbone和输出层之间插入SPP模块可以更好的提取融合特征;SPP结构应用在对Darknet53的最后一个特征层的卷积里,在对PDarknet53的最后一个特征层进行三次卷积后,分别利用四个不同尺度的最大池化进行处理,最大池化下采样的池化核大小分别为13×13、9×9、5×5、1×1;

S6、特征图的输出:图片输入模型处理完成后,会输出三种尺度的特征图,不同大小的特征图对应不同的先验框,三个不同层级的特征图进行融合;YOLO算法的3个输出张量的shape分别是:(19,19,225)、(38,38,255)、(76,76,225);每一个网格对应3个Anchorboxes,每个要预测的bounding box对应的5个值;网络的损失函数包含三个方面:类别损失、置信度损失、位置损失:

类别损失函数采用多类别交叉熵损失,其公式如下:

上式中a表示预测框,b表示目标类别,Xab∈{0,1},当预测框包含真实目标时Xab=1,当预测框不包含真实目标值时Xab=0;表示网络预测目标边界框内存在目标类别的Sigmoid概率;

目标置信度采用二值交叉熵损失,其公式如下:

位置损失采用了DIOU损失,其公式如下:

LDIOU=1-IOU(A,B)+ρ2(Actr,Bctr)/c2

其中其中,A为预测框,B为真实框;Actr为预测框中心点坐标,Bctr为真实框中心点坐标;ρ(g)是欧式距离计算;c为A、B最小包围框的对角线长度;

S7、将预测算法整合到光伏检测大数据处理平台,对无人机拍摄回传的红外视频进行隔帧提取后,可进行实时检测,准确分析异常信息并发送检测报告,包括故障信息以及定位信息,便于及时进行维修处理;对于红外视频关键帧的提取,采用一种基于帧间差分的算法,原理为将两帧图像进行差分,以得到图像的平均像素强度可以用来衡量两帧图像的变化大小;因此,基于帧间差分的平均强度,每当视频中的某一帧与前一帧画面内容产生了大的变化,便认为它是关键帧,并将其提取出来;

算法的流程简述如下:

首先,我们读取视频,并依次计算每两帧之间的帧间差分,进而得到平均帧间差分强度;

其次,我们可以选择如下的三种方法的一种来提取关键帧,它们都是基于帧间差分的;

最后,使用局部最大值,选择具有平均帧间差分强度局部最大值的帧作为视频的关键帧,这种方法的提取结果在丰富度上表现更好一些,提取结果均匀分散在视频中;需要注意的是,使用这种方法时,对平均帧间差分强度时间序列进行平滑是很有效的技巧;它可以有效的移除噪声来避免将相似场景下的若干帧均同时提取为关键帧。

说明书
技术领域

本发明涉及光伏电站故障检测技术领域,更具体地说,本发明是一种基于深度学习目标检测的光伏缺陷检测方法。

太阳能光发电是指无需通过热过程直接将光能转变为电能的发电方式。它包括光伏发电、光化学发电、光感应发电和光生物发电。光伏发电是利用太阳能级半导体电子器件有效地吸收太阳光辐射能,并使之转变成电能的直接发电方式,是当今太阳光发电的主流。在光化学发电中有电化学光伏电池、光电解电池和光催化电池,目前得到实际应用的是光伏电池。

光伏发电系统主要由太阳能电池、蓄电池、控制器和逆变器组成,其中太阳能电池是光伏发电系统的关键部分,太阳能电池板的质量和成本将直接决定整个系统的质量和成本。太阳能电池主要分为晶体硅电池和薄膜电池两类,前者包括单晶硅电池、多晶硅电池两种,后者主要包括非晶体硅太阳能电池、铜铟镓硒太阳能电池和碲化镉太阳能电池。

光伏组件长时间的工作,容易产生许多故障,最为严重的就是热斑故障,本发明中检测的光伏缺陷即为热斑。光伏组件在工作时,组件中单体电池由于遮光或者本身原因导致电流降低,当工作电流超过该单体电池电流时,则该部分电池处于反向偏置状态,在电路中的功能由电源变成负载,消耗能量,从而在组件内部形成局部过热现象,产生热斑。

传统的热斑检测方法包括I-V曲线法、人工手持热成像仪巡检法等,传统方法检测速度慢,有功率损失,且不一定准确,检测过程十分繁琐,费时费力。随着科技的发展,无人机搭载红外光谱相机的方法可以进行红外光伏故障的初步检测。

本发明采用旋翼无人机搭载红外光谱相机采集图像,通过5G网络快速回传,并在后台进行实时检测,在保证实时性的同时结合深度学习目标检测模型,获得更高的检测精度。

本文的发明目的是提供一种保证检测速度和检测准确率的基于深度学习目标检测的光伏缺陷检测方法。

技术方案:本发明提供一种基于深度学习目标检测算法的红外光伏缺陷检测方法,包括以下步骤:

S1、原始数据的采集。在光照度较好的晴朗天气,应用旋翼无人机及搭载的红外光谱相机对光伏组件进行拍摄,在拍摄之前提前进行路径规划,拍摄在初秋的上午11时至下午16时之间的时间段进行。拍摄后的光伏板红外视频会实时回传并进行下一步处理;

S2、制作红外图像数据集。由于深度学习目标检测算法需要大量的标记数据,所以需要在训练之前对红外图像进行标记。首先,使用开源工具LabelImage对所有图像进行标注,生成包含标注信息的.xml文件。接下来,将.xml文件并存放在事先准备好的VOCdevkit结构目录下,其中包括存储.xml文件的Annotations文件,存放原始图片的JPEGImages文件以及存放.txt文件的ImageSets-Main;

S3、对原数据进行数据增强操作。由于采取的样本数量较少,需要在对标注完的红外图片进行水平翻转、旋转、倒置、裁剪拼接等方法增大原始数据集的数量,以确保检测结果的准确性;

S4、对标注好的红外图像进行先验框聚类。需应用K-means++算法对先验框进行聚类。K-Means++算法是无监督的聚类算法,它实现起来比较简单,聚类效果也不错,因此应用很广泛,应用在本发明符合对快速性和准确性的需求;

S5、训练网络。本发明应用改进的yolo网络对数据进行训练。将处理好的数据集放入网络中、并更改对应的类别信息、类别名称、训练迭代次数以及对应的文件路径,运行train.py脚本开始训练。神经网络的实质就是在正向传播过程中求取目标权值信息并计算损失,在反向传播过程中加入损失函数调节权值。通过上百次迭代得到的loss值很小时,便可保存权重文件用于目标检测。本发明中的骨干网络使用了Darknet53网络结构,由一系列残差结构组成,并在基础上的主干部分继续堆叠原来的残差块,支路部分则相当于一个残差边,经过少量处理直接连接到最后,每个卷积层均通过批量归一化Batch Normalization和Mish激活函数操作。此骨干网络将基础层的特征映射划分为两部分,然后通过跨阶段层次结构将它们合并,在减少了计算量的同时保证了准确率;

S6、特征图的输出。图片输入模型处理完成后,会输出三种尺度的特征图,不同大小的特征图对应不同的先验框,三个不同层级的特征图进行融合。YOLO算法的3个输出张量的shape分别是:(19,19,225)、(38,38,255)、(76,76,225)。每一个网格对应3个Anchorboxes,每个要预测的bounding box对应的5个值;

S7、将预测算法整合到光伏检测大数据处理平台,对无人机拍摄回传的红外视频进行隔帧提取后,可进行实时检测,准确分析异常信息并发送检测报告,包括故障信息以及定位信息,便于及时进行维修处理。对于红外视频关键帧的提取,采用一种基于帧间差分的算法,原理为将两帧图像进行差分,以得到图像的平均像素强度可以用来衡量两帧图像的变化大小。因此,基于帧间差分的平均强度,每当视频中的某一帧与前一帧画面内容产生了大的变化,便认为它是关键帧,并将其提取出来。

进一步的,S5中为增强对目标的检测,使用CutMix算法进行数据增强。本发明使用的CutMix使用两张图片进行拼接,并随机缩放、随机裁剪、随机排布的方式进行拼接,进一步的增大了数据集,增强了系统的鲁棒性。红外光伏热斑目标一般较小,小目标的AP一般比中目标和大目标低很多,为了使识别更准确,随机使用2张图片,随机缩放,再随机分布进行拼接,大大丰富了检测数据集,特别是随机缩放增加了很多小目标,让网络的鲁棒性更好。此外CutMix数据增强在训练时可以直接计算2张图片的数据,在扩充数据集的同时保证了训练速度;

本发明提出的一种基于深度学习目标检测的光伏缺陷检测方法,具有以下有益效果:

1.采用无人机对光伏板进行自动红外视频采集,大大节省了人力物力,最重要的是保证了实时性,且系统有较强的鲁棒性;

2.采用的Yolo模型能更好的适应红外小目标的识别,在检测速度与检测精度上都有优异的表现,采用数据增强方法更有效增加了原始数据量,新的骨干网络更有益于识别故障特征。

图1为无人机红外成像光伏检测系统流程图;

图2为本发明的整体流程图;

下面通过结合本发明方法的附图,对本发明方法的技术方案进行进一步地说明。

一种基于Yolov4和热红外图像的光伏缺陷检测方法的具体工作流程如下所示:

S1、原始数据的采集。在光照度较好的晴朗天气,应用旋翼无人机及搭载的红外光谱相机对光伏组件进行拍摄,在拍摄之前提前进行路径规划,拍摄在初秋的上午11时至下午16时之间的时间段进行。拍摄后的光伏板红外视频会实时回传并进行下一步处理;

S2、制作红外图像数据集。由于深度学习目标检测算法需要大量的标记数据,所以需要在训练之前对红外图像进行标记。首先,使用开源工具LabelImage对所有图像进行标注,生成包含标注信息的.xml文件。接下来,将.xml文件并存放在事先准备好的VOCdevkit结构目录下,其中包括存储.xml文件的Annotations文件,存放原始图片的JPEGImages文件以及存放.txt文件的ImageSets-Main;

S3、对原数据进行数据增强操作。由于采取的样本数量较少,需要在对标注完的红外图片进行水平翻转、旋转、倒置、裁剪拼接等方法增大原始数据集的数量,以确保检测结果的准确性;

S4、对标注好的红外图像进行先验框聚类。需应用K-means++算法对先验框进行聚类。K-Means++算法是无监督的聚类算法,它实现起来比较简单,聚类效果也不错,因此应用很广泛,应用在本发明符合对快速性和准确性的需求:

k个初始化的质心的位置选择对最后的聚类结果和运行时间都有很大的影响,因此需要选择合适的k个质心。如果仅仅是完全随机的选择,有可能导致算法收敛很慢。K-Means++算法就是对K-Means随机初始化质心的方法的优化。

K-Means++的对于初始化质心的优化策略也很简单,如下:

a)从输入的数据点集合中随机选择一个点作为第一个聚类中心μ1;

b)对于数据集中的每一个点Xi,计算它与已选择的聚类中心中最近聚类中心的距

c)选择一个新的数据点作为新的聚类中心,选择的原则是:D(x)较大的点,被选取作为聚类中心的概率较大;

d)重复b和c直到选择出k个聚类质心;

e)利用这k个质心来作为初始化质心去运行标准的K-Means算法。

S5、训练网络。将处理好的数据集放入网络中、并更改对应的classes文件类别信息、类别名称、训练迭代次数以及对应的文件路径,初次训练设置总训练次数为5000epoch,由于浅层特征在迭代次数增加到一定数量后相似度较高,而层数越高泛化能力越好,故设置到第4000个epoch时冻结一部分Darknet53训练网络,此外还可以一定程度上加快训练速度。接着加入CutMix在线数据增强方法,当网络训练过程中,我们会使用梯度下降法来优化目标函数。

接下来运行train.py脚本开始训练。神经网络的实质就是在正向传播过程中求取目标权值信息并计算损失,在反向传播过程中加入损失函数调节权值。通过上百次迭代得到的loss值很小时,便可保存权重文件用于目标检测。本发明中的骨干网络使用了Darknet53网络结构,由一系列残差结构组成,并在基础上的主干部分继续堆叠原来的残差块,支路部分则相当于一个残差边,经过少量处理直接连接到最后,每个卷积层均通过批量归一化Batch Normalization和Mish激活函数操作。此骨干网络将基础层的特征映射划分为两部分,然后通过跨阶段层次结构将它们合并,在减少了计算量的同时保证了准确率,Mish激活函数能够进一步提高训练精度,其原理如下所示:

y=x*tanh(ln(1+exp(x)))

在训练过程中,使用CutMix算法进行数据增强。本发明使用的CutMix使用两张图片进行拼接,并随机缩放、随机裁剪、随机排布的方式进行拼接,进一步的增大了数据集,增强了系统的鲁棒性。红外光伏热斑目标一般较小,小目标的AP一般比中目标和大目标低很多,为了使识别更准确,随机使用2张图片,随机缩放,再随机分布进行拼接,大大丰富了检测数据集,特别是随机缩放增加了很多小目标,让网络的鲁棒性更好。此外CutMix数据增强在训练时可以直接计算2张图片的数据,在扩充数据集的同时保证了训练速度;

在训练网络过程中,在Backbone和输出层之间插入SPP模块可以更好的提取融合特征。SPP结构应用在对Darknet53的最后一个特征层的卷积里,在对PDarknet53的最后一个特征层进行三次卷积后,分别利用四个不同尺度的最大池化进行处理,最大池化下采样的池化核大小分别为13×13、9×9、5×5、1×1;

S6、特征图的输出。图片输入模型处理完成后,会输出三种尺度的特征图,不同大小的特征图对应不同的先验框,三个不同层级的特征图进行融合。YOLO算法的3个输出张量的shape分别是:(19,19,225)、(38,38,255)、(76,76,225)。每一个网格对应3个Anchorboxes,每个要预测的bounding box对应的5个值。网络的损失函数包含三个方面:类别损失、置信度损失、位置损失:

类别损失函数采用多类别交叉熵损失,其公式如下:

上式中a表示预测框,b表示目标类别,Xab∈{0,1},当预测框包含真实目标时Xab=1,当预测框不包含真实目标值时Xab=0。表示网络预测目标边界框内存在目标类别的Sigmoid概率;

目标置信度采用二值交叉熵损失,其公式如下:

位置损失采用了DIOU损失,其公式如下:

LDIOU=1-IOU(A,B)+ρ2(Actr,Bctr)/c2

其中其中,A为预测框,B为真实框;Actr为预测框中心点坐标,Bctr为真实框中心点坐标。ρ(g)是欧式距离计算;c为A、B最小包围框的对角线长度;

S7、将预测算法整合到光伏检测大数据处理平台,对无人机拍摄回传的红外视频进行隔帧提取后,可进行实时检测,准确分析异常信息并发送检测报告,包括故障信息以及定位信息,便于及时进行维修处理。对于红外视频关键帧的提取,采用一种基于帧间差分的算法,原理为将两帧图像进行差分,以得到图像的平均像素强度可以用来衡量两帧图像的变化大小。因此,基于帧间差分的平均强度,每当视频中的某一帧与前一帧画面内容产生了大的变化,便认为它是关键帧,并将其提取出来。

算法的流程简述如下:

首先,我们读取视频,并依次计算每两帧之间的帧间差分,进而得到平均帧间差分强度;

其次,我们可以选择如下的三种方法的一种来提取关键帧,它们都是基于帧间差分的;

最后,使用局部最大值,选择具有平均帧间差分强度局部最大值的帧作为视频的关键帧,这种方法的提取结果在丰富度上表现更好一些,提取结果均匀分散在视频中。需要注意的是,使用这种方法时,对平均帧间差分强度时间序列进行平滑是很有效的技巧。它可以有效的移除噪声来避免将相似场景下的若干帧均同时提取为关键帧。

本文发布于:2024-09-23 03:16:06,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/85044.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议