CN112750125B - 一种基于端到端关键点检测的玻璃绝缘子片定位方法 - Google Patents
一种基于端到端关键点检测的玻璃绝缘子片定位方法 Download PDFInfo
- Publication number
- CN112750125B CN112750125B CN202110118779.7A CN202110118779A CN112750125B CN 112750125 B CN112750125 B CN 112750125B CN 202110118779 A CN202110118779 A CN 202110118779A CN 112750125 B CN112750125 B CN 112750125B
- Authority
- CN
- China
- Prior art keywords
- glass insulator
- key point
- image
- loss
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10052—Images from lightfield camera
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30164—Workpiece; Machine component
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于端到端关键点检测的玻璃绝缘子片定位方法,包括:1)电力巡检玻璃绝缘子实例分割数据集的构建与标注;2)利用数据增强算法进行数据扩充;3)训练得到实例分割模型并将玻璃绝缘子所在区域的最小外接多边形图像切割下来,作为下一步关键点检测的数据集;4)标注关键点检测数据集并做数据扩充;5)设计一个端到端的关键点检测模型,不断调优训练;6)将训练好的实例分割模型和关键点检测模型串联起来工作:将待检测的玻璃绝缘子图片输入训练好的实例分割模型,将分割结果的区域切割下来输入到训练好的关键点检测模型,得到图中各玻璃绝缘子片所在位置关键点的坐标值。本发明可提高玻璃绝缘子片定位的速度和精确度。
Description
技术领域
本发明涉及图像模式识别与计算机视觉的技术领域,尤其是指一种基于端到端关键点检测的玻璃绝缘子片定位方法。
背景技术
绝缘子在输电网中是非常重要且常见的部件,起着绝缘以及支撑等作用,一旦出现故障,就会造成输电线之间或者与杆塔发生接触,从而导致供电中断的事故,对社会经济和民生带来很大的影响。在当前输电线的绝缘子用量中,由于玻璃绝缘子自爆淘汰,无需测零且抗老化性能优异的良好特性,占据接近三分之一的比重,然而玻璃绝缘子在运维过程中仍然会出现一些棘手的问题,如自爆率过高等,因此正确地识别定位到玻璃绝缘子并统计玻璃绝缘子片数,找到自爆缺陷并及时采取补救措施,是电力运维中很重要的一部分工作。
传统的玻璃绝缘子自爆检测方法为人工巡视方式,取决于人工判读,这种方式不仅效率低下,也需要大量的人力成本,且玻璃绝缘子所处的环境大多在高压环境下的变电站或是地理环境恶劣多样的野外输电线路中,人工巡视的方式会对工作人员的人身安全带来威胁。近几年来,在“智能电网”的大趋势下,无人机被广泛应用到电网的巡检运维当中,巡检效率大大提高,于是收集存储了大量的电力设备状态图像,如何合理有效地运用这些图片成为进一步智能化运维工作的重要一步。
目前与玻璃绝缘子自爆检测的相关研究,大多采用的是传统的图像处理技术,以玻璃绝缘子在图像中呈现浅绿色以及椭圆形的轮廓的先验知识对玻璃绝缘子进行分割提取,这种前提的设定大大限制了其算法的普适性,无法应用于背景复杂的真实环境当中。另外也有研究采用的是深度学习方法,主要分为三个阶段,第一阶段是使用目标检测或者实例分割算法对整串玻璃绝缘子进行定位识别;第二阶段进一步定位每片绝缘子所在位置,对第一阶段得到的整串玻璃绝缘子所在的ROI区域做进一步的玻璃绝缘子单片实例分割;第三阶段采取启发式的方法计算玻璃绝缘子各片之间的距离以识别出存在的自爆缺陷。整个算法流程分为三个阶段是较为合理可行的,但在第二个阶段中为了能够对各种场景下的玻璃绝缘子做到精确的分割以得到各片绝缘子的位置信息而继续采取实例分割的算法,其模型复杂度过高,难以做到实时的要求,且对大量图像数据集中的每片玻璃绝缘子的轮廓进行标注需要大量的人力和时间。
为了简化以上所述第二阶段的各片绝缘子定位算法,发明一种适应复杂背景且又能达到实时和精确度高的要求的玻璃绝缘子图片定位方法具有较高的实际应用价值。
发明内容
本发明的目的在于克服现有技术的缺点与不足,提出了一种基于端到端关键点检测的玻璃绝缘子片定位方法,主要利用数据增强算法扩充玻璃绝缘子训练数据,再设计一种适合于玻璃绝缘子图像的端到端的关键点检测模型,并不断调参重复训练,提高玻璃绝缘子片的定位精度。
为实现上述目的,本发明所提供的技术方案为:一种基于端到端关键点检测的玻璃绝缘子片定位方法,包括以下步骤:
1)收集电力巡检过程中拍摄的电力设备可见光图,整理出其中主要含有玻璃绝缘子的图片,称为玻璃绝缘子图片,然后以玻璃绝缘子图片构建实例分割数据集,运用图像标注工具人工标注整串玻璃绝缘子所在区域;
2)利用数据增强算法对所有原始数据集进行数据扩充,增大数据量;
3)使用实例分割模型对实例分割数据集进行训练,得到能够精确分割出整串玻璃绝缘子所在区域的实例分割模型,运用该实例分割模型对实例分割数据集中的每张图片进行分割,并将分割得到的区域切割保存下来,汇总成为关键点检测数据集;
4)运用图像标注工具人工标注关键点检测数据集中每片玻璃绝缘子的外环玻璃边缘的中心点作为玻璃绝缘子片的关键点,使用数据增强算法进行数据扩充;
5)针对关键点检测数据集,设计一种端到端的关键点检测模型,设定不同的参数对模型进行调试训练,保存在验证集中表现最好的关键点检测模型;
6)将以上训练好的实例分割模型和关键点检测模型串联起来工作:将待检测的玻璃绝缘子图片输入训练好的实例分割模型中,将分割结果的区域切割下来即局部玻璃绝缘子区域,输入到训练好的关键点检测模型中,得到图中各玻璃绝缘子片所在位置关键点的坐标值,从而实现玻璃绝缘子片的准确定位。
在步骤1)中,收集得到的玻璃绝缘子图片皆为宽8688、高5792的高清可见光图,由于直接对这样高清的图像进行训练会占据很多内存空间,所以在保证图片清晰度的情况下,将全部图片调整大小即插值为保证宽高比不变的宽1448、高965的图片再进行标注与训练;此外,为了步骤3)中切割出来的玻璃绝缘子所在区域尽可能地不包含背景,标注范围为整串玻璃绝缘子的最小外接多边形。
在步骤2)中,利用数据增强算法对图像进行数据扩充,包括:
a、随机图像旋转:旋转的角度在-20度到+20度之间随机选取;
b、随机图像裁剪:随机裁剪出整幅图像的五分之四;
c、随机水平翻转;
d、随机对比度与色彩转变。
在步骤3)中,采用的实例分割模型为Yolact++,该模型是一阶段的实时实例分割模型Yolact的改进版,进一步提高了整体模型的运行速度以及分割精确度,该模型将实例分割分成两个并行的子任务:一是生成一组原型掩膜,二是预测每个掩膜的系数,最后再将原型掩膜和掩膜的系数进行线性组合来生成实例掩膜;运用该模型对实例分割数据集中的每张图片进行分割,便能够得到每张图片中每个玻璃绝缘子串所在区域的掩膜以及其最小外接矩对应的图像部分,假设为R,计算掩膜二值图的角度也就是图像中该玻璃绝缘子的朝向角度,并利用该角度对R进行旋转,使得R中的玻璃绝缘子处于水平方向,最后根据掩膜将玻璃绝缘子所在的最小外接矩区域切割出来作为关键点检测部分的图像数据,这样处理的好处是切割下来的图像区域将最小程度地包含图像背景,且玻璃绝缘子都处在水平的方向,大大减小了关键点检测模型将要学习的场景复杂度。
在步骤4)中,运用图像标注工具labelme人工标注关键点检测数据集中每片玻璃绝缘子的外环玻璃边缘的中心点作为玻璃绝缘子片的关键点,标注类型选择为point,且标注的顺序要严格地遵守为逐行从左到右,以便于后续计算关键点坐标回归的时候与预测出来的坐标点相互对应;为了避免模型过拟合以及提高模型的泛化能力,使用数据增强算法进行数据扩充,包括:
a、随机水平或者垂直翻转;
b、随机对比度与色彩转变。
在步骤5)中,设计一种适合于玻璃绝缘子的端到端的关键点检测模型,具体情况如下:
a、网络结构
将输入图像大小调整插值到一个固定的宽高,但要保证输入到网络中的图像宽高都为16的倍数,设网络输入的图像规格为[b×3×h×w],其中b为batch size,3为图片的RGB三个通道数,h为图片的高,w为图片的宽;
整个网络结构分成3个主要部分:特征提取骨干网络backbone、关键点坐标回归分支coord_head和概率热图预测分支heatmap_head,其中coord_head与heatmap_head为并行结构,各部分具体含义及详细结构如下;
特征提取骨干网络backbone的作用是提取特征,参考的是在人体姿态估计中效果好且被广泛应用的HourglassNet,HourglassNet采用类似沙漏的下采样-上采样结构的基础模块Hourglass模块串接而成,通过Hourglass模块对称结构进行特征提取,使得网络不断重复自底向上和自顶向下的特征传递过程,从而整合局部和全局信息,捕捉不同尺度下的特征,更好地获取关键点之间的相对关系;特征提取骨干网络backbone由两个部分组成,第一部分的主要作用为将输入图像的通道数由3转换为128,具体网络设计采用的是两层的卷积核为1×1的二维卷积,第一层卷积将通道数变为64,第二层卷积将通道数变为128,即经过第一部分的两层二维卷积之后,网络中的数据流规格变为[b×128×h×w];第二部分使用的是一个经典的Hourglass模块,该模块的下采样的左侧结构主要是卷积层和下采样池化层,目的是对图像特征进行提取,同时不断降低特征图的分辨率,以滤除冗余特征,学习鲁棒性更强的特征信息;而右侧的上采样结构主要由卷积层和上采样层构成,以恢复到与左侧特征图相同的分辨率,从而能够通过相同尺寸的特征图融合,来实现对底层和高层特征的信息融合,大大提高对关键点定位的精度;经过第二部分的Hourglass模块后,网络中的数据流规格依然为[b×128×h×w];
关键点坐标回归分支coord_head的作用为直接回归得到图中关键点的坐标以及各坐标预测为关键点的置信度;该分支需要设定一个超参数N,N为玻璃绝缘子图片中最多可能的玻璃绝缘子片数;该分支以特征提取骨干网络backbone的输出作为输入,其网络结构主要有第一卷积层、第一最大池化层、第二卷积层、第二最大池化层以及一个平均池化层;第一卷积层的参数为输出通道数为64,卷积核为3×3,步长为1,padding为1,即通过第一卷积层后数据流规格变为[b×64×h×w];通过第一最大池化层后数据流规格变为[b×64×h/2×w/2];第二卷积层的输出通道数设为N*3,因此通过第二卷积层后数据流规格变为[b×(N*3)×h/2×w/2];通过第二最大池化层后数据流规格变为[b×(N*3)×h/4×/4];经过最后的平均池化层后数据流规格变为[b×(N*3)×1×1];也就是每一张图将会有N*3个预测输出,其中前2*N个输出代表的是N个关键点的坐标,后面的N个输出是对应关键点坐标被预测为关键点的置信度;
概率热图预测分支heatmap_head的作用是预测得到输入图像中的每一个像素点是关键点的概率热图heatmappred,即该分支输出的heatmappred大小与输入网络的图像大小一致;该分支同样以backbone的输出作为输入,主要有三层卷积层,输出通道数依次为64、32、1,卷积核大小都为3×3,且步长和padding都为1,即通过该三层卷积层后,数据流规格变为[b×1×h×w];在最终输出之前,还需要经过sigmoid函数对输出归一化到(0,1)之间,这样每个像素点的数值代表的是该坐标位置是关键点的概率值;
b、损失函数设计
训练过程中的多任务损失Loss由三部分损失组成,分别定义为Heatmaploss、Coordloss、Scoreloss,各损失的具体计算方法如下:
Heatmaploss计算的是预测得到的heatmappred与作为标注的高斯热图heatmapgen之间的损失;生成图片P的高斯热图heatmapgen的方法是:使用labelme标注好图片P的关键点后,会生成一个包含关键点坐标列表[(pointx1,pointy1),...,(pointxk,pointyk),...,(pointxn,pointyn)]的标注文件,n为关键点个数,为每一个关键点生成一个高斯热图,最后将所有的高斯热图对应位置加和得到最终的高斯热图,即:
其中,i为行坐标,j为纵坐标,且0≤i<w,0≤y<h,w为图片P的宽度,h为图片P的高度,heatmapgen_k为第k个关键点(pointxk,pointyk)生成的高斯热图,具体定义如下:
其中,δ为高斯函数调节因子;
Heatmaploss=Binary_Cross_Entropy(heatmappred,heapmapgen)
Coordloss计算的是预测的关键点坐标的损失,借鉴Fast RCNN中采用的Smooth-L1-Loss损失,令(txk,tyk)表示预测的第k个坐标,(vxk,vyk)为对应的标注的关键点坐标:
其中smoothL1函数的定义如下,x为自变量:
Scoreloss计算的是预测的各关键点坐标的置信度p^与heatmapgen中对应位置的值p*之间的交叉熵损失;
Scoreloss=-p*log(p^)
总的训练损失为三部分损失之和,且比重相同,都为1,即:
Loss=Heatmaploss+Coordloss+Scoreloss
c、设置训练参数
模型所有层均采用Kaiming参数初始化方法,设置实验优化器为Adam,初始学习率设为0.001。
本发明与现有技术相比,具有如下优点与有益效果:
1、传统的例如人体关键点检测网络的输出为多通道输出,每个通道表示一个关键点的热图。而在玻璃绝缘子图片中,每一个玻璃绝缘子片在局部来看都是几乎完全一样的,因此不能在网络设计当中将不同关键点视为不同的类别进行输出与计算损失,而该发明中只输出一个通道的热图较好的解决了这个问题。
2、在输出与图片大小一致的概率热图之外,添加了另外一个分支直接预测关键点的坐标与其作为关键点的置信度,两个分支损失的综合使得整体模型的预测更加精确,且能够端到端地得到关键点的具***置坐标,而不需要对概率热图进行二次计算才最终确定预测的关键点的坐标。
3、基于关键点检测的玻璃绝缘子片定位用的模型与基于实例分割的玻璃绝缘子片定位用的模型相比,模型复杂度更低,计算速度更快,可以轻松达到实时的要求,且不需要再根据分割出来的掩膜计算玻璃绝缘子片所在的具***置。
附图说明
图1为本发明方法流程图。
图2为端到端的关键点检测模型训练与测试流程图。
图3为分割与检测效果图;图中(a)为玻璃绝缘子实例分割效果图,(b)为玻璃绝缘子关键点检测效果图。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
如图1至图3所示,本实施例所提供的基于端到端关键点检测的玻璃绝缘子片定位方法,包括以下步骤:
1)电力公司积累下来的电力巡检红外图中包含有各式各样的电力设备,在本发明中只整理并使用那些其中主要目标为玻璃绝缘子的可见光图,收集得到的玻璃绝缘子图片皆为宽8688、高5792的高清可见光图,直接对这样高清的图像进行训练会占据太多的内存空间,在保证图片清晰度的情况下,将全部图片插值为保证宽高比不变的宽1448、高965的图片再进行标注与训练。为了步骤3)中切割出来的玻璃绝缘子所在区域尽可能地不包含背景,标注范围为整串玻璃绝缘子的最小外接多边形,得到实例分割数据集。
2)利用数据增强算法对所有原始数据集进行数据扩充,增大数据量。
为了避免模型过拟合以及提高模型的泛化能力,利用数据增强算法对图像进行数据扩充,包括(全部步骤的随机概率皆为0.5):
a、随机图像旋转:旋转的角度在-20度到+20度之间随机选取;
b、随机图像裁剪:随机裁剪出整幅图像的五分之四;
c、随机水平翻转;
d、随机对比度与色彩转变。
3)使用实例分割模型对实例分割数据集进行训练,得到能够精确分割出整串玻璃绝缘子所在区域的实例分割模型。运用该模型对实例分割数据集中的每张图片进行分割,并将分割得到的区域切割保存下来,汇总成为关键点检测数据集。
本实施例采用的实例分割模型为Yolact++,该模型是一阶段的实时实例分割模型Yolact的改进版,进一步提高了整体模型的运行速度以及分割精确度,使得mAP等指标达到了接近二阶段实例分割模型Mask RCNN的水平。该模型将实例分割分成两个并行的子任务:一是生成一组原型掩膜,二是预测每个掩膜的系数,最后再将原型掩膜和掩膜的系数进行线性组合来生成实例掩膜。运用该模型对实例分割数据集中的每张图片进行分割,便可以得到每张图片中每个玻璃绝缘子串所在区域的掩膜以及其最小外接矩对应的图像部分(假设为R),计算掩膜二值图的角度(也就是图像中该玻璃绝缘子的朝向角度),并利用该角度对R进行旋转,使得R中的玻璃绝缘子处于水平方向,最后根据掩膜将玻璃绝缘子所在的最小外接矩区域切割出来作为关键点检测部分的数据。这样做的好处是切割下来的图像区域将最小程度地包含图像背景,且玻璃绝缘子都处在水平的方向,大大减小了关键点检测模型将要学习的场景复杂度。
4)运用图像标注工具labelme人工标注关键点检测数据集中每片玻璃绝缘子的外环玻璃边缘的中心点作为玻璃绝缘子片的关键点,标注类型选择为point,且标注的顺序要严格地遵守为逐行从左到右,以便于后续计算关键点坐标回归的时候与预测出来的坐标点相互对应。同样的为了避免模型过拟合以及提高模型的泛化能力,使用数据增强算法进行数据扩充,包括(全部步骤的随机概率皆为0.5):
a、随机水平或者垂直翻转;
b、随机对比度与色彩转变;
人工标注的时候选择每片玻璃绝缘子的外环玻璃边缘的中心点作为玻璃绝缘子片的关键点的原因是:即使无人机拍摄玻璃绝缘子图像的时候不是正对着的,而是有一定角度倾斜的时候,二维图像中的每片玻璃绝缘子的外环玻璃边缘也是清晰可见的,不会被其它相邻玻璃绝缘子片所遮盖。
5)参考现有的网络模型PPGNet和HourglassNet,设计一种适合于玻璃绝缘子的端到端的关键点检测模型,具体情况如下:
a、网络结构
经过统计,数据集中玻璃绝缘子图片的规格宽高平均值在(640,140)左右,为了保证输入到网络中的图像宽高都为16的倍数以避免在下采样上采样融合的过程中出现特征图大小不对应的问题,将输入图像大小调整插值到为宽640,高144,因此网络输入的图像规格为[b×3×144×640](其中b为batch size)。
整个网络结构分成3个主要部分:特征提取骨干网络backbone、关键点坐标回归分支coord_head和概率热图预测分支heatmap_head,其中coord_head与heatmap_head为并行结构,各部分具体含义及详细结构如下;
特征提取骨干网络backbone的主要作用是提取特征,参考的是在人体姿态估计中效果较好且被广泛应用的HourglassNet,HourglassNet采用类似沙漏的下采样-上采样结构的基础模块Hourglass模块串接而成,通过Hourglass模块对称结构进行特征提取,使得网络不断重复自底向上和自顶向下的特征传递过程,从而整合局部和全局信息,捕捉不同尺度下的特征,更好地获取关键点之间的相对关系。在本发明中,特征提取骨干网络backbone由两个部分组成,第一部分的主要作用为将输入图像的通道数由3转换为128,具体网络设计采用的是两层的卷积核为1×1的二维卷积,第一层卷积将通道数变为64,第二层卷积将通道数变为128,即经过第一部分的两层二维卷积之后,网络中的数据流规格变为[b×128×144×640]。第二部分使用的是一个经典的Hourglass模块,该模块的下采样的左侧结构主要是卷积层和下采样池化层,目的是对图像特征进行提取,同时不断降低特征图的分辨率,以滤除冗余特征,学习鲁棒性更强的特征信息;而右侧的上采样结构主要由卷积层和上采样层构成,以恢复到与左侧特征图相同的分辨率,从而可以通过相同尺寸的特征图融合,来实现对底层和高层特征的信息融合,大大提高对关键点定位的精度。经过第二部分的Hourglass模块后,网络中的数据流规格依然为[b×128×144×640]。
关键点坐标回归分支coord_head分支的作用为直接回归得到图中关键点的坐标以及该坐标预测为关键点的置信度。该分支需要设定一个超参数N,N为玻璃绝缘子图片中最多可能的玻璃绝缘子片数,本实施例中设N=52。该分支以backbone的输出作为输入,网络结构主要有第一卷积层、第一最大池化层、第二卷积层、第二最大池化层以及一个平均池化层。第一卷积层的参数为输出通道数为64,卷积核为3×3,步长为1,padding为1,即通过第一卷积层后数据流规格变为[b×64×144×640];通过第一最大池化层后数据流规格变为[b×64×72×320];第二卷积层的输出通道数设为N*3,因此通过第二卷积层后数据流规格变为[b×(N*3)×72×320];通过第二最大池化层后数据流规格变为[b×(N*3)×36×160];经过最后的平均池化层后数据流规格变为[b×(N*3)×1×1]。也就是每一张图将会有(N*3)个预测输出,其中前2*N个输出代表的是N个关键点的坐标,后面的N个输出是对应关键点坐标被预测为关键点的置信度。
概率热图预测分支heatmap_head的作用是预测得到输入图像中的每一个像素点是关键点的概率热图heatmappred,即该分支输出的heatmappred大小与输入网络的图像大小一致;该分支同样以backbone的输出作为输入,主要有三层卷积层,输出通道数依次为64、32、1,卷积核大小都为3×3,且步长和padding都为1,即通过该三层卷积层后,数据流规格变为[b×1×144×640];在最终输出之前,还需要经过sigmoid函数对输出归一化到(0,1)之间,增强可解释性。
b、损失函数设计
训练过程中的多任务损失Loss由三部分损失组成,分别定义为Heatmaploss、Coordloss、Scoreloss,各损失的具体计算方法如下:
Heatmaploss计算的是预测得到的heatmappred与作为标注的高斯热图heatmapgen之间的损失。这里以生成图片P的高斯热图heatmapgen为例说明生成高斯热图的方法:使用labelme标注好图片P的关键点后,会生成一个包含关键点坐标列表[(pointx1,pointy1),...,(pointxk,pointyk),...,(pointxn,pointyn)](n为关键点个数)的标注文件,为每一个关键点生成一个高斯热图,最后将所有的高斯热图对应位置加和得到最终的高斯热图。即:
其中i为行坐标,j为纵坐标,且0≤i<w,0≤y<h,w为图片P的宽度,h为图片P的高度。heatmapgen_k为第k个关键点(pointxk,pointyk)生成的高斯热图,具体定义如下:
δ为高斯函数调节因子,本发明取δ=3。
Heatmaploss=Binary_Cross_Entropy(heatmappred,heapmapgen)
Coordloss计算的是预测的关键点坐标的损失,借鉴Fast RCNN中采用的Smooth-L1-Loss损失,令(txk,tyk)表示预测的第k个坐标,(vxk,vyk)为对应的标注的关键点坐标:
其中smoothL1函数的定义如下,x为自变量:
Scoreloss计算的是预测的各关键点坐标的置信度p^与heatmapgen中对应位置的值p*之间的交叉熵损失;
Scoreloss=-p*log(p^)
总的训练损失为三部分损失之和,且比重相同,都为1,即:
Loss=Heatmaploss+Coordloss+Scoreloss
c、设置训练参数
模型所有层均采用Kaiming参数初始化方法,设置实验优化器为Adam,初始学习率设为0.001,批次大小为16张。
d、设置训练完成标志
设置训练完成标志为已达迭代次数。
e、保存模型
训练完成后,将关键点检测模型的结构和权重保存,以便在需要对测试的玻璃绝缘子图片进行推理的时候加载到模型之中。
6)将以上训练好的实例分割模型和关键点检测模型串联起来工作:将待检测的玻璃绝缘子图片输入训练好的实例分割模型中,将分割结果的区域切割下来(即局部玻璃绝缘子区域)输入到训练好的端到端的关键点检测模型中,得到图中各玻璃绝缘子片所在位置关键点的坐标值,实现玻璃绝缘子片的准确定位。
以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
Claims (5)
1.一种基于端到端关键点检测的玻璃绝缘子片定位方法,其特征在于,包括以下步骤:
1)收集电力巡检过程中拍摄的电力设备可见光图,整理出其中主要含有玻璃绝缘子的图片,称为玻璃绝缘子图片,然后以玻璃绝缘子图片构建实例分割数据集,运用图像标注工具人工标注整串玻璃绝缘子所在区域;
2)利用数据增强算法对所有原始数据集进行数据扩充,增大数据量;
3)使用实例分割模型对实例分割数据集进行训练,得到能够精确分割出整串玻璃绝缘子所在区域的实例分割模型,运用该实例分割模型对实例分割数据集中的每张图片进行分割,并将分割得到的区域切割保存下来,汇总成为关键点检测数据集;
4)运用图像标注工具人工标注关键点检测数据集中每片玻璃绝缘子的外环玻璃边缘的中心点作为玻璃绝缘子片的关键点,使用数据增强算法进行数据扩充;
5)针对关键点检测数据集,设计一种端到端的关键点检测模型,设定不同的参数对模型进行调试训练,保存在验证集中表现最好的模型;其中,设计一种适合于玻璃绝缘子的端到端的关键点检测模型,具体情况如下:
a、网络结构
将输入图像大小调整插值到一个固定的宽高,但要保证输入到网络中的图像宽高都为16的倍数,设网络输入的图像规格为[b×3×h×w],其中b为batch size,3为图片的RGB三个通道数,h为图片的高,w为图片的宽;
整个网络结构分成3个主要部分:特征提取骨干网络backbone、关键点坐标回归分支coord_head和概率热图预测分支heatmap_head,其中coord_head与heatmap_head为并行结构,各部分具体含义及详细结构如下;
特征提取骨干网络backbone的作用是提取特征,参考的是在人体姿态估计中效果好且被广泛应用的HourglassNet,HourglassNet采用类似沙漏的下采样-上采样结构的基础模块Hourglass模块串接而成,通过Hourglass模块对称结构进行特征提取,使得网络不断重复自底向上和自顶向下的特征传递过程,从而整合局部和全局信息,捕捉不同尺度下的特征,更好地获取关键点之间的相对关系;特征提取骨干网络backbone由两个部分组成,第一部分的主要作用为将输入图像的通道数由3转换为128,具体网络设计采用的是两层的卷积核为1×1的二维卷积,第一层卷积将通道数变为64,第二层卷积将通道数变为128,即经过第一部分的两层二维卷积之后,网络中的数据流规格变为[b×128×h×w];第二部分使用的是一个经典的Hourglass模块,该模块的下采样的左侧结构主要是卷积层和下采样池化层,目的是对图像特征进行提取,同时不断降低特征图的分辨率,以滤除冗余特征,学习鲁棒性更强的特征信息;而右侧的上采样结构主要由卷积层和上采样层构成,以恢复到与左侧特征图相同的分辨率,从而能够通过相同尺寸的特征图融合,来实现对底层和高层特征的信息融合,大大提高对关键点定位的精度;经过第二部分的Hourglass模块后,网络中的数据流规格依然为[b×128×h×w];
关键点坐标回归分支coord_head的作用为直接回归得到图中关键点的坐标以及各坐标预测为关键点的置信度;该分支需要设定一个超参数N,N为玻璃绝缘子图片中最多可能的玻璃绝缘子片数;该分支以特征提取骨干网络backbone的输出作为输入,其网络结构主要有第一卷积层、第一最大池化层、第二卷积层、第二最大池化层以及一个平均池化层;第一卷积层的参数为输出通道数为64,卷积核为3×3,步长为1,padding为1,即通过第一卷积层后数据流规格变为[b×64×h×w];通过第一最大池化层后数据流规格变为[b×64×h/2×w/2];第二卷积层的输出通道数设为N*3,因此通过第二卷积层后数据流规格变为[b×(N*3)×h/2×w/2];通过第二最大池化层后数据流规格变为[b×(N*3)×h/4×/4];经过最后的平均池化层后数据流规格变为[b×(N*3)×1×1];也就是每一张图将会有N*3个预测输出,其中前2*N个输出代表的是N个关键点的坐标,后面的N个输出是对应关键点坐标被预测为关键点的置信度;
概率热图预测分支heatmap_head的作用是预测得到输入图像中的每一个像素点是关键点的概率热图heatmappred,即该分支输出的heatmappred大小与输入网络的图像大小一致;该分支同样以backbone的输出作为输入,主要有三层卷积层,输出通道数依次为64、32、1,卷积核大小都为3×3,且步长和padding都为1,即通过该三层卷积层后,数据流规格变为[b×1×h×w];在最终输出之前,还需要经过sigmoid函数对输出归一化到(0,1)之间,这样每个像素点的数值代表的是该坐标位置是关键点的概率值;
b、损失函数设计
训练过程中的多任务损失Loss由三部分损失组成,分别定义为Heatmaploss、Coordloss、Scoreloss,各损失的具体计算方法如下:
Heatmaploss计算的是预测得到的heatmappred与作为标注的高斯热图heatmapgen之间的损失;生成图片P的高斯热图heatmapgen的方法是:使用labelme标注好图片P的关键点后,会生成一个包含关键点坐标列表[(pointx1,pointy1),...,(pointxk,pointyk),...,(pointxn,pointyn)]的标注文件,n为关键点个数,为每一个关键点生成一个高斯热图,最后将所有的高斯热图对应位置加和得到最终的高斯热图,即:
其中,i为行坐标,j为纵坐标,且0≤i<w,0≤y<h,w为图片P的宽度,h为图片P的高度,heatmapgen_k为第k个关键点(pointxk,pointyk)生成的高斯热图,具体定义如下:
其中,δ为高斯函数调节因子;
Heatmaploss=Binary_Cross_Entropy(heatmappred,heapmapgen)
Coordloss计算的是预测的关键点坐标的损失,借鉴Fast RCNN中采用的Smooth-L1-Loss损失,令(txk,tyk)表示预测的第k个坐标,(vxk,vyk)为对应的标注的关键点坐标:
其中smoothL1函数的定义如下,x为自变量:
Scoreloss计算的是预测的各关键点坐标的置信度p^与heatmapgen中对应位置的值p*之间的交叉熵损失;
Scoreloss=-p*log(p^)
总的训练损失为三部分损失之和,且比重相同,都为1,即:
Loss=Heatmaploss+Coordloss+Scoreloss
c、设置训练参数
模型所有层均采用Kaiming参数初始化方法,设置实验优化器为Adam,初始学习率设为0.001;
6)将以上训练好的实例分割模型和关键点检测模型串联起来工作:将待检测的玻璃绝缘子图片输入训练好的实例分割模型中,将分割结果的区域切割下来即局部玻璃绝缘子区域,输入到训练好的关键点检测模型中,得到图中各玻璃绝缘子片所在位置关键点的坐标值,从而实现玻璃绝缘子片的准确定位。
2.根据权利要求1所述的一种基于端到端关键点检测的玻璃绝缘子片定位方法,其特征在于,在步骤1)中,收集得到的玻璃绝缘子图片皆为宽8688、高5792的高清可见光图,由于直接对这样高清的图像进行训练会占据很多内存空间,所以在保证图片清晰度的情况下,将全部图片调整大小即插值为保证宽高比不变的宽1448、高965的图片再进行标注与训练;此外,为了步骤3)中切割出来的玻璃绝缘子所在区域尽可能地不包含背景,标注范围为整串玻璃绝缘子的最小外接多边形。
3.根据权利要求1所述的一种基于端到端关键点检测的玻璃绝缘子片定位方法,其特征在于,在步骤2)中,利用数据增强算法对图像进行数据扩充,包括:
a、随机图像旋转:旋转的角度在-20度到+20度之间随机选取;
b、随机图像裁剪:随机裁剪出整幅图像的五分之四;
c、随机水平翻转;
d、随机对比度与色彩转变。
4.根据权利要求1所述的一种基于端到端关键点检测的玻璃绝缘子片定位方法,其特征在于,在步骤3)中,采用的实例分割模型为Yolact++,该模型是一阶段的实时实例分割模型Yolact的改进版,进一步提高了整体模型的运行速度以及分割精确度,该模型将实例分割分成两个并行的子任务:一是生成一组原型掩膜,二是预测每个掩膜的系数,最后再将原型掩膜和掩膜的系数进行线性组合来生成实例掩膜;运用该模型对实例分割数据集中的每张图片进行分割,便能够得到每张图片中每个玻璃绝缘子串所在区域的掩膜以及其最小外接矩对应的图像部分,假设为R,计算掩膜二值图的角度也就是图像中该玻璃绝缘子的朝向角度,并利用该角度对R进行旋转,使得R中的玻璃绝缘子处于水平方向,最后根据掩膜将玻璃绝缘子所在的最小外接矩区域切割出来作为关键点检测部分的图像数据,这样处理的好处是切割下来的图像区域将最小程度地包含图像背景,且玻璃绝缘子都处在水平的方向,减小了关键点检测模型将要学习的场景复杂度。
5.根据权利要求1所述的一种基于端到端关键点检测的玻璃绝缘子片定位方法,其特征在于,在步骤4)中,运用图像标注工具labelme人工标注关键点检测数据集中每片玻璃绝缘子的外环玻璃边缘的中心点作为玻璃绝缘子片的关键点,标注类型选择为point,且标注的顺序要严格地遵守为逐行从左到右,以便于后续计算关键点坐标回归的时候与预测出来的坐标点相互对应;为了避免模型过拟合以及提高模型的泛化能力,使用数据增强算法进行数据扩充,包括:
a、随机水平或者垂直翻转;
b、随机对比度与色彩转变。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110118779.7A CN112750125B (zh) | 2021-01-28 | 2021-01-28 | 一种基于端到端关键点检测的玻璃绝缘子片定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110118779.7A CN112750125B (zh) | 2021-01-28 | 2021-01-28 | 一种基于端到端关键点检测的玻璃绝缘子片定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112750125A CN112750125A (zh) | 2021-05-04 |
CN112750125B true CN112750125B (zh) | 2022-04-15 |
Family
ID=75653317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110118779.7A Active CN112750125B (zh) | 2021-01-28 | 2021-01-28 | 一种基于端到端关键点检测的玻璃绝缘子片定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112750125B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113449718A (zh) * | 2021-06-30 | 2021-09-28 | 平安科技(深圳)有限公司 | 关键点定位模型的训练方法、装置和计算机设备 |
CN116109635B (zh) * | 2023-04-12 | 2023-06-16 | 中江立江电子有限公司 | 复合悬式绝缘子表面质量检测方法、装置、设备及介质 |
CN116213962B (zh) * | 2023-05-10 | 2023-08-11 | 杭州乾瑭云科技有限公司 | 一种基于状态预测的金属板材切割控制方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111047554A (zh) * | 2019-11-13 | 2020-04-21 | 华南理工大学 | 一种基于实例分割的复合绝缘子过热缺陷检测方法 |
CN111402247A (zh) * | 2020-03-23 | 2020-07-10 | 华南理工大学 | 一种基于机器视觉的输电线路上悬垂线夹缺陷检测方法 |
CN111462057A (zh) * | 2020-03-23 | 2020-07-28 | 华南理工大学 | 一种基于深度学习的输电线路上玻璃绝缘子自爆检测方法 |
CN112001294A (zh) * | 2020-08-19 | 2020-11-27 | 福建船政交通职业学院 | 一种基于yolact++的车身表面损伤检测及掩膜生成方法和存储设备 |
CN112233092A (zh) * | 2020-10-16 | 2021-01-15 | 广东技术师范大学 | 一种用于无人机电力巡检智能缺陷检测的深度学习方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111563452B (zh) * | 2020-05-06 | 2023-04-21 | 南京师范大学镇江创新发展研究院 | 一种基于实例分割的多人体姿态检测及状态判别方法 |
-
2021
- 2021-01-28 CN CN202110118779.7A patent/CN112750125B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111047554A (zh) * | 2019-11-13 | 2020-04-21 | 华南理工大学 | 一种基于实例分割的复合绝缘子过热缺陷检测方法 |
CN111402247A (zh) * | 2020-03-23 | 2020-07-10 | 华南理工大学 | 一种基于机器视觉的输电线路上悬垂线夹缺陷检测方法 |
CN111462057A (zh) * | 2020-03-23 | 2020-07-28 | 华南理工大学 | 一种基于深度学习的输电线路上玻璃绝缘子自爆检测方法 |
CN112001294A (zh) * | 2020-08-19 | 2020-11-27 | 福建船政交通职业学院 | 一种基于yolact++的车身表面损伤检测及掩膜生成方法和存储设备 |
CN112233092A (zh) * | 2020-10-16 | 2021-01-15 | 广东技术师范大学 | 一种用于无人机电力巡检智能缺陷检测的深度学习方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112750125A (zh) | 2021-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112750125B (zh) | 一种基于端到端关键点检测的玻璃绝缘子片定位方法 | |
CN111047554B (zh) | 一种基于实例分割的复合绝缘子过热缺陷检测方法 | |
CN111523521B (zh) | 一种双支路融合多尺度注意神经网络的遥感图像分类方法 | |
CN113569667B (zh) | 基于轻量级神经网络模型的内河船舶目标识别方法及*** | |
CN111079739B (zh) | 一种多尺度注意力特征检测方法 | |
CN112183258A (zh) | 一种基于上下文信息和注意力机制的遥感图像道路分割方法 | |
CN110930342B (zh) | 一种基于彩色图引导的深度图超分辨率重建网络构建方法 | |
CN111401361A (zh) | 一种端到端的轻量级深度车牌识别方法 | |
CN114841244B (zh) | 一种基于鲁棒采样和混合注意力金字塔的目标检测方法 | |
CN110009700B (zh) | 基于rgb图和梯度图的卷积神经网络视觉深度估计方法 | |
CN111291826A (zh) | 基于相关性融合网络的多源遥感图像的逐像素分类方法 | |
CN113449691A (zh) | 一种基于非局部注意力机制的人形识别***及方法 | |
CN113610905B (zh) | 基于子图像匹配的深度学习遥感图像配准方法及应用 | |
CN115953408A (zh) | 一种基于YOLOv7的避雷器表面缺陷检测方法 | |
CN112419333A (zh) | 一种遥感影像自适应特征选择分割方法及*** | |
CN114862768A (zh) | 基于改进YOLOv5-LITE轻量级的配电组件缺陷识别方法 | |
CN113486819A (zh) | 一种基于YOLOv4算法的船舶目标检测方法 | |
CN115830535A (zh) | 一种变电站周边区域积水检测方法、***、设备及介质 | |
CN114677357A (zh) | 航拍绝缘子自爆缺陷的检测模型、方法、设备及存储介质 | |
CN114445615A (zh) | 基于尺度不变特征金字塔结构的旋转绝缘子目标检测方法 | |
CN116452848A (zh) | 一种基于改进注意力机制的金具分类检测方法 | |
CN116385950A (zh) | 一种小样本条件下电力线路隐患目标检测方法 | |
CN111160372A (zh) | 一种基于高速卷积神经网络的大目标识别方法 | |
CN115690770A (zh) | 基于空间注意力特征的非受限场景下的车牌识别方法 | |
CN111402223B (zh) | 一种利用变电站视频图像的变电站缺陷问题检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |