一种基于端到端算法的绝缘子缺陷检测的方法
技术领域
本发明涉及绝缘子缺陷检测领域,尤其是涉及一种基于端到端算法的绝缘子缺陷检测的方法。
背景技术
我国的电力系统由发电、输电、变电和配电等环节构成,其中绝缘子是输电线路中非常特殊的绝缘控件,主要负责固定载流导体,防止电流回地,在电力系统中有着十分重要的作用,因此,绝缘子的检测成为维护电力系统安全的首要任务。
近年来,随着红外技术及无人机技术的发展,巡检部门利用无人机挂载红外设备对绝缘子进行检测,该检测方法不用接触且安全性较高,但是,目前运行红外技术检测的数据需要进行人工肉眼观察,依据经验进行判依据经验进行判别,效率较低、准确度较低且浪费了大量的人力物力。随着深度学习目标检测技术的发展,我们研究绝缘子红外检测及图像处理技术,将红外绝缘子检测与深度学习技术进行结合,用于电力巡检部门红外绝缘子图像的检测。当前,基于深度学习的目标检测方法主要有2种:(1)基于候选区域提取(Region Proposal)的目标检测法;(2)基于端到端(End-to-End)的目标检测算法。基于候选区域提取的方法在准确度方面有很大的优势,但这种方法在提取特征时计算十分复杂,无法满足电力系统应用中对目标检测的实时性需求。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于端到端算法的绝缘子缺陷检测的方法。
本发明的目的可以通过以下技术方案来实现:
一种基于端到端算法的绝缘子缺陷检测的方法,包括以下步骤:
S1:构建绝缘子图像集;
S2:通过图像预处理的方法对图像集进行扩充;
S3:对扩充后的图像集进行标注;
S4:利用图像集分别训练第一检测算法和第二检测算法;
S5:获取待检测绝缘子图像,利用训练好的第一检测算法、第二检测算法对待检测绝缘子图像进行检测,获取检测结果。
优选地,所述的步骤S5具体包括:
S51:获取待检测绝缘子图像,利用训练好的第一检测算法对待检测绝缘子图像进行检测,获取第一检测结果;
S52:利用训练好的第二检测算法对待检测绝缘子图像进行检测,获取第二检测结果;
S53:将第一检测结果、第二检测结果合并,获取缺陷检测结果。
优选地,所述的第一检测算法为YOLOv1网络,所述的第二检测算法为SSD网络。
优选地,所述的步骤S5中利用YOLOv1网络识别待检测绝缘子图像时,包括以下步骤:
S511:将待检测绝缘子图像调整到448*448作为网络的输入;
S512:运行神经网络,得到候选框的坐标位置、物体的置信度和20个类别概率;
S513:进行非极大值抑制,筛选不符合要求的绝缘子图像的候选框。
优选地,所述的步骤S522具体包括:
在YOLOv1网络中输入调整后的绝缘子图像,来对该图像进行网格分割,每个网格均负责一种事物类别的检测,同时每个神经网格还会边界框中的置信度分数进行计算,计算公式为:
其中confidence为置信度,Pr(Object)为图像处理事物中的目标概率,为交并比。
优选地,所述的SSD网络的先验框的设置规则为:
其中,m为特征图量,sk为先验框占图片的比例,smax与smin分别为先验框占图片的比例的极大值、极小值。
优选地,所述的SSD网络的先验框的宽度和高度公式为:
其中,为先验框的宽度,为先验框的高度,ar为比例值。
优选地,所述的绝缘子图像集内包括普通绝缘子和红外绝缘子、缺陷绝缘子和正常绝缘子。
优选地,所述的步骤S2具体包括:
S21、对绝缘子图像进行去雾处理,获取更加清晰的绝缘子图像;
S22、对去雾后的绝缘子图像通过随机裁剪、旋转、色度调整和亮度调整对数据集进行扩充。
优选地,所述的步骤S21具体包括:
获取绝缘子图像局部区域内的暗通道
其中,Jdark为暗通道,Jc(y)为三原色最小值,y为滤波值,c为通道,Ω(x)为局部窗范围,c∈{r,g,b}指光学三原色,
求出绝缘子图像中每个像素RGB分量中的最小值,存入到一副和原始图像大小相同的灰度图中,然后再对这幅灰度图进行最小值滤波完成去雾。
与现有技术相比,本发明具有以下优点:本发明基于两种检测算法对绝缘子图像进行检测,并输出合并结果,能够有效对绝缘子图像进行识别处理,提高检测的实时性以及提高了检测速度,从而满足了电力系统实时性的要求,通过对绝缘子图像的预处理,能够获得更加清晰的绝缘子图像,通过建立针对性图像集,大大减少了后续特征提取的工作量,从而提高了检测效率,同时对图像的不同处理,进一步扩大了数据集的不同绝缘子种类,进一步保证了检测结果的准确性。
附图说明
图1为本发明的流程图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。注意,以下的实施方式的说明只是实质上的例示,本发明并不意在对其适用物或其用途进行限定,且本发明并不限定于以下的实施方式。
实施例
一种基于端到端算法的绝缘子缺陷检测的方法,包括以下步骤:
S1:构建绝缘子图像集,绝缘子图像集内包括普通绝缘子和红外绝缘子、缺陷绝缘子和正常绝缘子。
其获取方式包括:利用无人机对绝缘子进行航拍,利用网上各种开源数据集,对其进行整理分类,获取有效绝缘子图像。
S2:通过图像预处理的方法对图像集进行扩充。
步骤S2具体包括:
S21、对绝缘子图像进行去雾处理,获取更加清晰的绝缘子图像:
获取绝缘子图像局部区域内的暗通道
其中,Jdark为暗通道,Jc(y)为三原色最小值,y为滤波值,c为通道,Ω(x)为局部窗范围,c∈{r,g,b}指光学三原色,
求出绝缘子图像中每个像素RGB分量中的最小值,存入到一副和原始图像大小相同的灰度图中,然后再对这幅灰度图进行最小值滤波完成去雾,滤波的半径由窗口大小决定,一般有Window Size=2*Radius+1。
S22、对去雾后的绝缘子图像通过随机裁剪、旋转、色度调整和亮度调整对数据集进行扩充。
S3:对扩充后的图像集进行标注。对图像集中的每一张图像进行标注,无缺陷绝缘子图像的标注为无缺陷,有缺陷绝缘子的标注为缺陷的位置。
S4:利用图像集分别训练第一检测算法和第二检测算法。将图像集送入两个算法中,完成算法的训练。
本实施例中,第一检测算法为YOLOv1网络,第二检测算法为SSD网络。
S5:获取待检测绝缘子图像,利用训练好的第一检测算法、第二检测算法对待检测绝缘子图像进行检测,获取检测结果。
本实施例的实现平台GPU,NVIDIA GeForce 820M;CPU,Intel Core i5-4200M,2.50GHz/4.00GB;系统:Windows10,实现语言Python。
步骤S5具体包括:
S51:获取待检测绝缘子图像,利用训练好的第一检测算法对待检测绝缘子图像进行检测,获取第一检测结果;
利用YOLOv1网络识别待检测绝缘子图像时,包括以下步骤:
S511:将待检测绝缘子图像调整到448*448作为网络的输入;
S512:运行神经网络,得到候选框的坐标位置、物体的置信度和20个类别概率;
步骤S512具体包括:
在YOLOv1网络中输入调整后的绝缘子图像,来对该图像进行网格分割,每个网格均负责一种事物类别的检测,同时每个神经网格还会边界框中的置信度分数进行计算,计算公式为:
其中confidence为置信度,Pr(Object)为图像处理事物中的目标概率,为交并比。
倘若该神经网格中没有需要识别的目标事物,则该网格内的置信度为0。除此之外,每个网格中还需要对进行一定程度上的预测。也就是在网格中具有所识别目标事物的条件下,要识别目标事物属于那个分类的概率。
S513:进行非极大值抑制,筛选不符合要求的绝缘子图像的候选框。
通过S512的方法得到很多关于绝缘子的预测边界框,接下来利用非极大值抑制(NMS)法对这些预测框进行删选。首先对绝缘子图像进行一定规律下的有序排序,进而选择出分值最高的框。然后将其他预测框在进行识别一遍,倘若目前分数最大框的IOU大于系统给出的参数阈值。那么就将该框删除,本文IOU值设置为0.4;最后在一直没有被检测的框中在选出一个分值最大的预测框,继续上述过程,进而选出最终分值最大的预测框,此预测框即为最后的输出值。
S52:利用训练好的第二检测算法对待检测绝缘子图像进行检测,获取第二检测结果。
步骤S52中
SSD与YOLOv1均使用了一个CNN来实现特征图像的检测,但SSD则使用了多尺度的特征图。SSD在检测期间使用的是尺度不等的特征图模型,此做法的目的在于利用较大的特征图来实现对小特征图的检测,但是每个单元的先验框相对较小。而3×3特征图的单元数较少,但先验框比较大。不同的特征图设置有不同的先验框数目,随着特征图尺寸大小的降低,先验框的设置遵循以下规则。SSD网络的先验框的设置规则为:
其中,m为特征图量,sk为先验框占图片的比例,smax与smin分别为先验框占图片的比例的极大值、极小值,此处分别为0.9与0.2。
SSD网络的先验框的宽度和高度公式为:
其中,为先验框的宽度,为先验框的高度,ar为比例值。
S53:将第一检测结果、第二检测结果合并,获取缺陷检测结果。
本实施例中,第一检测结果为输出无缺陷或输出图像中缺陷位置,第二检测结果为无缺陷或输出图像中缺陷位置,当两个结果均为无缺陷时,输出检测结果为无缺陷,当只有一个结果为缺陷位置时,输出该缺陷位置,当两个结果为缺陷位置时,将两个结果中缺陷位置合并到一个图像中输出。
上述实施方式仅为例举,不表示对本发明范围的限定。这些实施方式还能以其它各种方式来实施,且能在不脱离本发明技术思想的范围内作各种省略、置换、变更。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:一种基于卷积神经网络的焊点检测方法