CN114387262A - 一种基于机器视觉的螺母定位检测方法、装置及*** - Google Patents
一种基于机器视觉的螺母定位检测方法、装置及*** Download PDFInfo
- Publication number
- CN114387262A CN114387262A CN202210048417.XA CN202210048417A CN114387262A CN 114387262 A CN114387262 A CN 114387262A CN 202210048417 A CN202210048417 A CN 202210048417A CN 114387262 A CN114387262 A CN 114387262A
- Authority
- CN
- China
- Prior art keywords
- nut
- image
- hexagon
- detection
- center
- 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.)
- Pending
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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density 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/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/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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- 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/20076—Probabilistic image processing
-
- 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)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于机器视觉的螺母定位检测方法、装置及***,属于图像处理技术领域,采用Retinex算法对采集的待检测螺母图像进行图像增强,降低了大雾、阴暗等外部复杂环境对工件识别精度的影响;并使用深度霍夫变换对螺母六边形边缘直线检测,具备高效的上下文直线信息提取能力,不仅能取得更高的检测精度,同时也能极大地降低检测耗时;同时利用六边形约束法找到螺母中心点,提高了螺母中心的定位检测速度和精度。
Description
技术领域
本发明涉及图像处理技术领域,特别是涉及一种基于机器视觉的螺母定位检测方法、装置及***。
背景技术
输电线路作为我国电力工业的传输阶段,其安全运行是保障电能传输的关键。螺栓、螺母作为一种紧固件,是用来固定输电线路上各种金具部件以及连接各种结构件,是输电线路上一种数量最多、存在范围最广的部件,作为杆塔的重要固定部件,对于保证输电安全来说至关重要。然而,由于输电线路常年处于室外环境,长期受到复杂的外力影响,螺栓、螺母极易出现松动或丢失,一旦某个螺栓出现了损坏都有可能出现漏电甚至线路松动等重要隐患,进而影响整个输电线路的安全,因此及时检测并紧固螺栓是保障输电线路安全运行的关键。
传统采用人工检测并紧固螺栓和螺母的方式效率低,劳动强度大,并存在人工漏检的可能性。
近年来,杆塔需求量随着电能需求的增加而迅猛发展。机器视觉的应用提高了检测的效率和准确度,机器视觉检测,是使用机器视觉代替人眼来实现检测的技术,是工业生产中重要的组成部分,是实现智能制造的利器,机器视觉在生产上的应用是传统的制造业朝着信息化转变的标志。
机器视觉相较于人眼来说有着更好的耐受度,不受主观因素的影响,有着很高的检测效率,同时随着检测算法的不断发展,检测的准确率有着很大的提升,漏检和误检率不断减低。并且其实时性良好,可以适应现代工业的高速的大批量检测任务要求。
目前视觉检测技术在智能化工业生产线上有着极为广泛的应用,其能够满足各种检测的需求,如工业产品的类别、质量检测、为工业机器人的运动提供信息以及一些精密仪器的检测等。机器视觉的应用在提升我国智能制造水平,保障工业产品质量和众多的安全监控方面发挥着极为重要的作用,用机器代替人工完成检测和紧固,使得电力巡检的自动化和智能化程度大大提高。
基于CCD的非接触零件尺寸检测技术、基于机器视觉的大型零件尺寸测量技术和基于图像处理的轴类零件尺寸检测技术包括:(1)基于CCD的非接触零件尺寸检测技术,提出通过融合轮廓边缘的新算法,并使用KD曲率的计算方法和强度阈值实现角点位置的坐标检测,从而实现尺寸检测。(2)基于机器视觉的大型零件尺寸测量技术,采用SIFT算法提取图像特征点进行匹配,并采用基于加权平均的帽子函数加权平均融合算法对图像的拼接缝进行融合,对图像边缘进行亚像素提取后计算零件的各个几何尺寸。(3)基于图像处理的轴类零件尺寸检测技术,根据已知尺寸的阶梯轴图像,建立畸变补偿函数,然后在Prewitt算子边缘提取的基础上,进行基于最小二乘曲线拟合的亚像素边缘检测,获得阶梯轴的精确边缘,从而计算出待测轴径。(1)~(3)均取得了一定的效果,但这些方法模型的参数量大、泛化能力较弱、计算性能受限。
发明内容
本发明的目的是提供一种基于机器视觉的螺母定位检测方法、装置及***,以提高螺母中心定位检测的速度和精度。
为实现上述目的,本发明提供了如下方案:
一种基于机器视觉的螺母定位检测方法,所述方法包括:
构建基于轻量化YOLOv5的螺母检测深度学习模型;
采用Retinex算法对采集的待检测螺母图像进行图像增强;所述待检测螺母图像中的螺母为六角螺母;
将图像增强后的待检测螺母图像输入所述螺母检测深度学习模型,输出标注有螺母坐标框的待检测螺母图像;
根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线;
根据螺母六边形边缘上的多条直线,采用六边形约束法定位六边形的中心,作为螺母中心;
基于相机标定参数和小孔成像原理,将螺母中心的像素坐标转换为实际物理坐标,获得螺母中心的实际坐标。
可选的,所述构建基于轻量化YOLOv5的螺母检测深度学习模型,具体包括:
将YOLOv5模型的主干网络backbone替换为mobilenet-V2;
将轻量的注意力模块添加至mobilenet-V2,获得轻量化YOLOv5模型;
利用工业相机拍摄多张六角螺母图,并对每张六角螺母图中的六角螺母进行标注,构成数据样本集;
利用所述数据样本集对所述轻量化YOLOv5模型进行训练,并将满足训练评价指标的轻量化YOLOv5模型确定为螺母检测深度学习模型;所述训练评价指标包括精度和召回率。
可选的,所述根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线,之前还包括:
采用加权平均法对标注有螺母坐标框的待检测螺母图像进行灰度化,获得螺母灰度图像;
对螺母灰度图像依次进行直方图均衡化和高斯滤波,获得滤波后的螺母灰度图像;
利用最大类间方差法对滤波后的螺母灰度图像进行二值化处理,获得螺母二值化图像。
可选的,所述根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线,具体包括:
构建螺母语义线检测数据集;所述螺母语义线检测数据集包含多张不同场景的螺母样本图像,每张螺母样本图像上标注有语义线;
从标注有螺母坐标框的待检测螺母图像中剪切螺母坐标框,获得螺母子图像;
根据螺母语义线检测数据集,对所述螺母子图像进行直线标注;
对每条直线进行参数化;所述参数化是指用直线的角度和直线到原点的距离作为直线的参数;
通过CNN特征提取器提取螺母子图像的空间特征;
遍历直线标注后的螺母子图像中所有可能的直线并沿着直线将空间特征聚合到参数空间中对应的点上,并使用求和操作实现特征聚合;
将聚合到参数空间中对应的点映射至螺母子图像,获得螺母六边形边缘上的多条直线。
可选的,所述根据螺母六边形边缘上的多条直线,采用六边形约束法定位六边形的中心,作为螺母中心,具体包括:
计算螺母六边形边缘上的多条直线中任意两条直线的交点,作为候选顶点;
根据六角形距离约束,采用投票法从所述候选顶点中选出正确顶点;所述六角形距离约束为六角形的任意两顶点之间的距离满足三种距离值;
根据任意三个正确顶点拟合六边形的一个外接圆,并计算所述外接圆的圆心坐标;
将多个圆心坐标的均值确定为六边形的中心坐标,并作为螺母中心的像素坐标。
可选的,所述基于相机标定参数和小孔成像原理,将螺母中心的像素坐标转换为实际物理坐标,获得螺母中心的实际坐标,具体包括:
采用张正友平面标定方法进行相机标定,获得相机的内参数和外参数;
根据相机的内参数、外参数、相机距离螺母所在钢板的垂直距离和螺母中心的像素坐标,基于小孔成像原理,确定螺母中心的实际坐标。
可选的,所述装置包括:工业相机、边缘检测装置、控制器和螺母锁紧执行机构;
工业相机和边缘检测装置连接;所述边缘检测装置用于利用权利要求1-6任一项所述的基于机器视觉的螺母定位检测方法检测工业相机采集的待检测螺母图像,确定螺母中心的实际坐标;
控制器分别与边缘检测装置和螺母锁紧执行机构连接;所述控制器用于根据边缘检测装置确定的螺母中心的实际坐标控制螺母锁紧执行机构执行螺母紧固操作。
一种基于机器视觉的螺母定位检测***,所述***包括:
模型构建模块,用于构建基于轻量化YOLOv5的螺母检测深度学习模型;
图像增强模块,用于采用Retinex算法对采集的待检测螺母图像进行图像增强;所述待检测螺母图像中的螺母为六角螺母;
螺母标注模块,用于将图像增强后的待检测螺母图像输入所述螺母检测深度学习模型,输出标注有螺母坐标框的待检测螺母图像;
直线检测模块,用于根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线;
中心定位模块,用于根据螺母六边形边缘上的多条直线,采用六边形约束法定位六边形的中心,作为螺母中心;
中心坐标确定模块,用于基于相机标定参数和小孔成像原理,将螺母中心的像素坐标转换为实际物理坐标,获得螺母中心的实际坐标。
可选的,所述直线检测模块,具体包括:
数据集构建子模块,用于构建螺母语义线检测数据集;所述螺母语义线检测数据集包含多张不同场景的螺母样本图像,每张螺母样本图像上标注有语义线;
剪切子模块,用于从标注有螺母坐标框的待检测螺母图像中剪切螺母坐标框,获得螺母子图像;
直线标注子模块,用于根据螺母语义线检测数据集,对所述螺母子图像进行直线标注;
参数化子模块,用于对每条直线进行参数化;所述参数化是指用直线的角度和直线到原点的距离作为直线的参数;
提取子模块,用于通过CNN特征提取器提取螺母子图像的空间特征;
聚合子模块,用于遍历直线标注后的螺母子图像中所有可能的直线并沿着直线将空间特征聚合到参数空间中对应的点上,并使用求和操作实现特征聚合;
直线获得子模块,用于将聚合到参数空间中对应的点映射至螺母子图像,获得螺母六边形边缘上的多条直线。
可选的,所述中心定位模块,具体包括:
候选顶点计算子模块,用于计算螺母六边形边缘上的多条直线中任意两条直线的交点,作为候选顶点;
正确顶点选取子模块,用于根据六角形距离约束,采用投票法从所述候选顶点中选出正确顶点;所述六角形距离约束为六角形的任意两顶点之间的距离满足三种距离值;
拟合子模块,用于根据任意三个正确顶点拟合六边形的一个外接圆,并计算所述外接圆的圆心坐标;
像素坐标确定子模块,用于将多个圆心坐标的均值确定为六边形的中心坐标,并作为螺母中心的像素坐标。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明公开一种基于机器视觉的螺母定位检测方法、装置及***,采用Retinex算法对采集的待检测螺母图像进行图像增强,降低了大雾、阴暗等外部复杂环境对工件识别精度的影响;并使用深度霍夫变换对螺母六边形边缘直线检测,具备高效的上下文直线信息提取能力,不仅能取得更高的检测精度,同时也能极大地降低检测耗时;同时利用六边形约束法找到螺母中心点,提高了螺母中心的定位检测速度和精度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的基于机器视觉的螺母定位检测方法的基本流程图;
图2为本发明提供的螺母中心精确定位的原理图;
图3为本发明提供的距离约束原理示意图;
图4为本发明提供的基于机器视觉的螺母定位检测***的结构示意图;
图5为本发明提供的相机安装示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于机器视觉的螺母定位检测方法、装置及***,以提高螺母中心定位检测的速度和精度。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明提供了一种基于机器视觉的螺母定位检测方法,如图1和2所示,方法包括:
步骤1,构建基于轻量化YOLOv5的螺母检测深度学习模型。
在一个示例中,具体包括:
1-1将YOLOv5模型的主干网络backbone替换为mobilenet-V2;
1-2将轻量的注意力模块添加至mobilenet-V2,获得轻量化YOLOv5模型;
CBAM(Convolutional BlockAttention Module)包含2个独立的子模块,通道注意力模块(ChannelAttention Module,CAM)和空间注意力模块(Spartial AttentionModule,SAM),分别进行通道与空间上的Attention。这样不只能够节约参数和计算力,并且保证了其能够作为即插即用的模块集成到现有的网络架构中去。
1-3利用工业相机拍摄多张六角螺母图,并对每张六角螺母图中的六角螺母进行标注,构成数据样本集;
本实验采集的实验对象为六角螺栓或六角螺母。该工件具有形状稳定、单一、样本数量较少的特点。原始图像均为使用海康威视工业彩色相机拍摄到的六角螺母图,共计1000张图像,为使得检测过程满足工业领域实时性和准确性的需求,此处将原始图像采集分辨率设置为1024*682大小,这样的尺寸可以使算法较快的训练和检测速度。采集数据完成后,对采集的1000张六角螺母工件进行标注。
1-4利用数据样本集对轻量化YOLOv5模型进行训练,并将满足训练评价指标的轻量化YOLOv5模型确定为螺母检测深度学习模型;训练评价指标包括精度和召回率。
将采集并标注的1000张螺母图片用于训练YOLOv5模型。通过设置网络训练参数包括batch大小、学习率和迭代次数等,利用标注的数据集对网络模型进行训练,当网络训练到收敛、损失函数小于给定值时,完成网络训练。
YOLOv5模型训练评价指标:
精度(Precision):(找对的正类/所有找到的正类);
召回率(Recall):(找对的正类/所有本应该被找对的正类);
其中,FN:False Negative,为被判定为负样本,但事实上是正样本。FP:FalsePositive,被判定为正样本,但事实上是负样本。TP:True Positive,被判定为正样本,事实上也是正样本。
步骤2,采用Retinex算法对采集的待检测螺母图像进行图像增强;待检测螺母图像中的螺母为六角螺母。
2-1观察者所看到的物体的图像S是由物体表面对入射光L反射得到的,反射率R由物体本身决定,不受入射光L变化。原始图像S是光照图像L和反射率图像R的乘积,即可表示为下式的形式:
S(x,y)=R(x,y)·L(x,y) (3)
2-2基于Retinex的图像增强的目的就是从原始图像S中估计出光照L,从而分解出R,消除光照不均的影响,以改善图像的视觉效果,正如人类视觉***那样。在处理中,通常将图像转至对数域,从而将乘积关系转换为和的关系即:
S=logS2l=logL2r=logR (4)
其中,S2表示对数域原始图像,L2表示对数域估测照度。
2-3 Retinex方法的核心就是估测照度l,从图像S中估测l分量,并去除l分量,得到原始反射分量r,即:
l=f(s) (5)
r=s-f(s) (6)
f(s)表示对估测照度l的估计函数,小写s为对数域。
步骤3,将图像增强后的待检测螺母图像输入螺母检测深度学习模型,输出标注有螺母坐标框的待检测螺母图像。
利用YOLOv5算法实现螺母初定位并获得螺母子图像后,必须经过一系列的图像处理算法后,才能正确提取螺母的特征。图像特征提取主要包括灰度化、高斯滤波、深度Hough变换等算法,最后实现螺母的精确定位。
其中对标注有螺母坐标框的待检测螺母图像进行图像预处理,具体为:
3-1采用加权平均法对标注有螺母坐标框的待检测螺母图像进行灰度化,获得螺母灰度图像;
为了加快视觉定位的速度,往往要对采集到的彩色图像进行灰度化处理。灰度化之后的图像是R、G、B三个分量相同的一种特殊的彩色图像。所以,在视觉定位处理的时候我们一般都会将收集到的彩色图像转换成后续计算更少的灰度化图像,灰度化之后的图像虽然计算量更少,但是其还保持着整一幅图像的特征、局部的色彩、局部的亮度等级等信息。因此采用加权平均法实现图像灰度化变换,加权平均法就是根据三个灰度值的重要性,对R、G、B三个分量以不同的权值进行加权平均。典型的灰度变换算法为:
Gray(i,j)=0.299*R(i,j)+0.578*G(i,j)+0.114*B(i,j) (7)
其中,(i,j)代表二维图像中的坐标点。
3-2对螺母灰度图像依次进行直方图均衡化和高斯滤波,获得滤波后的螺母灰度图像;
直方图均衡化(Histogram Equalization)是一种增强图像对比度(ImageContrast)的方法,其主要思想是将一副图像的直方图分布变成近似均匀分布,从而增强图像的对比度。假设灰度级是归一化[0,1]之间的连续量,并设图像中灰度级的概率密度函数为pr(r),下标不同代表图像经过概率密度变化以后的概率密度函数。那么,将原图像的灰度级应用均衡化变化,变换后的图像灰度级为:
T(r)表示均衡化后的图像对应位置的灰度值,T(r)在[0,L-1]上严格单调递增;当0≤r≤L-1时,0≤T(r)≤L-1。r表示待处理图像的灰度,r取值范围为[0,L-1],r=0表示黑色,r=L-1表示白色。W:形式积分变量。
可以发现变换后的图像灰度级概率密度函数是均匀的,即:
由此可以看出,经过图像直方图均衡化后的图像,其灰度级较为均衡,归一化的直方图覆盖了整个[0,1]范围。直方图均衡化处理的最终结果就是将一副图像扩展了动态范围,让局部图像区域的对比度提高,二不影响整体的对比度。
高斯去噪
螺母图像在采集和传输过程中均有可能产生噪声。噪声信息为无效信息,噪声的出现会模糊图像原有信息,对后续螺母图像中的螺母边缘信息的精确提取造成干扰,因此需要对图像进行平滑去噪处理。
高斯滤波器是一种广泛应用的线性平滑滤波器。高斯滤波就是通过对整幅图像进行加权平均来实现滤波去噪。每一个像素点的灰度值,都由其自身和相邻像素点的灰度值经过加权平均后得到,使用的权重可以令其遵循正态分布原则,适用于高斯噪声的消除。
二维高斯函数的基本形式如下:
其中,σ是标准差,控制高斯函数的离散度,σ越小,高斯函数越集中,σ越大,高斯函数越扩散。一般情况下,坐标x,y都是整数,为了从该函数产生一个大小为m×n的滤波器模板,为了保证整数化后的模板权值之和为1,需要对滤波器模板进行权值规范化,从而使图像的均匀灰度区域不受高斯滤波的影响。
采用大小为3×3的高斯核、方差为1对图像进行高斯滤波。
3-3利用最大类间方差法对滤波后的螺母灰度图像进行二值化处理,获得螺母二值化图像。
二值化处理就是把所获得的图像灰度图像变为黑白图像,通过黑白图像提取出关键信息。图像二值化主要采用固定阈值化和自适应阈值化。固定阈值就是将图像中低于某个阈值的像素设置为黑色,二其他像素设置为白色。对于一张深度为8位的灰度图像(灰度取值范围为0~255),一般选取128作为阈值,对于清晰图像,采用固定阈值效果较好。而对于欠曝光或过曝光图像,经过二值化处理后得到的二值化图像可能会全黑或全白,这时图像的所有特征信息全部消失,导致识别失败。自适应阈值化方法计算图像中的每一个像素邻域的阈值,并将每个像素的值与邻域的平均值进行比较。
如果图像当中某像素的值与它的领域的阈值差别较大,那么这个值就会被当做是异常值在阈值化过程中被独立起来。而自适应阈值则,是根据像素的邻域块的像素值分布来确定该像素位置上的二值化阈值。因此本项目采用的自适应阈值化方法为最大类间方差法,通过图像灰度特性的统计特征将图像分为方差最大的两类,从而将前景中的目标物体从背景中分离出来。
步骤4,根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线。
在深度特征上进行Hough变换,从而兼顾CNN的特征学习能力和Hough变换的高效性,将空间域的语义线检测问题转化为参数域的单个点检测问题。可以很容易地提取上下文行特征,大大简化和上下文信息提取的效率,能够获得较为精确的工件边缘。
在一个示例中,具体包括:
构建螺母语义线检测数据集;螺母语义线检测数据集包含多张不同场景的螺母样本图像,每张螺母样本图像上标注有语义线;
从标注有螺母坐标框的待检测螺母图像中剪切螺母坐标框,获得螺母子图像;
根据螺母语义线检测数据集,对螺母子图像进行直线标注;
对每条直线进行参数化;参数化是指用直线的角度和直线到原点的距离作为直线的参数;
通过CNN特征提取器提取螺母子图像的空间特征;
遍历直线标注后的螺母子图像中所有可能的直线并沿着直线将空间特征聚合到参数空间中对应的点上,并使用求和操作实现特征聚合;
将聚合到参数空间中对应的点映射至螺母子图像,获得螺母六边形边缘上的多条直线。
步骤5,根据螺母六边形边缘上的多条直线,采用六边形约束法定位六边形的中心,作为螺母中心。
由于真实环境中的螺母受各种干扰因素的影响,如光照不均匀、锈蚀污损及其他因素的影响,利用边缘算法得到的轮廓一般是不完整的,因此需要从这些不完整的边缘轮廓中准确定位出螺母中心。
六边形的各条边之间存在着约束关系,称之为角度约束,即任意两条边之间的夹角满足0°、60°、120°中的一种。候选边中的每条边都和其他所有边有交点,当交点满足角度约束关系且交点落在圆内时,交点被选为候选顶点。六角形的顶点之间也存在这种约束关系,称之为距离约束,即任意两顶点之间的距离满足一定条件。
当相机高度固定时,三种距离值也随之确定。利用距离约束,我们可以从候选顶点中选出正确的六角顶点。
通过采用投票法从候选点中选出正确顶点。每一个候选顶点给其他候选顶点投票,当此点到此顶点之间的距离不满足距离约束时,此点将会获得一票。错误的候选点和其他所有顶点之间的而距离一般不满足距离约束条件,因此将会获得其余所有点的投票,正确候选点之间满足距离约束关系,因此正确的候选点捕获获得来自其他正确候选点的投票,所获得的总票数会更少。
已知三个顶点可求出三个六边形中心。对多个六边形中心取均值可减小误差,提高鲁棒性。
在一个示例中,具体包括:
计算螺母六边形边缘上的多条直线中任意两条直线的交点,作为候选顶点;
根据六角形距离约束,采用投票法从候选顶点中选出正确顶点;六角形距离约束为六角形的任意两顶点之间的距离满足三种距离值,如图3所示;
根据任意三个正确顶点拟合六边形的一个外接圆,并计算外接圆的圆心坐标;
将多个圆心坐标的均值确定为六边形的中心坐标,并作为螺母中心的像素坐标。
步骤6,基于相机标定参数和小孔成像原理,将螺母中心的像素坐标转换为实际物理坐标,获得螺母中心的实际坐标。
采用张正友提出的用平面模板代替立体标定块的方法,通过将得到单应矩阵分解得到内、外参数。检测镜头与钢板物距固定为200mm,根据小孔成像原理,可计算出螺母实际物理坐标。
在一个示例中,具体包括:
采用张正友平面标定方法进行相机标定,获得相机的内参数和外参数;
根据相机的内参数、外参数、相机距离螺母所在钢板的垂直距离和螺母中心的像素坐标,基于小孔成像原理,确定螺母中心的实际坐标。
本发明的方法大幅降低了模型的参数量,提高了工件的定位检测速度和精度和算法的部署能力,使用深度Hough算法,提取相邻直线的上下文信息对应于在参数空间中提取相邻点的特征,大大简化和上下文信息提取的效率。相对传统Hough变换而言,不仅能取得更高的检测精度,同时也能极大地降低检测耗时。加入Retinex图像增强算法,降低了外部复杂环境对工件识别的影响。
本发明将目标检测技术引入到输电杆塔等现场检测单元中。利用海康工业相机对六边形螺母进行实时拍摄,将相机采集到的工件图像输入到YOLOv5检测网络中,得出目标框中心坐标,经过剪切后通过二值化处理、高斯滤波、深度Hough变换、六边形约束等方法找到螺母中心点,提高螺栓精确定位检测性能。
优势在于加入Retinex图像增强算法,降低了大雾、阴暗等外部复杂环境对工件识别精度的影响。通过替换主干网络和增加注意力机制,并将深度学习算法与机器视觉相结合,提高模型部署能力。深度Hough变换对螺母六边形边缘直线检测,具备高效的上下文直线信息提取能力,不仅能取得更高的检测精度,同时也能极大地降低检测耗时。利用六边形约束等方法找到螺母中心点等方法,提高了工件的定位检测速度和精度。
本发明还提供了一种基于机器视觉的螺母定位检测装置,如图4所示,装置包括:工业相机、边缘检测装置、控制器和螺母锁紧执行机构。
工业相机和边缘检测装置连接;边缘检测装置用于利用前述的基于机器视觉的螺母定位检测方法检测工业相机采集的待检测螺母图像,确定螺母中心的实际坐标。控制器分别与边缘检测装置和螺母锁紧执行机构连接;控制器用于根据边缘检测装置确定的螺母中心的实际坐标控制螺母锁紧执行机构执行螺母紧固操作。
图4中,摄像机采集的图像传入边缘智能处理单元,边缘智能处理单元包括硬件层和软件层,硬件层为边缘计算装置,软件层在嵌入式操作***中实现螺母定位过程。
本专利使用JETSON TX2开发板,JETSON系列是Nvidia公司推出的面向无人智能化领域的嵌入式平台,可以在边缘设备上处理复杂数据,实现人工智能。JETSON TX2是一台模块化AI超级计算机,采用NVIDIAPascalTM架构。它性能强大,但外形小巧,节能高效,非常适合机器人、无人机、智能摄像机和便携医疗设备等智能边缘设备。它支持JetsonTX1模块的所有功能,同时可以铸就更大型、更复杂的深度神经网络。将完成训练的螺栓检测模型部署到TX2边缘检测设备上,利用训练好的网络对工业相机采集的螺母图像进行识别。
如图5所示,采集螺母图像时摄像头和套筒安装在套筒横滑轨上,套筒横滑轨的两端可滑动设置在套筒纵向导轨,螺栓和螺母固定在角钢上。
本发明利用海康工业相机对六边形螺母进行实时拍摄,将相机采集到的工件图像输入到YOLOv5检测网络中,得出目标框中心坐标,经过剪切后通过二值化处理、高斯滤波、Canny边缘提取、深度Hough变换、六边形约束等方法找到螺母精确中心点坐标,引入边缘计算设备TX2进行计算,大幅提高了工件的定位检测速度和精度,较好的解决图像畸变对检测精度造成的影响。
本发明还提供了一种基于机器视觉的螺母定位检测***,***包括:
模型构建模块,用于构建基于轻量化YOLOv5的螺母检测深度学习模型;
图像增强模块,用于采用Retinex算法对采集的待检测螺母图像进行图像增强;待检测螺母图像中的螺母为六角螺母;
螺母标注模块,用于将图像增强后的待检测螺母图像输入螺母检测深度学习模型,输出标注有螺母坐标框的待检测螺母图像;
直线检测模块,用于根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线;
中心定位模块,用于根据螺母六边形边缘上的多条直线,采用六边形约束法定位六边形的中心,作为螺母中心;
中心坐标确定模块,用于基于相机标定参数和小孔成像原理,将螺母中心的像素坐标转换为实际物理坐标,获得螺母中心的实际坐标。
直线检测模块,具体包括:
数据集构建子模块,用于构建螺母语义线检测数据集;螺母语义线检测数据集包含多张不同场景的螺母样本图像,每张螺母样本图像上标注有语义线;
剪切子模块,用于从标注有螺母坐标框的待检测螺母图像中剪切螺母坐标框,获得螺母子图像;
直线标注子模块,用于根据螺母语义线检测数据集,对螺母子图像进行直线标注;
参数化子模块,用于对每条直线进行参数化;参数化是指用直线的角度和直线到原点的距离作为直线的参数;
提取子模块,用于通过CNN特征提取器提取螺母子图像的空间特征;
聚合子模块,用于遍历直线标注后的螺母子图像中所有可能的直线并沿着直线将空间特征聚合到参数空间中对应的点上,并使用求和操作实现特征聚合;
直线获得子模块,用于将聚合到参数空间中对应的点映射至螺母子图像,获得螺母六边形边缘上的多条直线。
中心定位模块,具体包括:
候选顶点计算子模块,用于计算螺母六边形边缘上的多条直线中任意两条直线的交点,作为候选顶点;
正确顶点选取子模块,用于根据六角形距离约束,采用投票法从候选顶点中选出正确顶点;六角形距离约束为六角形的任意两顶点之间的距离满足三种距离值;
拟合子模块,用于根据任意三个正确顶点拟合六边形的一个外接圆,并计算外接圆的圆心坐标;
像素坐标确定子模块,用于将多个圆心坐标的均值确定为六边形的中心坐标,并作为螺母中心的像素坐标。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的***而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于机器视觉的螺母定位检测方法,其特征在于,所述方法包括:
构建基于轻量化YOLOv5的螺母检测深度学习模型;
采用Retinex算法对采集的待检测螺母图像进行图像增强;所述待检测螺母图像中的螺母为六角螺母;
将图像增强后的待检测螺母图像输入所述螺母检测深度学习模型,输出标注有螺母坐标框的待检测螺母图像;
根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线;
根据螺母六边形边缘上的多条直线,采用六边形约束法定位六边形的中心,作为螺母中心;
基于相机标定参数和小孔成像原理,将螺母中心的像素坐标转换为实际物理坐标,获得螺母中心的实际坐标。
2.根据权利要求1所述的基于机器视觉的螺母定位检测方法,其特征在于,所述构建基于轻量化YOLOv5的螺母检测深度学习模型,具体包括:
将YOLOv5模型的主干网络backbone替换为mobilenet-V2;
将轻量的注意力模块添加至mobilenet-V2,获得轻量化YOLOv5模型;
利用工业相机拍摄多张六角螺母图,并对每张六角螺母图中的六角螺母进行标注,构成数据样本集;
利用所述数据样本集对所述轻量化YOLOv5模型进行训练,并将满足训练评价指标的轻量化YOLOv5模型确定为螺母检测深度学习模型;所述训练评价指标包括精度和召回率。
3.根据权利要求1所述的基于机器视觉的螺母定位检测方法,其特征在于,所述根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线,之前还包括:
采用加权平均法对标注有螺母坐标框的待检测螺母图像进行灰度化,获得螺母灰度图像;
对螺母灰度图像依次进行直方图均衡化和高斯滤波,获得滤波后的螺母灰度图像;
利用最大类间方差法对滤波后的螺母灰度图像进行二值化处理,获得螺母二值化图像。
4.根据权利要求1所述的基于机器视觉的螺母定位检测方法,其特征在于,所述根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线,具体包括:
构建螺母语义线检测数据集;所述螺母语义线检测数据集包含多张不同场景的螺母样本图像,每张螺母样本图像上标注有语义线;
从标注有螺母坐标框的待检测螺母图像中剪切螺母坐标框,获得螺母子图像;
根据螺母语义线检测数据集,对所述螺母子图像进行直线标注;
对每条直线进行参数化;所述参数化是指用直线的角度和直线到原点的距离作为直线的参数;
通过CNN特征提取器提取螺母子图像的空间特征;
遍历直线标注后的螺母子图像中所有可能的直线并沿着直线将空间特征聚合到参数空间中对应的点上,并使用求和操作实现特征聚合;
将聚合到参数空间中对应的点映射至螺母子图像,获得螺母六边形边缘上的多条直线。
5.根据权利要求1所述的基于机器视觉的螺母定位检测方法,其特征在于,所述根据螺母六边形边缘上的多条直线,采用六边形约束法定位六边形的中心,作为螺母中心,具体包括:
计算螺母六边形边缘上的多条直线中任意两条直线的交点,作为候选顶点;
根据六角形距离约束,采用投票法从所述候选顶点中选出正确顶点;所述六角形距离约束为六角形的任意两顶点之间的距离满足三种距离值;
根据任意三个正确顶点拟合六边形的一个外接圆,并计算所述外接圆的圆心坐标;
将多个圆心坐标的均值确定为六边形的中心坐标,并作为螺母中心的像素坐标。
6.根据权利要求5所述的基于机器视觉的螺母定位检测方法,其特征在于,所述基于相机标定参数和小孔成像原理,将螺母中心的像素坐标转换为实际物理坐标,获得螺母中心的实际坐标,具体包括:
采用张正友平面标定方法进行相机标定,获得相机的内参数和外参数;
根据相机的内参数、外参数、相机距离螺母所在钢板的垂直距离和螺母中心的像素坐标,基于小孔成像原理,确定螺母中心的实际坐标。
7.一种基于机器视觉的螺母定位检测装置,其特征在于,所述装置包括:工业相机、边缘检测装置、控制器和螺母锁紧执行机构;
工业相机和边缘检测装置连接;所述边缘检测装置用于利用权利要求1-6任一项所述的基于机器视觉的螺母定位检测方法检测工业相机采集的待检测螺母图像,确定螺母中心的实际坐标;
控制器分别与边缘检测装置和螺母锁紧执行机构连接;所述控制器用于根据边缘检测装置确定的螺母中心的实际坐标控制螺母锁紧执行机构执行螺母紧固操作。
8.一种基于机器视觉的螺母定位检测***,其特征在于,所述***包括:
模型构建模块,用于构建基于轻量化YOLOv5的螺母检测深度学习模型;
图像增强模块,用于采用Retinex算法对采集的待检测螺母图像进行图像增强;所述待检测螺母图像中的螺母为六角螺母;
螺母标注模块,用于将图像增强后的待检测螺母图像输入所述螺母检测深度学习模型,输出标注有螺母坐标框的待检测螺母图像;
直线检测模块,用于根据标注有螺母坐标框的待检测螺母图像,采用深度霍夫变换对螺母坐标框中的螺母边缘进行直线检测,获得螺母六边形边缘上的多条直线;
中心定位模块,用于根据螺母六边形边缘上的多条直线,采用六边形约束法定位六边形的中心,作为螺母中心;
中心坐标确定模块,用于基于相机标定参数和小孔成像原理,将螺母中心的像素坐标转换为实际物理坐标,获得螺母中心的实际坐标。
9.根据权利要求8所述的基于机器视觉的螺母定位检测***,其特征在于,所述直线检测模块,具体包括:
数据集构建子模块,用于构建螺母语义线检测数据集;所述螺母语义线检测数据集包含多张不同场景的螺母样本图像,每张螺母样本图像上标注有语义线;
剪切子模块,用于从标注有螺母坐标框的待检测螺母图像中剪切螺母坐标框,获得螺母子图像;
直线标注子模块,用于根据螺母语义线检测数据集,对所述螺母子图像进行直线标注;
参数化子模块,用于对每条直线进行参数化;所述参数化是指用直线的角度和直线到原点的距离作为直线的参数;
提取子模块,用于通过CNN特征提取器提取螺母子图像的空间特征;
聚合子模块,用于遍历直线标注后的螺母子图像中所有可能的直线并沿着直线将空间特征聚合到参数空间中对应的点上,并使用求和操作实现特征聚合;
直线获得子模块,用于将聚合到参数空间中对应的点映射至螺母子图像,获得螺母六边形边缘上的多条直线。
10.根据权利要求8所述的基于机器视觉的螺母定位检测***,其特征在于,所述中心定位模块,具体包括:
候选顶点计算子模块,用于计算螺母六边形边缘上的多条直线中任意两条直线的交点,作为候选顶点;
正确顶点选取子模块,用于根据六角形距离约束,采用投票法从所述候选顶点中选出正确顶点;所述六角形距离约束为六角形的任意两顶点之间的距离满足三种距离值;
拟合子模块,用于根据任意三个正确顶点拟合六边形的一个外接圆,并计算所述外接圆的圆心坐标;
像素坐标确定子模块,用于将多个圆心坐标的均值确定为六边形的中心坐标,并作为螺母中心的像素坐标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210048417.XA CN114387262A (zh) | 2022-01-17 | 2022-01-17 | 一种基于机器视觉的螺母定位检测方法、装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210048417.XA CN114387262A (zh) | 2022-01-17 | 2022-01-17 | 一种基于机器视觉的螺母定位检测方法、装置及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114387262A true CN114387262A (zh) | 2022-04-22 |
Family
ID=81202430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210048417.XA Pending CN114387262A (zh) | 2022-01-17 | 2022-01-17 | 一种基于机器视觉的螺母定位检测方法、装置及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114387262A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115205286A (zh) * | 2022-09-13 | 2022-10-18 | 国网天津市电力公司建设分公司 | 爬塔机器人机械臂螺栓识别与定位方法、存储介质、终端 |
JP7457784B1 (ja) | 2022-12-23 | 2024-03-28 | 楽天グループ株式会社 | 情報処理装置、方法及びプログラム |
-
2022
- 2022-01-17 CN CN202210048417.XA patent/CN114387262A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115205286A (zh) * | 2022-09-13 | 2022-10-18 | 国网天津市电力公司建设分公司 | 爬塔机器人机械臂螺栓识别与定位方法、存储介质、终端 |
CN115205286B (zh) * | 2022-09-13 | 2023-01-24 | 国网天津市电力公司建设分公司 | 爬塔机器人机械臂螺栓识别与定位方法、存储介质、终端 |
JP7457784B1 (ja) | 2022-12-23 | 2024-03-28 | 楽天グループ株式会社 | 情報処理装置、方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110314854B (zh) | 一种基于视觉机器人的工件检测分拣的装置及方法 | |
CN111223088B (zh) | 一种基于深层卷积神经网络的铸件表面缺陷识别方法 | |
CN112651968B (zh) | 一种基于深度信息的木板形变与凹坑检测方法 | |
CN104112269B (zh) | 一种基于机器视觉的太阳能电池激光刻线参数检测方法及*** | |
CN116205919B (zh) | 基于人工智能的五金零件生产质量检测方法及*** | |
CN103424409B (zh) | 一种基于dsp的视觉检测*** | |
CN114387262A (zh) | 一种基于机器视觉的螺母定位检测方法、装置及*** | |
CN110910350B (zh) | 一种用于风电塔筒的螺母松动检测方法 | |
CN104680519A (zh) | 基于轮廓和颜色的七巧板识别方法 | |
CN113012098B (zh) | 一种基于bp神经网络的铁塔角钢冲孔缺陷检测方法 | |
CN106204528A (zh) | 一种零件几何质量的尺寸检测方法 | |
CN110473184A (zh) | 一种pcb板缺陷检测方法 | |
CN109598200B (zh) | 一种铁水罐罐号的图像智能识别***及方法 | |
CN110866915A (zh) | 基于度量学习的圆形砚台质量检测方法 | |
CN115597494B (zh) | 一种基于点云的预制构件预留孔的精度检测方法、*** | |
CN111127384A (zh) | 基于偏振成像的强反射工件视觉测量方法 | |
CN111667473A (zh) | 基于改进Canny算法的绝缘子憎水性等级判断方法 | |
CN114155226A (zh) | 一种微小缺陷边缘计算方法 | |
CN114529536A (zh) | 一种实木质量检测方法 | |
CN113628170A (zh) | 一种基于深度学习的激光线提取方法及*** | |
CN108898080B (zh) | 一种基于山脊线邻域评价模型的裂缝连接方法 | |
CN116051808A (zh) | 一种基于YOLOv5的轻量化零件识别定位方法 | |
CN113591923A (zh) | 基于图像特征提取与模板匹配的发动机摇臂零件分类方法 | |
Hu et al. | Research on bamboo defect segmentation and classification based on improved U-net network | |
CN110728061A (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 |