CN114742820B - 一种基于深度学习的螺栓松动检测方法、系统及存储介质 - Google Patents
一种基于深度学习的螺栓松动检测方法、系统及存储介质 Download PDFInfo
- Publication number
- CN114742820B CN114742820B CN202210507950.8A CN202210507950A CN114742820B CN 114742820 B CN114742820 B CN 114742820B CN 202210507950 A CN202210507950 A CN 202210507950A CN 114742820 B CN114742820 B CN 114742820B
- Authority
- CN
- China
- Prior art keywords
- bolt
- model
- image
- detection
- target detection
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 174
- 238000013135 deep learning Methods 0.000 title claims abstract description 21
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 238000000034 method Methods 0.000 claims abstract description 44
- 238000012549 training Methods 0.000 claims abstract description 39
- 238000010586 diagram Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 10
- 238000002372 labelling Methods 0.000 claims description 10
- 238000012360 testing method Methods 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 7
- 238000005520 cutting process Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 238000012937 correction Methods 0.000 claims description 4
- 230000002708 enhancing effect Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 23
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000010276 construction Methods 0.000 description 8
- 229910000831 Steel Inorganic materials 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 239000010959 steel Substances 0.000 description 5
- 238000005457 optimization Methods 0.000 description 4
- 201000010099 disease Diseases 0.000 description 3
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003042 antagnostic effect Effects 0.000 description 1
- 230000008485 antagonism Effects 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于深度学习的螺栓松动检测方法、系统及存储介质,获取历史螺栓图像集并构建目标检测数据集和关键点检测数据集;构建目标检测网络模型,通过目标检测数据集对目标检测网络模型进行训练,获得最优目标检测模型;构建关键点检测模型,通过关键点检测数据集对关键点检测模型进行训练,获得最优关键点检测模型;获取实时螺栓图像,并将实时螺栓图像依次输入到最优目标检测模型以及最优关键点检测模型中进行检测,并根据检测结果对实时螺栓图像进行几何校正,再通过有向边线值的方法计算螺栓边线角度值,根据所述角度值判断螺栓是否松动;本发明的有益效果为提高了对螺栓检测的效率;准确检测螺栓的六个角点坐标,然后基于角点坐标进行螺栓角度计算,提高了高强螺栓松动检测的准确性与可靠性。
Description
技术领域
本发明涉及螺栓检测技术领域,具体而言,涉及一种基于深度学习的螺栓松动检测方法、系统及存储介质。
背景技术
高强螺栓连接具有结构简单、装卸便捷、安全可靠等突出优点,已成为了钢结构的主要连接方式之一。但在车辆、温度等动力荷载作用下螺栓极易发生松动,造成栓接结构预紧力不足、承载力下降等问题,影响结构的服役性能。
为保证钢结构运营阶段的安全性以及为钢结构及时检修维护提供科学依据,众多学者提出了基于计算机视觉的螺栓松动检测方法。由于其低成本、易部署、非接触测量等众多优点受到广泛关注,在具体实施过程中通常采用图像处理、目标检测等技术实现阈值分割、提取特征,进而实现螺栓松动状态的识别。该方法较传统螺栓检测技术有一定的提升,但螺栓松动检测结果受外界环境影响较大,且检测过程中需要人工干预,智能化程度较低,同样难以运用于高强度螺栓数量庞大的大型钢结构中。深度学习方法则多为通过目标检测算法对螺栓目标进行检测,学习螺母与板件之间的距离特征,从而直接检测得到松动和未松动螺栓,该方法智能化程度高,且检测速度快准确率高,但通常只适用于松动尺度较大的螺栓,最小识别距离约为5mm左右。因此,现有技术中可采用深度学习方法判断螺栓是否发生较大松动,但无法检测出螺栓的微小角度松动,从而降低了松动病害检测的准确性,严重的时候可能给钢结构带来损害。
有鉴于此,特提出本申请。
发明内容
本发明所要解决的技术问题是现有技术中难以实现对螺栓微小角度松动的检测,降低了检测螺栓是否松动的准确性,目的在于提供一种基于深度学习的螺栓松动检测方法、系统及存储介质,能够实现螺栓微小角度松动的精确检测,提高了螺栓松动病害检测的精度与效率。
本发明通过下述技术方案实现:
一种基于深度学习的螺栓松动检测方法,方法步骤包括:
S1:获取历史螺栓图像集,所述历史螺栓图像集为在不同条件下采集的螺栓图像,依次标注图像中的螺栓目标和关键点,并构建第一图像数据集和第二图像数据集;
S2:构建目标检测模型,并通过所述第一图像数据集对所述目标检测模型进行训练,获得最优目标检测模型;
S3:构建关键点检测模型,并通过所述第二图像数据集对所述关键点检测模型进行训练,获得最优关键点检测模型;
S4:获取实时螺栓图像,所述实时螺栓图像为待检测螺栓采集的图像,并将所述实时螺栓图像依次输入到所述最优目标检测模型以及所述最优关键点检测模型中进行检测,并根据检测结果对实时螺栓图像进行几何校正,再通过有向边线值的方法计算螺栓边线角度值,根据所述角度值判断螺栓是否松动。
优选地,所述步骤S1的子步骤包括:
S11:获取历史螺栓图像集,并采用生成对抗网络对所述历史螺栓图像集进行扩充增强,通过LabelImg对增强后的历史螺栓图像集中的螺栓进行标注获得第一标注文件,第一标注文件与增强后的历史螺栓图像集合并获得第一图像数据集;
S12:根据S11中的螺栓标注结果,将增强后的历史螺栓图像集裁剪为单螺栓子图像集,然后通过Labelme标注单螺栓子图像集的关键点获得第二标注文件,第二标注文件与单螺栓子图像集合并获得第二图像数据集,所述关键点为螺栓的六角点;
优选地,所述步骤S12中,通过Labelme对所述第二图像数据集中的关键点进行标注具体为:
在对关键点进行标注时,以螺栓右上角点为起点,然后沿顺时针依次标注;所述右上角点具体判断方法为:将六个角点的坐标均值作为中心点的坐标,中心点与六个角点分别连接构成向量集合l={li(i=1,2,3,4,5,6)},计算l0与li之间的顺时针夹角值θi∈[0,360°),选取θi最小点作为螺栓的右上角点,l0为水平向右单位向量。
优选地,所述步骤S2的中,需构建目标检测模型,将所述第一图像数据集划分为训练集、验证集以及测试集,对所述目标检测模型进行训练,获得最优目标检测模型。
优选地,所述步骤S3的中,需构建关键点检测模型,将所述第二图像数据集划分为训练集、验证集以及测试集,对所述关键点检测模型进行训练,获得最优关键点检测模型。
优选地,所述步骤S4中,将实时螺栓图像输入到目标检测模型以及关键点检测模型中并根据检测结果对实时螺栓图像进行几何矫正具体为:
S41:将所述实时螺栓图像输入到所述最优目标检测模型中,得到图像中所有螺栓目标的检测框位置信息,并根据检测框信息裁剪实时螺栓图像得到待检测单螺栓子图像集;
S42:将S41中的待检测单螺栓子图像集输入到所述最优关键点检测模型中,得到待检测单螺栓子图像集的六个角点坐标,并由六个角点的坐标均值确定各个螺栓中心点坐标,待检测单螺栓子图像集中所有螺栓中心点坐标构成中心点集;
S43:采用Voronoi图确定边界的方法,对S42中所述中心点集由外至内逐层分类,划分为若干层次的螺栓圈层,获得螺栓的中心点相对位置关系并配准各个关键点;
S44:根据螺栓的中心点相对位置关系进行图像几何变形矫正并求解透视变换矩阵,对S42中各个螺栓的六个角点与中心点进行重投影,获得矫正后的六个角点与中心点的像素坐标。
优选地,所述步骤S4中,通过有向边线值的方法计算螺栓边线角度值,根据所述角度值判断螺栓是否松动具体为:
优选地,所述目标检测网络模型为单阶段目标检测网络模型或多阶段目标检测网络模型,所述单阶段目标检测网络模型包括YOLO系列模型、SSD模型、RetinaNet模型、CenterNet模型、EfficientDet模型和Swin Transformer模型;所述多阶段目标检测网络模型包括RCNN模型、Fast-RCNN模型、Faster-RCNN模型、Mask-RCNN模型、SPP-Net模型、FPN模型、R-FCN模型和DetectoRS模型;所述关键点检测模型包括全连接回归模型、热图模型以及热图加DSNT回归模型。
本发明还公开了一种基于深度学习的螺栓松动检测系统,系统包括图像获取模块、第一模型构建模块、第二模型构建模块以及判断模块;
所述图像获取模块,获取历史螺栓图像集,所述历史螺栓图像集为在不同条件下采集的螺栓图像,依次标注图像中的螺栓目标和关键点,并构建第一图像数据集和第二图像数据集;
所述第一模型构建模块,构建目标检测模型,并通过所述第一图像数据集对所述目标检测模型进行训练,获得最优目标检测模型;
所述第二模型构建模块,用于构建关键点检测模型,并通过所述第二图像数据集对所述关键点检测模型进行训练,获得最优关键点检测模型;
所述判断模块,用于获取实时螺栓图像,所述实时螺栓图像为待检测螺栓采集的图像,并将所述实时螺栓图像依次输入到所述最优目标检测模型以及所述最优关键点检测模型中进行检测,并根据检测结果对实时螺栓图像进行几何校正,再通过有向边线值的方法计算螺栓边线角度值,根据所述角度值判断螺栓是否松动。
本发明还公开了一种计算机存储介质,其上存储有计算程序,该计算机程序被处理器执行时,实现如上所述的方法。
本发明与现有技术相比,具有如下的优点和有益效果:
1、本发明实施例提供的一种基于深度学习的螺栓松动检测方法、系统及存储介质,实现了对高强度螺栓检测的精度与准确率,提高了对螺栓检测的效率;
2、本发明实施例提供的一种基于深度学习的螺栓松动检测方法、系统及存储介质,准确检测螺栓目标及其六个角点坐标,然后基于角点坐标进行螺栓角度计算,提高了高强螺栓松动检测的准确性与可靠性。
附图说明
为了更清楚地说明本发明示例性实施方式的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为检测方法流程图
图2为生成对抗网络(GAN)基本结构图
图3为利用生成对抗网络(GAN)进行图像扩充增强的流程图
图4为螺栓目标裁剪过程
图5为关键点检测模型数据集制作示意图
图6为螺栓目标检测结果
图7为关键点检测模型的流程图
图8为关键点检测结果
图9为实时螺栓图像进行几何矫正过程中基于Voronoi图的中心点集分类示意图
图10为实时螺栓图像进行几何矫正过程中基于Voronoi图的中心点集分类示意图
图11为根据分类结果配准螺栓中心点过程示意图
图12为实施例中螺栓角度值计算示意图
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
在以下描述中,为了提供对本发明的透彻理解阐述了大量特定细节。然而,对于本领域普通技术人员显而易见的是:不必采用这些特定细节来实行本本发明。在其他实施例中,为了避免混淆本本发明,未具体描述公知的结构、电路、材料或方法。
在整个说明书中,对“一个实施例”、“实施例”、“一个示例”或“示例”的提及意味着:结合该实施例或示例描述的特定特征、结构或特性被包含在本本发明至少一个实施例中。因此,在整个说明书的各个地方出现的短语“一个实施例”、“实施例”、“一个示例”或“示例”不一定都指同一实施例或示例。此外,可以以任何适当的组合和、或子组合将特定的特征、结构或特性组合在一个或多个实施例或示例中。此外,本领域普通技术人员应当理解,在此提供的示图都是为了说明的目的,并且示图不一定是按比例绘制的。这里使用的术语“和/或”包括一个或多个相关列出的项目的任何和所有组合。
在本发明的描述中,术语“前”、“后”、“左”、“右”、“上”、“下”、“竖直”、“水平”、“高”、“低”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明保护范围的限制。
实施例一
本实施例公开了一种基于深度学习的螺栓松动检测方法,如图1所示,具体步骤如下:
S1:获取历史螺栓图像集,所述历史螺栓图像集为在不同条件下采集的螺栓图像,依次标注图像中的螺栓目标和关键点,并构建第一图像数据集和第二图像数据集;
在步骤S1中,获取的历史螺栓图像集,是通过智能设备进行采集来获得的,采集的智能设备不限制,包括无人机、智能手机、摄像机等设备,且拍摄时应保证螺栓图像具有多样性和代表性,包括在不同设备、不同光线、不同角度等情况下拍摄螺栓图像,本实施例中,在模型训练的时候要求采集的历史螺栓图像集应达到103量级。
所述步骤S1的子步骤包括:
S11:采用生成对抗网络(GAN)对所述历史螺栓图像集进行扩充增强,利用LabelImg标注工具对增强后的历史螺栓图像集中的螺栓进行标注获得第一标注文件,第一标注文件与历史螺栓图像集合并获得第一图像数据集;
所述步骤S11中,采用生成对抗网络(GAN)对所述历史螺栓图像集进行扩充增强具体为:
生成对抗网络的基本结构图如附图2所示,利用生成对抗网络(GAN)对拍摄的螺栓图像进行扩充增强的流程图如附图3所示。生成对抗网络(GAN)的损失由生成模型G的损失LG和判别模型D的损失LD组成,其计算公式如下:
生成模型G的损失函数:LG=CEn(1,DP(G(Z)))
判别模型D的损失函数:LD=CEn(1,DP(X))+CEn(0,DP(G(Z)))
上式中:CEn表示交叉熵;Z表示输入的随机噪声;G、D分别表示生成模型和判别模型;X为真实样本;G(Z)表示生成模型生成的fake样本;DP(G(Z))表示判别模型对fake样本的判断概率;1表示绝对真实的样本;0表示绝对虚假的样本;CEn(1,DP(G(Z)))表示判别模型判断结果与1的距离;CEn(1,DP(X))表示真实样本与1的距离;CEn(0,DP(G(Z)))表示fake样本与0的距离。
生成对抗网络(GAN)由两个模型组成,有两个损失函数,训练的过程通常为两个网络单独且交替的训练:训练判别网络→训练生成网络→训练判别网络→…→纳什平衡。
S12:根据S11中的螺栓标注结果,将历史螺栓图像集裁剪为单螺栓子图像集,如图4所示,然后通过Labelme标注每个子图像的关键点获得第二标注文件,第二标注文件与单螺栓子图像合并获得第二图像数据集,所述关键点为螺栓的六角点。
所述步骤S12中,通过Labelme对所述单螺栓子图像集中的关键点进行标注具体为:
在对关键点进行标注时,以螺栓右上角点为起点,然后沿顺时针依次标注;所述右上角点具体判断方法为:将六个角点的坐标均值作为中心点的坐标,中心点与六个角点分别连接构成向量集合l={li(i=1,2,3,4,5,6)},计算l0与li之间的顺时针夹角值θi∈[0,360°),选取θi最小点作为螺栓的右上角点,l0为水平向右单位向量,如图5所示。
S2:构建目标检测模型,并通过所述第一图像数据集对所述目标检测模型进行训练,获得最优目标检测模型;
所述步骤S2的子步骤包括:
S21:将所述第一图像数据集划分为训练集、验证集以及测试集,对所述目标检测模型进行训练,获得最优目标检测模型。
S22:所述目标检测模型为单阶段目标检测网络模型或多阶段目标检测网络模型,所述单阶段目标检测网络模型包括YOLO系列模型、SSD模型、RetinaNet模型、CenterNet模型、EfficientDet模型和Swin Transformer模型;所述多阶段目标检测网络模型包括R-CNN模型、SPP-Net模型、Fast-R-CNN模型、Faster-R-CNN模型、FPN模型、R-FCN模型、MaskR-CNN模型和DetectoRS模型。
单阶段目标检测网络通过密集采样直接对目标进行分类和定位,其利用预先定义的不同比例和长宽比的框来定位目标,检测的实时性更好,但检测准确率稍逊,典型的有YOLO系列、SSD、RetinaNet、CenterNet、EfficientDet和Swin Transformer等;
两阶段目标检测网络有一个单独的模块用于生成区域候选框(regionproposals),该模块试着在第一阶段找到一定数量的目标候选框,然后在第二阶段对各个候选框进行定位和分类,其检测的实时性较差,但检测的准确率高,典型的有RCNN、Fast-RCNN、Faster-RCNN、SPP-Net、FPN、R-FCN、Mask-RCNN和DetectoRS。主干网络(Backbone)是目标检测网络中的一个重要组成部分,主要由卷积层、批量归一化层、池化层和激活层组成,图像输入到网络中,其特征就是通过主干网络来提取的,典型的主干网络(Backbone)有AlexNet、VGG、Darknet、ResNet、ResNeXt、CSPNet和EfficientNet等。最后根据数据集的特点选择合适的目标检测网络搭建螺栓目标检测模型。
本实施例中基于单阶段目标检测网络CenterNet来搭建螺栓目标检测模型,对于第一图像数据集按照6:3:1的比例随机划分为训练集、验证集、测试集,且在训练过程中通过损失函数曲线判断网络拟合情况,并对网络结构及训练参数进行调整。构建一个损失函数来量化模型的性能,损失函数通常为预测误差函数,本实施例中基于CenterNet搭建的网络损失包括以下三个部分,分别如下:
(1)关键点预测部分的损失。
上式中:α和β为超参数,这里沿用CornerNet中的设置,取α=2,β=4;N则为图片中总的关键点数量。
(2)偏移部分的损失。
上式中:Loff采用L1损失(MAE)来量化。
(3)目标框高宽预测部分的损失。
总的损失函数由前面三项组合得到,计算如下:
Ldet=Lk+λsizeLsize+λoffLoff
Ldet为量化目标检测模型的总损失函数;这里沿用CornerNet中的设置取λsize=0.1,λoff=1。对于输入的数据集,模型需要通过最小化损失函数来学习模型参数的最佳取值,如下式所示:
上式中:θ为模型的参数集合;θ*为模型学习到的最佳参数集合。
在网络训练过程中,为了最小化损失函数的值,需要选用合适的更新模型参数的优化算法,本实施例中选择随机梯度下降(SGD)优化算法来更新模型训练过程中参数;学习率也是深度学习中一个重要的超参数,其决定着目标函数能否收敛到局部最小值及何时收敛到最小值,该实施例中初始学习率设为0.001,在训练过程中不断调整,学习率衰减方式为自然指数衰减,螺栓目标检测结果如图6所示。
S3:构建关键点检测模型,并通过所述第二图像数据集对所述关键点检测模型进行训练,获得最优关键点检测模型;
所述步骤S3的子步骤包括:
S31:将所述第二图像数据集按照6:3:1的比例随机划分为训练集、验证集以及测试集,对所述关键点检测模型进行训练,获得最优关键点检测模型。
S32:所述关键点检测模型包括全连接回归模型、热图模型以及热图加DSNT回归模型。
本实施例中基于热图加DSNT回归搭建一个关键点检测模型,用来检测螺栓的六个角点,关键点检测模型的整体流程如附图7所示;该实施例的算法即先生成热图,再利用DSNT回归提高关键点预测的精度。该算法的优点在于采用DSNT模块后,其同时具备了全连接回归方法的全微分训练及基于热图方法的空间泛化能力,并且DSNT模块是没有训练参数的,可以在低分辨率高斯图上预测,主要作用就是让梯度流可以从坐标点流到高斯热图上,而不增加额外参数和计算量。
在对所述关键点检测模型训练过程中通过损失函数曲线判断网络拟合情况,并对网络结构及训练参数进行调整。构建一个损失函数来量化模型的性能,损失函数通常为预测误差函数,比如可以采用欧式距离误差和回归误差叠加作为损失函数:
X、Y分别为通道输出的坐标矩阵;为随机变量X、Y的联合概率分布,即x、y分别为变换后的坐标,即将/>与X、Y进行F范数运算的结果,为欧式距离误差函数,即预测与真实之间的2范数;/>为坐标点回归的误差函数,实践表明λ=1。对于输入的训练数据集,通过最小化损失值来学习模型参数集合/>的最佳取值,如下式所示:
为模型的参数集合;/>为模型学习到的最佳参数集合。在网络训练过程中,为了最小化损失函数的值,需要选用更新模型参数的优化算法,本实施例中更新模型参数的算法为RMSprop优化算法;初始学习率设置为0.001,且在训练过程中不断调整,学习率按线性余弦衰减。
S4:获取实时螺栓图像,所述实时螺栓图像为待检测螺栓采集的图像,并将所述实时螺栓图像依次输入到所述最优目标检测模型以及所述最优关键点检测模型中进行检测,并根据检测结果对实时螺栓图像进行几何校正,再通过有向边线值的方法计算螺栓边线角度值,根据所述角度值判断螺栓是否松动。
所述步骤S4中,所述对实时螺栓图像检测和几何矫正具体为:
S41:将所述实时螺栓图像输入到所述最优目标检测模型中,得到图像中所有螺栓目标的检测框位置信息,并根据检测框信息裁剪实时螺栓图像得到待检测单螺栓子图像集;
S42:将S41中的待检测单螺栓子图像集输入到所述最优关键点检测模型中,得到待检测单螺栓子图像集的各个螺栓的六个角点坐标,如图8所示,并由所述六个角点的坐标均值确定各个螺栓中心点坐标,待检测单螺栓子图像集中所有螺栓中心点坐标构成中心点集;
S43:采用Voronoi图确定边界的方法,对S42中所述中心点集由外至内逐层分类,划分为若干层次的螺栓圈层,获得每个螺栓的中心点相对位置,所述逐层分类步骤具体为:根据Voronoi图中多边形区域是否有界判断螺栓是否处于最外层位置,从而选出最外层螺栓,如图9所示;剔除最外层螺栓中心点后再次计算剩余螺栓中心点的Voronoi图,并再次根据Voronoi图中多边形区域是否有界判断螺栓是否处于次外层位置,如图10所示;重复上述步骤直至剩余螺栓中心点的Voronoi图中所有多边形区域均无界,即表示完成了中心点的分类;然后根据分类结果确定每个螺栓的中心点相对位置并配准中心点,如图11所示;
S44:根据螺栓的中心点相对位置关系进行图像几何变形矫正并求解透视变换矩阵,对S42中所述各个螺栓的六个角点与中心点进行重投影,获得矫正后的六个角点与中心点的像素坐标。所述图像几何变形矫正并求解透视变换矩阵过程中,至少每张图上需要确定4个螺栓中心点位置才能求解透视变换矩阵参数,当中心点位置数量大于4时,采用最小二乘法求解最优的透视变换矩阵;
所述步骤S4中,通过有向边线值的方法计算螺栓边线角度值,根据所述角度值判断螺栓是否松动具体为:
如图12所示,依次连接矫正后螺栓各个角点与中心点构成螺栓的边线向量集并计算各有向边线与水平向右单位向量l0的夹角且/>计算夹角/>的均值/>将螺栓前后获得的均值/>进行差值运算,若差值不为零,则螺栓出现松动。
本实施例公开的一种基于深度学习的螺栓松动检测方法,通过将目标检测算法和关键点检测算法相结合的方式,提高了对螺栓松动检测的精确度,提高了对螺栓检测的效率。
实施例二
本实施例公开了一种基于深度学习的螺栓松动检测系统,本实施例是为了实现如实施例一种的检测方法,系统包括图像获取模块、第一模型构建模块、第二模型构建模块以及判断模块;
所述图像获取模块,获取历史螺栓图像集,所述历史螺栓图像集为在不同条件下采集的螺栓图像,依次标注图像中的螺栓目标和关键点,并构建第一图像数据集和第二图像数据集;
所述第一模型构建模块,构建目标检测模型,并通过所述第一图像数据集对所述目标检测模型进行训练,获得最优目标检测模型;
所述第二模型构建模块,用于构建关键点检测模型,并通过所述第二图像数据集对所述关键点检测模型进行训练,获得最优关键点检测模型;
所述判断模块,用于获取实时螺栓图像,所述实时螺栓图像为待检测螺栓采集的图像,并将所述实时螺栓图像依次输入到所述最优目标检测模型以及所述最优关键点检测模型中进行检测,并根据检测结果对实时螺栓图像进行几何校正,再通过有向边线值的方法计算螺栓边线角度值,根据所述角度值判断螺栓是否松动。
实施例三
本实施例公开了一种计算机存储介质,其上存储有计算程序,该计算机程序被处理器执行时,实现如实施例一所述的方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序发布指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序发布指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的发布指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序发布指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的发布指令产生包括发布指令装置的制造品,该发布指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序发布指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的发布指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于深度学习的螺栓松动检测方法,其特征在于,方法步骤包括:
S1:获取历史螺栓图像集,所述历史螺栓图像集为在不同条件下采集的螺栓图像,依次标注图像中的螺栓目标和关键点,并构建第一图像数据集和第二图像数据集;
S2:构建目标检测模型,并通过所述第一图像数据集对所述目标检测模型进行训练,获得最优目标检测模型;
S3:构建关键点检测模型,并通过所述第二图像数据集对所述关键点检测模型进行训练,获得最优关键点检测模型;
S4:获取实时螺栓图像,所述实时螺栓图像为待检测螺栓采集的图像,并将所述实时螺栓图像依次输入到所述最优目标检测模型以及所述最优关键点检测模型中进行检测,并根据检测结果对实时螺栓图像进行几何校正,再通过有向边线值的方法计算螺栓边线角度值,根据所述角度值判断螺栓是否松动;
所述S4中,将实时螺栓图像输入到目标检测模型以及关键点检测模型中并根据检测结果对实时螺栓图像进行几何矫正具体为:
S41:将所述实时螺栓图像输入到所述最优目标检测模型中,得到图像中所有螺栓目标的检测框位置信息,并根据检测框信息裁剪实时螺栓图像得到待检测单螺栓子图像集;
S42:将S41中的待检测单螺栓子图像集输入到所述最优关键点检测模型中,得到待检测单螺栓子图像集的六个角点坐标,并由六个角点的坐标均值确定各个螺栓中心点坐标,待检测单螺栓子图像集中所有螺栓中心点坐标构成中心点集;
S43:采用Voronoi图确定边界的方法,对S42中所述中心点集由外至内逐层分类,划分为若干层次的螺栓圈层,获得螺栓的中心点相对位置关系并配准各个关键点;
S44:根据螺栓的中心点相对位置关系进行图像几何变形矫正并求解透视变换矩阵,对S42中各个螺栓的六个角点与中心点进行重投影,获得矫正后的六个角点与中心点的像素坐标;
所述S4中,通过有向边线值的方法计算螺栓边线角度值,根据所述角度值判断螺栓是否松动具体为:
2.根据权利要求1所述的一种基于深度学习的螺栓松动检测方法,其特征在于,所述S1的子步骤包括:
S11:获取历史螺栓图像集,并采用生成对抗网络对所述历史螺栓图像集进行扩充增强,通过LabelImg对增强后的历史螺栓图像集中的螺栓进行标注获得第一标注文件,第一标注文件与增强后的历史螺栓图像集合并获得第一图像数据集;
S12:根据S11中的螺栓标注结果,将增强后的历史螺栓图像集裁剪为单螺栓子图像集,然后通过Labelme标注单螺栓子图像集的关键点获得第二标注文件,第二标注文件与单螺栓子图像集合并获得第二图像数据集,所述关键点为螺栓的六角点。
3.根据权利要求2所述的一种基于深度学习的螺栓松动检测方法,其特征在于,所述S12中,通过Labelme对所述单螺栓子图像集中的关键点标注过程具体为:
在对关键点进行标注时,以螺栓右上角点为起点,然后沿顺时针依次标注;所述右上角点具体判断方法为:将六个角点的坐标均值作为中心点的坐标,中心点与六个角点分别连接构成向量集合l={li(i=1,2,3,4,5,6)},计算l0与li之间的顺时针夹角值θi∈[0,360°),选取θi最小点作为螺栓的右上角点,l0为水平向右单位向量。
4.根据权利要求1所述的一种基于深度学习的螺栓松动检测方法,其特征在于,S2中,构建目标检测模型,将所述第一图像数据集划分为训练集、验证集以及测试集,对所述目标检测模型进行训练,获得最优目标检测模型。
5.根据权利要求1所述的一种基于深度学习的螺栓松动检测方法,其特征在于,S3中,构建关键点检测模型,将所述第二图像数据集划分为训练集、验证集以及测试集,对所述关键点检测模型进行训练,获得最优关键点检测模型。
6.根据权利要求4所述的一种基于深度学习的螺栓松动检测方法,其特征在于,所述目标检测网络模型为单阶段目标检测网络模型或多阶段目标检测网络模型,所述单阶段目标检测网络模型包括YOLO系列模型、SSD模型、RetinaNet模型、CenterNet模型、EfficientDet模型和Swin Transformer模型;所述多阶段目标检测网络模型包括RCNN模型、Fast-RCNN模型、Faster-RCNN模型、Mask-RCNN模型、SPP-Net模型、FPN模型、R-FCN模型和DetectoRS模型;所述关键点检测模型包括全连接回归模型、热图模型以及热图加DSNT回归模型。
7.一种计算机存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现权利要求1-6中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210507950.8A CN114742820B (zh) | 2022-05-11 | 2022-05-11 | 一种基于深度学习的螺栓松动检测方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210507950.8A CN114742820B (zh) | 2022-05-11 | 2022-05-11 | 一种基于深度学习的螺栓松动检测方法、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114742820A CN114742820A (zh) | 2022-07-12 |
CN114742820B true CN114742820B (zh) | 2023-06-27 |
Family
ID=82285796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210507950.8A Active CN114742820B (zh) | 2022-05-11 | 2022-05-11 | 一种基于深度学习的螺栓松动检测方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114742820B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115346068A (zh) * | 2022-08-02 | 2022-11-15 | 哈尔滨市科佳通用机电股份有限公司 | 一种铁路货运列车螺栓丢失故障图像自动生成方法 |
CN115841460A (zh) * | 2022-11-21 | 2023-03-24 | 国网湖北省电力有限公司超高压公司 | 一种复杂背景下高精度金具裂纹图像检测及特征提取方法 |
CN115753066A (zh) * | 2022-12-23 | 2023-03-07 | 湖北中程科技产业技术研究院有限公司 | 一种新能源汽车紧固件智能检测系统 |
CN117351320A (zh) * | 2023-08-25 | 2024-01-05 | 中铁大桥局集团第二工程有限公司 | 一种基于深度学习的螺栓分步检测方法 |
CN118115587A (zh) * | 2024-02-28 | 2024-05-31 | 浙江大学 | 一种基于深度学习与图像算法的小麦位姿信息获取方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111862126A (zh) * | 2020-07-09 | 2020-10-30 | 北京航空航天大学 | 深度学习与几何算法结合的非合作目标相对位姿估计方法 |
CN112966587A (zh) * | 2021-03-02 | 2021-06-15 | 北京百度网讯科技有限公司 | 目标检测模型的训练方法、目标检测方法及相关设备 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246884B (zh) * | 2013-05-22 | 2016-08-10 | 清华大学 | 基于深度图像序列的实时人体动作识别方法及装置 |
CN110634123A (zh) * | 2018-06-05 | 2019-12-31 | 成都精工华耀科技有限公司 | 一种采用深度图像的轨道扣件紧固件松动检测方法 |
CN109409327B (zh) * | 2018-11-09 | 2021-06-08 | 哈尔滨工业大学 | 基于端到端深度神经网络的rru模块物件位姿检测方法 |
US20220079544A1 (en) * | 2019-04-02 | 2022-03-17 | Innotech Medical Industries Corp. | An integrated x-ray precision imaging device |
KR102292602B1 (ko) * | 2019-11-12 | 2021-08-25 | 부경대학교 산학협력단 | 딥러닝 및 이미지 프로세싱 기반 볼트 풀림 검출 방법 |
CN113008151A (zh) * | 2019-12-20 | 2021-06-22 | 奥动新能源汽车科技有限公司 | 螺栓或螺母的松动监测装置、系统及光纤形变传感器 |
CN112613434B (zh) * | 2020-12-28 | 2024-10-18 | 南京佑驾科技有限公司 | 道路目标检测方法、装置及存储介质 |
CN113379712B (zh) * | 2021-06-23 | 2022-07-29 | 西南交通大学 | 一种基于计算机视觉的钢桥螺栓病害检测方法及系统 |
CN114239170B (zh) * | 2021-12-15 | 2024-07-12 | 成都飞机工业(集团)有限责任公司 | 一种飞机装配的误差补偿方法 |
CN114359222B (zh) * | 2022-01-05 | 2024-07-05 | 多伦科技股份有限公司 | 一种任意多边形目标检测方法、电子设备及存储介质 |
CN114387268A (zh) * | 2022-03-22 | 2022-04-22 | 中国长江三峡集团有限公司 | 一种螺栓松动检测方法及装置 |
-
2022
- 2022-05-11 CN CN202210507950.8A patent/CN114742820B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111862126A (zh) * | 2020-07-09 | 2020-10-30 | 北京航空航天大学 | 深度学习与几何算法结合的非合作目标相对位姿估计方法 |
CN112966587A (zh) * | 2021-03-02 | 2021-06-15 | 北京百度网讯科技有限公司 | 目标检测模型的训练方法、目标检测方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114742820A (zh) | 2022-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114742820B (zh) | 一种基于深度学习的螺栓松动检测方法、系统及存储介质 | |
CN108961235B (zh) | 一种基于YOLOv3网络和粒子滤波算法的缺陷绝缘子识别方法 | |
CN111640157B (zh) | 一种基于神经网络的棋盘格角点检测方法及其应用 | |
CN111898699B (zh) | 一种船体目标自动检测识别方法 | |
CN111753682B (zh) | 一种基于目标检测算法的吊装区域动态监控方法 | |
CN106067022A (zh) | 一种基于dpm算法的遥感图像靠港船舶检测虚警剔除方法 | |
CN111079604A (zh) | 面向大尺度遥感图像的微小目标快速检测方法 | |
CN112419317B (zh) | 一种基于自编码网络的视觉回环检测方法 | |
CN114170552A (zh) | 基于红外热成像的天然气泄漏实时预警方法及系统 | |
CN113888461A (zh) | 基于深度学习的小五金件缺陷检测方法、系统及设备 | |
CN110991444A (zh) | 面向复杂场景的车牌识别方法及装置 | |
CN103353941B (zh) | 基于视角分类的自然标志物注册方法 | |
CN112101113B (zh) | 一种轻量化的无人机图像小目标检测方法 | |
CN113095385B (zh) | 一种基于全局和局部特征描述的多模图像匹配方法 | |
CN109671109B (zh) | 密集点云生成方法及系统 | |
CN109086350B (zh) | 一种基于WiFi的混合图像检索方法 | |
CN114897705A (zh) | 一种基于特征优化的无人机遥感图像拼接方法 | |
CN113657423A (zh) | 适用于小体积零件与堆叠零件的目标检测方法及其应用 | |
CN106600613A (zh) | 基于嵌入式gpu的改进lbp红外目标检测方法 | |
CN101572820B (zh) | 一种运动目标检测过程中的视频信号预处理方法 | |
CN105427340A (zh) | 基于改进箱粒子滤波的视频目标跟踪方法 | |
CN118212572A (zh) | 一种基于改进YOLOv7的道路损坏检测方法 | |
CN117253062A (zh) | 一种任意姿态下的继电器触点图像特征快速匹配方法 | |
JP2011257244A (ja) | 物体形状検出装置及び方法 | |
CN109146861B (zh) | 一种改进的orb特征匹配方法 |
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 |