CN114067197A - 一种基于目标检测及双目视觉的管道缺陷识别与定位方法 - Google Patents
一种基于目标检测及双目视觉的管道缺陷识别与定位方法 Download PDFInfo
- Publication number
- CN114067197A CN114067197A CN202111360831.6A CN202111360831A CN114067197A CN 114067197 A CN114067197 A CN 114067197A CN 202111360831 A CN202111360831 A CN 202111360831A CN 114067197 A CN114067197 A CN 114067197A
- Authority
- CN
- China
- Prior art keywords
- camera
- image
- pixel
- binocular
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000001514 detection method Methods 0.000 title claims abstract description 67
- 230000007547 defect Effects 0.000 title claims abstract description 57
- 238000004364 calculation method Methods 0.000 claims abstract description 32
- 238000012549 training Methods 0.000 claims abstract description 27
- 239000011159 matrix material Substances 0.000 claims description 78
- 238000012937 correction Methods 0.000 claims description 64
- 230000002776 aggregation Effects 0.000 claims description 23
- 238000004220 aggregation Methods 0.000 claims description 23
- 238000013135 deep learning Methods 0.000 claims description 14
- 238000003384 imaging method Methods 0.000 claims description 14
- 238000005457 optimization Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 11
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 239000002131 composite material Substances 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 9
- 238000013519 translation Methods 0.000 claims description 8
- 238000003702 image correction Methods 0.000 claims description 6
- 230000003287 optical effect Effects 0.000 claims description 6
- 238000013136 deep learning model Methods 0.000 claims description 3
- 238000002474 experimental method Methods 0.000 claims description 3
- 238000011068 loading method Methods 0.000 claims description 3
- 230000008520 organization Effects 0.000 claims description 3
- 230000002441 reversible effect Effects 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 3
- 230000008901 benefit Effects 0.000 abstract description 5
- 239000003302 ferromagnetic material Substances 0.000 abstract description 2
- 230000004907 flux Effects 0.000 abstract description 2
- 230000005291 magnetic effect Effects 0.000 abstract description 2
- 238000012544 monitoring process Methods 0.000 abstract description 2
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 238000002372 labelling Methods 0.000 description 4
- 235000019580 granularity Nutrition 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000004931 aggregating effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011049 filling Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000009545 invasion Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001629 suppression Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000001464 adherent effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000000053 physical method Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect 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/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- 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
- 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
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- 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
- G06T7/85—Stereo 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/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/10024—Color 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/10028—Range image; Depth image; 3D point clouds
-
- 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/30132—Masonry; Concrete
-
- 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/30181—Earth observation
- G06T2207/30184—Infrastructure
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Image Processing (AREA)
Abstract
本发明提出了一种基于目标检测及双目视觉的管道缺陷识别与定位方法,其步骤包括:对双目相机进行标定与立体匹配,得到畸变相对很小的图像,通过立体匹配与深度计算确定图像中某一点在世界坐标系下的具***置与其像素点位置的具体函数关系;通过目标检测算法训练目标检测模型并对视频图像进行识别;当识别到图像存在某一类缺陷时,该模型将框定缺陷目标,将其中心位置的世界坐标显示在屏幕上。本发明的管道缺陷检测与定位方法具有监测范围广,实时性好,精确度高,并能够准确定位等优点。同时,该方法克服了漏磁检测法等传统管道检测方法只能检测铁磁性材料管道的局限性,且不会产生虚假信号,对漏报、误报的情况有一定程度的改善。
Description
技术领域
本发明涉及计算机视觉中的目标检测及多目视觉定位技术领域,特别是指一种基于目标检测及双目视觉的管道缺陷识别与定位方法。
背景技术
目标检测是计算机视觉中的重要部分,用于检测数字图像和视频中某一类语义对象,研究重点是复杂环境下的类别检测,其中YOLO在速度方面表现突出,该方法采用单个神经网络直接预测对象边界和类别概率,实现了端到端的类别检测。双目视觉是计算机被动测距方法中重要的距离感知技术,在非接触式测量的前提下,通过对摄像头进行校准、立体匹配等操作后,计算左右图像的视差并得到深度图,以此反映物体在真实世界的坐标位置。
YOLOX是YOLO算法的最新成果,相比于YOLOV3-V5系列,在识别精度上有提升,速度上也具有一定的竞争优势。在整合各个版本的优点后,通过改进数据增强策略、增加训练的正例样本,来提高目标检测精度,同时加入了无锚点的检测器提高检测速度。将YOLOX网络框架下训练出的模型代入识别网络中,可以实现对多目标、多类别的目标检测,具有检测类别范围广、准确率高、速度快等特点。
然而,目前主流的对管道缺陷检测方法,即光电检测方法,包含内窥镜法、激光投射法、CCD摄像机图像采集法等。尽管上述方法采用了图像视觉领域的检测技术,但检测精度较低且未涉及缺陷尺寸的进一步测量,需要耗费一定的人力,同时无法提取管道内表面环的数据,不能在视觉上进一步表示管道内表面的缺陷情况。而计算机视觉方法在管道缺陷分类领域的限制主要是检测精确度较低与数据集的缺乏。
发明内容
针对现有管道识别与定位技术在实际检测缺陷目标时,无法高精度检测与定位管道内部缺陷的技术问题,本发明提出了一种基于目标检测及双目视觉的管道缺陷识别与定位方法,将端到端的深度学习算法与双目视觉的位置测量结合,通过自建管道缺陷数据集,训练轻量化深度学习网络,预测缺陷类别,兼顾定位的速度与精度,能够在不同的管道环境下均呈现良好的检测效果,具有全自动、非接触式测量、定位精准且实时性高的特点。
本发明的技术方案是这样实现的:
一种基于目标检测及双目视觉的管道缺陷识别与定位方法,包括相机标定、立体校正、图像捕获与目标检测、立体匹配与深度计算模块四部分;其步骤如下:
步骤一:相机标定:建立相机成像的几何模型,确定空间物体表面上一点的三维几何位置与其在图像中对应点之间的相互关系,由标定板上特征点的图像坐标和世界坐标求解双目摄像机的标定参数,其中,标定参数包括左摄像头和右摄像头的内参、外参和畸变参数;
步骤二:立体校正:通过极线约束进行立体校正,使两幅图像中的对应点在同一条水平极线上,获取校正后的双目摄像机的标定参数;
步骤三:图像捕获与目标检测:自建数据集,进行目标检测模型训练,利用双目摄像机捕获图像,预测左摄像头显示的实时画面信息,并输出物体识别信息;
步骤四:立体匹配与深度计算模块:将经过立体校正后的左摄像头和右摄像头图像与步骤三中的物体识别信息作为输入量传输至立体匹配与深度计算模块,得到双目摄像头左摄像头图像中被识别物体映射到实际三维空间中的空间三维坐标。
优选地,所述相机标定的实现方法为:
步骤1.1:制作一块由黑白方块间隔组成的棋盘标定板,用双目摄像头在不同方向下拍摄棋盘标定板的棋盘图像,提取每一张棋盘图像的角点信息,获得棋盘图像上所有内角点的图像坐标及其空间三维坐标;
步骤1.2:建立相机成像的几何模型,确定空间物体表面一点的三维几何位置与其在图像中对应点之间的相互关系;
步骤1.3:将步骤1.1中获得的棋盘图像上所有内角点的图像坐标及其空间三维坐标作为输入,依据相机成像的几何模型,通过实验与计算求解并分别输出双目摄像机左摄像头和右摄像头的内参数矩阵和外参数矩阵;
步骤1.4:根据双目摄像机左摄像头和右摄像头的内参数矩阵和外参数矩阵,利用畸变校正前后的坐标关系,求解5个畸变参数k1、k2、k3、p1、p2以进行畸变矫正。
优选地,在步骤1.2中,外参数矩阵反应相机坐标系与世界坐标系的转换,R为双目摄像机右摄像头相对左摄像头的旋转矩阵,t为双目摄像机右摄像头相对左摄像头的平移向量;内参数矩阵反应像素坐标系与相机坐标系的转换,f为透镜焦距,(u0,v0)为图像坐标系原点在像素坐标系下的坐标,dx、dy为每个像素点在图像坐标系x轴、y轴方向的尺寸。
优选地,在步骤1.4中,畸变矫正的方法为:
其中,(xp,yp)是图像的原坐标,(xtcorr,ytcorr)是图像修正后的坐标,r为变量。
优选地,所述立体校正的实现方法为:
步骤2.1:将双目摄像机右摄像头相对左摄像头的旋转矩阵R划分为左摄像头的合成旋转矩阵r1和右摄像头的合成旋转矩阵r2,左摄像头和右摄像头各旋转一半,使得左摄像头和右摄像头的光轴平行,实现左摄像头和右摄像头的成像面共面;
步骤2.2:将左摄像头的合成旋转矩阵r1、右摄像头的合成旋转矩阵r2、原始的左摄像头和右摄像头内参矩阵、平移向量t以及棋盘图像的大小输入OpenCV中,通过cvStereoRectify函数输出左摄像头的行对准校正旋转矩阵R1、右摄像头行对准校正旋转矩阵R2、校正后的左摄像头的内参矩阵Ml、校正后的右摄像头的内参矩阵Mr、校正后的左摄像头投影矩阵Pl、校正后的右摄像头投影矩阵Pr以及重投影矩阵Q;
步骤2.3:将步骤2.2中cvStereoRectify函数的输出结果作为已知常量,通过左右视图的校正查找映射表,采用逆向映射,对目标图像上的每一个整形的像素位置,查找出其对应源图像上的浮点位置,并对周围源像素的每个整形值进行插值,在校正图像都被赋值之后,对图像进行裁剪,保存校正结果。
优选地,所述图像捕获与目标检测的实现方法为:
步骤3.1:利用双目相机与网络爬虫捕获并筛选管道缺陷图像,并对管道缺陷图像进行标记与分类,创建适应该环境下的数据集;
步骤3.2:对管道缺陷图像和标记进行组织目录上的整理,通过getitem方法加载数据集中的管道缺陷图像和标记,使用COCO Evaluator作为评估器,将深度学习模型中涉及的所有内容都放在一个单独的COCO Exp文件中,包括模型设置、训练设置和测试设置;
步骤3.3:设置完毕后,使用COCO开源数据集训练完成的预训练权重初始化模型,在命令行输入训练命令以使用GPU开始训练,训练完成后,得到权重文件以及深度学习目标检测模型;
步骤3.4:通过双目相机捕获管道实时图像,并将管道实时图像输入深度学习目标检测模型中,输出物体识别信息。
优选地,所述图像捕获与目标检测的实现方法为:
步骤4.1:根据立体校正后的双目摄像头左摄像头和右摄像头图像计算得到原图像在预设视差范围内各像素点的匹配代价;
步骤4.2:根据预设视差范围内各像素点的匹配代价计算得到各像素在预设视差范围内的多路径代价聚合值;
步骤4.3:根据各像素在预设视差范围内的多路径代价聚合值计算得到各像素在代价聚合后的视差;
步骤4.4:根据各像素在代价聚合后的视差进行视差优化,得到立体校正后的双目摄像头左摄像头视差图;
步骤4.5:对立体校正后的双目摄像头左摄像头视差图进行深度计算,得到立体校正后的双目摄像头左摄像头图像的深度图,并结合步骤3.4中得到的物体识别信息,最终得到经立体校正后的双目摄像头左摄像头图像中被识别物体映射到实际三维空间中的空间三维坐标。
优选地,所述匹配代价的计算方法为:
其中,e(xR,y,d)表示像素灰度值差值的绝对值,IR(xR,y)表示候选图像像素点(xR-0.5,y)与(xR+0.5,y)之间亚像素位置的灰度值,表示匹配图像像素点(x+d-0.5,y)与(x+d+0.5,y)之间亚像素位置的灰度值,IT(xR+d,y)表示候选图像像素点(xR+d-0.5,y)与(xR+d+0.5,y)之间亚像素位置的灰度值,表示匹配图像像素点(x-0.5,y)与(x+0.5,y)之间亚像素位置的灰度值,xR表示候选图像像素的横坐标,y表示图像像素的纵坐标,d表示视差,x表示匹配图像像素的横坐标。
优选地,所述各像素在预设视差范围内的多路径代价聚合值的计算方法为:
计算像素p沿着路径r的路径代价:
其中,p代表像素,r代表路径,d代表视差,p-r代表像素p路径内的像素,L表示某一路径聚合代价值。Lr(p-r,d)表示路径内上一个像素视差为d时的代价值,Lr(p-r,d-1)表示路径内上一个像素视差为d-1时的代价值,Lr(p-r,d+1)表示路径内上一个像素视差为d+1时的代价值,miniLr(p-r,i)表示路径内上一个像素所有代价值的最小值;C(p,d)表示初始代价值;
由像素p沿着路径r的路径代价可得到总路径代价值S:
S(p,d)=∑rLr(p,d)。
优选地,所述深度计算的计算方法为:
其中,f为焦距长度,b为基线长度,d为视差,cxr为右摄像头的主点的列坐标,cxl为左摄像头的主点的列坐标。
与现有技术相比,本发明产生的有益效果为:
1)本发明采用双目RGBD相机对管道缺陷的类别进行预测与定位,相比现有的方法提升了检测的速度与精度,并提出了一种管道缺陷数据集的分类方法,将深度学习应用到双目视觉定位实现目标检测,参考YOLOX网络搭建深度学习卷积神经网络,并做适当调整,简化了特征提取部分并精简网络结构,保证信息传播的同时,对像素进行适当的定位提高预测率。
2)本发明减小了检测的成本,能够对各类管道进行多类别多数量的预测与定位,具有监测范围广,实时性好,精确度高,并能够准确定位等优点;同时,本发明克服了漏磁检测法等传统管道检测方法只能检测铁磁性材料管道的局限性,且不会产生虚假信号,对漏报、误报的情况有一定程度的改善。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的流程图。
图2为本发明提出的深度学习卷积神经网络结构示意图。
图3为图2中所用网络的子结构图。
图4为本发明提出的管道缺陷分类与标注示例。
图5为本发明提出的相机标定流程图。
图6为本发明提出的立体校正流程图。
图7为本发明提出的立体匹配与深度计算流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例公开了一种基于目标检测及双目视觉的管道缺陷识别与定位方法,包括相机标定、立体校正、图像捕获与目标检测、立体匹配与深度计算模块四部分;摄像机标定模块:包括内参、外参系数和畸变系数,可以对之后摄像机拍摄的图像进行校正,得到畸变相对很小的图像。输入为标定板己知特征点的图像坐标和世界坐标,建立摄像机成像的几何模型,确定摄像机图像像素坐标与场景点三维坐标之间的关系,输出为摄像机的内外参数及畸变系数。立体校正模块:采用相交光轴结构的视觉***,通过分解旋转矩阵和行对准校正旋转矩阵改变两摄像头的相对位置,使两幅图像中的对应点在同一条水平极线上。在摄像头原始数据基础上,利用数学物理方法获取校正后相机参数。将二维搜索变为一维搜索,缩小匹配搜索空间,提高立体匹配的搜索速率。最后通过校正映射查找表完成图像校正,将图像进行裁剪并保存。目标检测模块:输入为立体校正后左摄像头拍摄的RGB三通道图像,通过自建管道缺陷数据集,训练基于目标检测算法的深度学习网络,该网络将图像进行推断、预测,输出为左摄像头图像中识别的缺陷语义标签class、识别框中心坐标(x,y)以及宽高(w,h)。所述语义标签、识别框中心坐标以及宽高数据作为物体识别信息。立体匹配与深度计算模块:以经过立体校正后的双目摄像头左右摄像头图像与经过深度学习物体识别得到的物体识别信息为输入,经立体匹配算法处理后,得到经过立体校正后的双目摄像头左摄像头视差图,再经过深度计算将其转化为深度图,最后结合物体识别信息,输出为经过立体校正后的双目摄像头左摄像头图像中被识别物体映射到实际三维空间中的空间三维坐标。具体步骤如下:
步骤一:相机标定:对摄像机进行标定,建立相机成像的几何模型,确定空间物体表面上一点的三维几何位置与其在图像中对应点之间的相互关系,由标定板上特征点的图像坐标和世界坐标求解双目摄像机的标定参数,其中,标定参数包括左摄像头和右摄像头的内参、外参和畸变参数;所述双目摄像机摄像头和右摄像头的内参、外参和畸变参数作为摄像机标定参数。内参和外参系数、畸变参数可以对之后摄像机拍摄的图像进行校正,得到畸变相对很小的图像。
所述相机标定的实现方法为:
步骤1.1:制作一块由黑白方块间隔组成的棋盘标定板,用双目摄像头在不同方向下拍摄棋盘标定板的棋盘图像,使得单平面棋盘格在左、右摄像头中均清晰成像。提取每一张棋盘图像的角点信息,获得棋盘图像上所有内角点的图像坐标及其空间三维坐标;
步骤1.2:建立相机成像的几何模型,确定空间物体表面一点的三维几何位置与其在图像中对应点之间的相互关系;
在步骤1.2中,外参数矩阵反应相机坐标系与世界坐标系的转换,R为双目摄像机右摄像头相对左摄像头的旋转矩阵,t为双目摄像机右摄像头相对左摄像头的平移向量;内参数矩阵反应像素坐标系与相机坐标系的转换,f为透镜焦距,(u0,v0)为图像坐标系原点在像素坐标系下的坐标,dx、dy为每个像素点在图像坐标系x轴、y轴方向的尺寸。
步骤1.3:将步骤1.1中获得的棋盘图像上所有内角点的图像坐标及其空间三维坐标作为输入,依据相机成像的几何模型,通过实验与计算求解并分别输出双目摄像机左摄像头和右摄像头的内参数矩阵和外参数矩阵;
步骤1.4:根据双目摄像机左摄像头和右摄像头的内参数矩阵和外参数矩阵,利用畸变校正前后的坐标关系,求解5个畸变参数k1、k2、k3、p1、p2以进行畸变矫正。
在步骤1.4中,畸变矫正的方法为:
其中,(xp,yp)是图像的原坐标,(xtcorr,ytcorr)是图像修正后的坐标,r为变量;(xtcorr,ytcorr)用r=0处的泰勒级数展开近似描述。
步骤二:立体校正:通过极线约束进行立体校正,使两幅图像中的对应点在同一条水平极线上,获取校正后的双目摄像机的标定参数;调用OpenCV获取校正后左、右摄像头的参数,完成矫正,最后通过校正映射获取校正后的图像。
所述立体校正的实现方法为:
步骤2.1:将双目摄像机右摄像头相对左摄像头的旋转矩阵R划分为左摄像头的合成旋转矩阵r1和右摄像头的合成旋转矩阵r2,左摄像头和右摄像头各旋转一半,使得左摄像头和右摄像头的光轴平行,实现左摄像头和右摄像头的成像面共面;
步骤2.2:将左摄像头的合成旋转矩阵r1、右摄像头的合成旋转矩阵r2、原始的左摄像头和右摄像头内参矩阵、平移向量t以及棋盘图像的大小输入OpenCV中,通过cvStereoRectify函数输出左摄像头的行对准校正旋转矩阵R1、右摄像头行对准校正旋转矩阵R2、校正后的左摄像头的内参矩阵Ml、校正后的右摄像头的内参矩阵Mr、校正后的左摄像头投影矩阵Pl、校正后的右摄像头投影矩阵Pr以及重投影矩阵Q;
步骤2.3:将步骤2.2中cvStereoRectify函数的输出结果作为已知常量,通过左右视图的校正查找映射表,采用逆向映射,对目标图像上的每一个整形的像素位置,查找出其对应源图像上的浮点位置,并对周围源像素的每个整形值进行插值,在校正图像都被赋值之后,对图像进行裁剪,保存校正结果。
步骤三:图像捕获与目标检测:自建数据集,进行目标检测模型训练,利用双目摄像机捕获图像,预测左摄像头显示的实时画面信息,并输出物体识别信息;将步骤二校正得到的左相机图像输入目标检测模块,利用双目相机捕获图像进行标注与分类,自建管道缺陷数据集。在不同图像细粒度上聚合并形成图像特征的卷积神经网络,混合和组合图像特征,并将图像特征传递到预测层,对图像特征进行预测,生成边界框并预测类别。输出左相机图像中识别的缺陷语义标签class、识别框中心坐标(x,y)以及宽高(w,h)并显示目标检测结果。
所述图像捕获与目标检测的实现方法为:
步骤3.1:利用双目相机与网络爬虫捕获并筛选管道缺陷图像,并对管道缺陷图像进行标记与分类,创建适应该环境下的数据集;对于标记图像,采用Labelling或者CVAT。缺陷的分类如下,由于ND类为无注释类,将其剔除后,共计9个语义标签。
(1).ND类(无注释类):无缺陷。(在每个注释类周围有一米的缓冲区,如果注释类之间存在其他任何类则不被标注ND);
(2).OB类:表面损伤类;
(3).FO类:障碍物类别;
(4).RB类:包含裂纹、断裂和塌陷的类;
(5).RO类:植物的根入侵的类;
(6).DE类:变形;
(7).FS类:错位;
(8).GR类:支管;
(9).BE类:附着沉积物的类;
(10).AF类:固定沉积物的类。
步骤3.2:对管道缺陷图像和标记进行组织目录上的整理,通过getitem方法加载数据集中的管道缺陷图像和标记,使用COCO Evaluator作为评估器,将深度学习模型中涉及的所有内容都放在一个单独的COCO Exp文件中,包括模型设置、训练设置和测试设置;训练轮数epos=300,在步骤3.1分类的基础上定义缺陷类别数量num_classes=9。
步骤3.3:设置完毕后,使用COCO开源数据集训练完成的预训练权重初始化模型,在命令行输入训练命令以使用GPU开始训练,训练完成后,得到权重文件以及深度学习目标检测模型;
步骤3.4:通过双目相机捕获管道实时图像,并将管道实时图像输入深度学习目标检测模型中,输出物体识别信息。在深度学习目标检测模型中,在不同图像细粒度上聚合并形成图像特征的卷积神经网络,混合和组合图像特征,并将图像特征传递到预测层,对图像特征进行预测,生成边界框并预测类别,输出物体识别信息。
步骤四:立体匹配与深度计算模块:将经过立体校正后的左摄像头和右摄像头图像与步骤三中的物体识别信息作为输入量传输至立体匹配与深度计算模块,以物体识别信息中的识别框中心坐标为参考量,经立体匹配与深度计算模块对图像处理后,输出得到双目摄像头左摄像头图像中被识别物体映射到实际三维空间中的空间三维坐标。
所述图像捕获与目标检测的实现方法为:
步骤4.1:根据立体校正后的双目摄像头左摄像头和右摄像头图像计算得到原图像在预设视差范围内各像素点的匹配代价;匹配代价计算的目的是衡量待匹配像素与候选像素之间的相关性。两个像素无论是否为同名点,都可以通过匹配代价函数计算匹配代价,代价越小则说明相关性越大,是同名点的概率也越大。
使用BT(Birchfield and Tomasi)算法作为匹配代价的计算方法,表示为:
其中,e(xR,y,d)表示BT代价,即像素灰度值差值的绝对值,IR(xR,y)表示候选图像像素点(xR-0.5,y)与(xR+0.5,y)之间亚像素位置的灰度值,表示匹配图像像素点(x+d-0.5,y)与(x+d+0.5,y)之间亚像素位置的灰度值,IT(xR+d,y)表示候选图像像素点(xR+d-0.5,y)与(xR+d+0.5,y)之间亚像素位置的灰度值,表示匹配图像像素点(x-0.5,y)与(x+0.5,y)之间亚像素位置的灰度值,xR表示候选图像(左图像)像素的横坐标,y表示图像像素的纵坐标,d表示视差,x表示匹配图像(右图像)像素的横坐标。通过上述公式可实现对经过立体校正后的双目摄像头左右摄像头图像在预设视差范围内进行匹配代价计算,得到原图像在预设视差范围内各像素点的匹配代价。
步骤4.2:根据预设视差范围内各像素点的匹配代价计算得到各像素在预设视差范围内的多路径代价聚合值;采用全局立体匹配算法的思路,即全局能量最优化策略,简单来说就是寻找每个像素的最优视差使得整张影像的全局能量函数最小,全局能量函数的定义如下式:
E(d)=Edata(d)+Esmooth(d);
采用路径代价聚合的方法,即将像素所有视差下的匹配代价进行像素周围所有路径上的一维聚合得到路径下的路径代价值,然后将所有路径代价值相加得到该像素聚合后的匹配代价值。计算像素p沿着路径r的路径代价:
其中,p代表像素,r代表路径,d代表视差,p-r代表像素p路径内的像素,L表示某一路径聚合代价值。Lr(p-r,d)表示路径内上一个像素视差为d时的代价值,Lr(p-r,d-1)表示路径内上一个像素视差为d-1时的代价值,Lr(p-r,d+1)表示路径内上一个像素视差为d+1时的代价值,miniLr(p-r,i)表示路径内上一个像素所有代价值的最小值;C(p,d)表示初始代价值。
第一项为匹配代价值C,属于数据项。
第二项是平滑项,累加到路径代价上的值取,不做惩罚、做P1惩罚和做P2惩罚三种情况中代价最小的值;P1是为了适应倾斜或弯曲的表面,P2则是为了保留不连续性。P2往往是根据相邻像素的灰度差来动态调整,如下式:
P2′为P2的初始值,一般设置为远大于P1的数,Ibp和Ibq分别表示像素p和q的灰度值。
第三项是为了保证新的路径代价值Lr不超过一定数值上限。
由像素p沿着路径r的路径代价可得到总路径代价值S:
S(p,d)=∑rLr(p,d);
通过步骤4.2中各式计算可实现多路径的代价聚合,得到各像素在预设视差范围内的多路径代价聚合值。
步骤4.3:根据各像素在预设视差范围内的多路径代价聚合值计算得到各像素在代价聚合后的视差;视差计算即通过代价聚合之后的代价矩阵S来确定每个像素的最优视差值,采用WTA(Winner-take-all)算法,即在某个像素的所有视差下的代价值中,选择最小代价值所对应的视差作为最优视差,最终得到各像素在代价聚合后的视差。
步骤4.4:根据各像素在代价聚合后的视差进行视差优化,得到立体校正后的双目摄像头左摄像头视差图;视差优化的目的是对上一步得到的视差图进行进一步优化,改善视差图的质量,包括剔除错误匹配、提高视差精度和抑制噪声。
剔除错误匹配采用左右一致性检查法,它基于视差的唯一性约束,即每个像素最多只存在一个正确视差。具体步骤是将左右影像互换位置,即左影像成为右影像,右影像成为左影像,再做一次立体匹配,得到另一张视差图,因为视差图中每个值所反映的是两个像素之间的对应关系,所以依据视差的唯一性约束,通过左影像的视差图,找到每个像素在右影像的同名点像素及该像素对应的视差值,这两个视差值之差的绝对值若小于1,则满足唯一性约束被保留,反之则不满足唯一性约束而被剔除。同时,采用连通域检测的方法来剔除孤立异常点,去除视差图中由于误匹配造成的小团块,过滤小的孤立的散斑。一致性检查的公式如下式:
提高视差精度采用子像素优化技术,用二次曲线内插的方法获得子像素精度,对最优视差的代价值以及前后两个视差的代价值进行二次曲线拟合,曲线的极值点所对应的视差值即为新的子像素视差值。
抑制噪声采用卡尔曼滤波,使视差结果更加平滑,一定程度上消除视差图中的噪声,同时起到视差填充的作用。通过步骤4.4可实现视差优化,最终得到经过立体校正后的双目摄像头左摄像头视差图。
步骤4.5:对立体校正后的双目摄像头左摄像头视差图进行深度计算,得到立体校正后的双目摄像头左摄像头图像的深度图,并结合步骤3.4中得到的物体识别信息,最终得到经立体校正后的双目摄像头左摄像头图像中被识别物体映射到实际三维空间中的空间三维坐标。
所述深度计算的计算方法为:
其中,f为焦距长度,b为基线长度,d为视差,cxr为右摄像头的主点的列坐标,cxl为左摄像头的主点的列坐标。经过深度计算后,可得到经过立体校正后的双目摄像头左摄像头图像的深度图,结合经过深度学习目标检测得到的物体识别信息,可最终得到经过立体校正后的双目摄像头左摄像头图像中被识别物体映射到实际三维空间中的空间三维坐标。
如图2、图3所示,图2为本发明提出的深度学习卷积神经网络结构,由特征提取、特征融合、预测类别并标定检测框共计三部分构成。图3为该网络中包含的重要子结构。
特征提取部分,其作用是在不同图像细粒度上聚合并形成图像特征,包括Focus隔行采样拼接结构、四个DarkNet结构。Focus作为整个网络的输入部分,由默认的3×640×640输入开始,复制四份,通过切片操作将四个图片切成了四个3×320×320的切片,接下来使用concat从深度上拼接这四个切片,生成12×320×320的输出,最后经过batch_borm和leaky_relu将结果输入到下一个卷积层。DarkNet结构的基本架构由CSP与SPP组成,将原输入分成两个分支,分别进行卷积操作使得通道数减半,分支一抛弃了YOLOV5的Bottlenneck操作,采用ResUnit结构,随后concat分支一和分支二,从而使得CSP的输入与输出是一样的大小,CSP的目的是为了让模型学习到更多的特征;SPP的输入为512×20×20,经过1×1的卷积层后输出256×20×20,然后经过并列的三个MaxPool进行采样,将结果与其初始特征相加,输出1024×20×20,最后用512的卷积核将其恢复到512×20×20。
特征融合部分的作用是混合和组合图像特征,并将图像特征传递到预测层,采用PAFPN,该方法借鉴于YOLOV3,基于Mask R-CNN和FPN框架,加强了信息传播,具有准确保留空间信息的能力,这有助于对像素进行适当的定位以形成掩模。
最后一部分网络结构对图像特征进行预测,生成边界框并预测类别。首先采用Decoupled Head提取三个特征层进行目标检测,同时加入了无锚点的检测器提高检测速度,在输出部分,三个输出分别是85×20×20、85×40×40、85×80×80。通过对预测结果解码,即得到缺陷预测信息。
本发明提出的深度学习卷积神经网络结构参考YOLOX网络搭建,相比YOLOX网络在特征提取部分减少了部分CBS操作和卷积次数,简化了该网络的特征提取部分。同时,修改了损失函数的计算方式,使用标准二进制交叉熵损失进行训练。
其中,C为上文提到的语义标签数numclasses=9,表示当前图像中是否存在c类,xc是c类模型的原始输出,σ为Sigmoid激活函数,为c类的权重,N表示训练中的图像数,Nc表示包含c类的图像数。
如图4所示,本发明提出了一种管道缺陷分类方法,将缺陷类型分为10类,排除ND类,即无缺陷类后,共计9个语义标签,分别是表面损伤类、障碍物类、裂纹类、根侵入类、变形类、错位类、支管类、附着沉积物类和固定沉积物类。同时,图中给出了9类缺陷的标注示例,可作为自建管道缺陷数据集时的参考。通过管道缺陷分类方法解决了计算机视觉方法在管道缺陷分类领域数据分类标准模糊的问题。
如图5所示,本发明公开的相机标定方法,使用了摄像机标定模块。摄像机标定模块的输入为标定板己知特征点的图像坐标和世界坐标,由此建立摄像机成像的几何模型,确定摄像机图像像素坐标与场景点三维坐标之间的关系,输出为摄像机的内外参数矩阵及畸变系数。
外参数矩阵W,反应相机坐标系与世界坐标系的转换;内参数矩阵M,反应像素坐标系与相机坐标系的转换。
外参数矩阵W、内参数矩阵M以及5个畸变系数k1、k2、k3、p1、p2如下所示。
其中,R为双目摄像机右摄像头相对做摄像头的旋转矩阵,t为双目摄像机右摄像头相对做摄像头的平移向量。f为透镜焦距,(u0,v0)为图像坐标系原点在像素坐标系下的坐标,dx、dy为每个像素点在图像坐标系x轴、y轴方向的尺寸。(xp,yp)是图像的原坐标,(xtcorr,ytcorr)是图像修正后的坐标,用r=0处的Taylor级数展开近似描述。
相机标定方法通过Matlab实现,应尽可能采集各种不同的棋盘图像。镜头的畸变从图像中心径向增加,并且有时在图像各帧上表现出不均匀现象,为了获取图像的畸变信息,棋盘应当处在图像的各种不同边缘处。通过Matlab标定后可得到旋转矩阵R和内参矩阵M,计算后即得到余下的参数值。为后续导入OpenCV使用,应将旋转矩阵R和内参矩阵M转置。畸变向量中畸变系数的次序为[k1,k2,p1,p2,k3]。
如图6所示,本发明公开的立体校正方法,使用了立体校正模块。通过极线约束进行立体校正,将标定模块输出的旋转矩阵R划分为左右摄像头的合成旋转矩阵r1和r2两部分,使两幅图像中的对应点在同一条水平极线上。获取校正后的相机参数,包括合成旋转矩阵r1和r2、原始的左右摄像头内参矩阵、平移向量t以及棋盘图像的大小。调用OpenCV中StereoRectify与initUndistortRectifyMap函数输出左右摄像头行对准校正旋转矩阵R1和R2、校正后左右摄像头内参矩阵Ml和Mr、校正后左右摄像头投影矩阵Pl和Pr以及重投影矩阵Q。
重投影矩阵Q实现了世界坐标系和像素坐标系之间的转换。具体如下:
实时获取校正后左右摄像头的参数,通过校正映射获取校正后的图像。对目标图像上的每一个整形的像素位置,查找出其对应源图像上的浮点位置,并对周围源像素的每个整形值进行插值。在校正图像都被赋值之后,对图像进行裁剪,保存校正结果。最终,双目摄像头两图像平面平行,光轴和图像平面垂直,极点处于无限远处,此时,图像中任意一点(x0,y0)对应的极线为y=y0。
如图7所示,本发明公开的立体匹配与深度计算方法,使用了立体匹配模块。包括基于BT算法进行匹配代价计算、基于全局能量最优化策略进行代价聚合、基于WTA算法进行视差计算、视差优化以及深度计算。
其中,匹配代价计算如下所示。BT的代价即像素灰度值差值的绝对值,同时,BT利用了亚像素的灰度信息。首先计算左图像中像素(xR-0.5,y)和(xR+0.5,y)之间亚像素位置(xR+x,y)的灰度值同理可计算右图像中像素(xR+d-0.5,y)和(xR+d+0.5,y)之间亚像素位置(xR+d+x,y)的灰度值分别计算两个代价,最终的代价为两个代价的最小值。
两图像的代价如下:
代价聚合采用全局立体匹配算法的思路,即全局能量最优化策略,寻找每个像素的最优视差使得整张影像的全局能量函数最小。将像素所有视差下的匹配代价进行像素周围所有路径上的一维聚合得到路径下的路径代价值,然后将所有路径代价值相加得到该像素聚合后的匹配代价值。
匹配代价值共分为三项,第一项为匹配代价值C,属于数据项;第二项为平滑项,累加到路径代价上的值取,不做惩罚、做P1惩罚和做P2惩罚三种情况中代价最小的值;第三项为缩小项,保证了新的路径代价值Lr不超过一定数值上限。
得到Lr(p,d)后,总路径代价值S如下:
视差计算采用基于WTA的贪心算法,即在某个像素的所有视差下的代价值中,选择最小代价值所对应的视差作为最优视差,最终得到各像素在代价聚合后的视差。
视差优化包括剔除错误匹配、提高视差精度和抑制噪声。剔除错误匹配采用左右一致性检查法,将左右影像互换位置,再做一次立体匹配,得到另一张视差图,依据视差的唯一性约束,通过左影像的视差图,找到每个像素在右影像的同名点像素及该像素对应的视差值,这两个视差值之差的绝对值若小于1,则满足唯一性约束被保留,反之则不满足唯一性约束而被剔除。同时,采用连通域检测的方法来剔除孤立异常点,去除视差图中由于误匹配造成的小团块,过滤小的孤立的散斑。
提高视差精度采用子像素优化技术,用二次曲线内插的方法获得子像素精度,对最优视差的代价值以及前后两个视差的代价值进行二次曲线拟合,曲线的极值点所对应的视差值即为新的子像素视差值。
抑制噪声采用卡尔曼滤波,利用卡尔曼增益最优化地修正视差,使视差结果更加平滑,一定程度上消除视差图中的噪声,同时起到视差填充的作用。为状态估计方程,表示在第k时刻,对x(k+1)的估计;W(k+1)为卡尔曼增益,为观测估计方程。
像素深度计算公式如下。其中f为焦距长度,b为基线长度,d为视差,cxr与cxl为两个相机主点的列坐标。
综上所述,通过本发明公开的一种基于目标检测及双目视觉的管道缺陷识别与定位方即可最终得到经过立体校正后的双目摄像头左摄像头图像中被识别物体映射到实际三维空间中的空间三维坐标,完成了目标检测与定位。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于目标检测及双目视觉的管道缺陷识别与定位方法,其特征在于,包括相机标定、立体校正、图像捕获与目标检测、立体匹配与深度计算模块四部分;其步骤如下:
步骤一:相机标定:建立相机成像的几何模型,确定空间物体表面上一点的三维几何位置与其在图像中对应点之间的相互关系,由标定板上特征点的图像坐标和世界坐标求解双目摄像机的标定参数,其中,标定参数包括左摄像头和右摄像头的内参、外参和畸变参数;
步骤二:立体校正:通过极线约束进行立体校正,使两幅图像中的对应点在同一条水平极线上,获取校正后的双目摄像机的标定参数;
步骤三:图像捕获与目标检测:自建数据集,进行目标检测模型训练,利用双目摄像机捕获图像,预测左摄像头显示的实时画面信息,并输出物体识别信息;
步骤四:立体匹配与深度计算模块:将经过立体校正后的左摄像头和右摄像头图像与步骤三中的物体识别信息作为输入量传输至立体匹配与深度计算模块,得到双目摄像头左摄像头图像中被识别物体映射到实际三维空间中的空间三维坐标。
2.根据权利要求1所述的基于目标检测及双目视觉的管道缺陷识别与定位方法,其特征在于,所述相机标定的实现方法为:
步骤1.1:制作一块由黑白方块间隔组成的棋盘标定板,用双目摄像头在不同方向下拍摄棋盘标定板的棋盘图像,提取每一张棋盘图像的角点信息,获得棋盘图像上所有内角点的图像坐标及其空间三维坐标;
步骤1.2:建立相机成像的几何模型,确定空间物体表面一点的三维几何位置与其在图像中对应点之间的相互关系;
步骤1.3:将步骤1.1中获得的棋盘图像上所有内角点的图像坐标及其空间三维坐标作为输入,依据相机成像的几何模型,通过实验与计算求解并分别输出双目摄像机左摄像头和右摄像头的内参数矩阵和外参数矩阵;
步骤1.4:根据双目摄像机左摄像头和右摄像头的内参数矩阵和外参数矩阵,利用畸变校正前后的坐标关系,求解5个畸变参数k1、k2、k3、p1、p2以进行畸变矫正。
5.根据权利要求3所述的基于目标检测及双目视觉的管道缺陷识别与定位方法,其特征在于,所述立体校正的实现方法为:
步骤2.1:将双目摄像机右摄像头相对左摄像头的旋转矩阵R划分为左摄像头的合成旋转矩阵r1和右摄像头的合成旋转矩阵r2,左摄像头和右摄像头各旋转一半,使得左摄像头和右摄像头的光轴平行,实现左摄像头和右摄像头的成像面共面;
步骤2.2:将左摄像头的合成旋转矩阵r1、右摄像头的合成旋转矩阵r2、原始的左摄像头和右摄像头内参矩阵、平移向量t以及棋盘图像的大小输入OpenCV中,通过cvStereoRectify函数输出左摄像头的行对准校正旋转矩阵R1、右摄像头行对准校正旋转矩阵R2、校正后的左摄像头的内参矩阵Ml、校正后的右摄像头的内参矩阵Mr、校正后的左摄像头投影矩阵Pl、校正后的右摄像头投影矩阵Pr以及重投影矩阵Q;
步骤2.3:将步骤2.2中cvStereoRectify函数的输出结果作为已知常量,通过左右视图的校正查找映射表,采用逆向映射,对目标图像上的每一个整形的像素位置,查找出其对应源图像上的浮点位置,并对周围源像素的每个整形值进行插值,在校正图像都被赋值之后,对图像进行裁剪,保存校正结果。
6.根据权利要求1所述的基于目标检测及双目视觉的管道缺陷识别与定位方法,其特征在于,所述图像捕获与目标检测的实现方法为:
步骤3.1:利用双目相机与网络爬虫捕获并筛选管道缺陷图像,并对管道缺陷图像进行标记与分类,创建适应该环境下的数据集;
步骤3.2:对管道缺陷图像和标记进行组织目录上的整理,通过getitem方法加载数据集中的管道缺陷图像和标记,使用COCO Evaluator作为评估器,将深度学习模型中涉及的所有内容都放在一个单独的COCO Exp文件中,包括模型设置、训练设置和测试设置;
步骤3.3:设置完毕后,使用COCO开源数据集训练完成的预训练权重初始化模型,在命令行输入训练命令以使用GPU开始训练,训练完成后,得到权重文件以及深度学习目标检测模型;
步骤3.4:通过双目相机捕获管道实时图像,并将管道实时图像输入深度学习目标检测模型中,输出物体识别信息。
7.根据权利要求1所述的基于目标检测及双目视觉的管道缺陷识别与定位方法,其特征在于,所述图像捕获与目标检测的实现方法为:
步骤4.1:根据立体校正后的双目摄像头左摄像头和右摄像头图像计算得到原图像在预设视差范围内各像素点的匹配代价;
步骤4.2:根据预设视差范围内各像素点的匹配代价计算得到各像素在预设视差范围内的多路径代价聚合值;
步骤4.3:根据各像素在预设视差范围内的多路径代价聚合值计算得到各像素在代价聚合后的视差;
步骤4.4:根据各像素在代价聚合后的视差进行视差优化,得到立体校正后的双目摄像头左摄像头视差图;
步骤4.5:对立体校正后的双目摄像头左摄像头视差图进行深度计算,得到立体校正后的双目摄像头左摄像头图像的深度图,并结合步骤3.4中得到的物体识别信息,最终得到经立体校正后的双目摄像头左摄像头图像中被识别物体映射到实际三维空间中的空间三维坐标。
8.根据权利要求7所述的基于目标检测及双目视觉的管道缺陷识别与定位方法,其特征在于,所述匹配代价的计算方法为:
9.根据权利要求7所述的基于目标检测及双目视觉的管道缺陷识别与定位方法,其特征在于,所述各像素在预设视差范围内的多路径代价聚合值的计算方法为:
计算像素p沿着路径r的路径代价:
其中,p代表像素,r代表路径,d代表视差,p-r代表像素p路径内的像素,L表示某一路径聚合代价值。Lr(p-r,d)表示路径内上一个像素视差为d时的代价值,Lr(p-r,d-1)表示路径内上一个像素视差为d-1时的代价值,Lr(p-r,d+1)表示路径内上一个像素视差为d+1时的代价值,miniLr(p-r,i)表示路径内上一个像素所有代价值的最小值;C(p,d)表示初始代价值;
由像素p沿着路径r的路径代价可得到总路径代价值S:
S(p,d)=∑rLr(p,d)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111360831.6A CN114067197B (zh) | 2021-11-17 | 2021-11-17 | 一种基于目标检测及双目视觉的管道缺陷识别与定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111360831.6A CN114067197B (zh) | 2021-11-17 | 2021-11-17 | 一种基于目标检测及双目视觉的管道缺陷识别与定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114067197A true CN114067197A (zh) | 2022-02-18 |
CN114067197B CN114067197B (zh) | 2022-11-18 |
Family
ID=80273404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111360831.6A Active CN114067197B (zh) | 2021-11-17 | 2021-11-17 | 一种基于目标检测及双目视觉的管道缺陷识别与定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114067197B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115841449A (zh) * | 2022-09-23 | 2023-03-24 | 昆明市测绘研究院 | 排水管道结构性缺陷纵向定位的单目测距方法及存储介质 |
CN115963397A (zh) * | 2022-12-01 | 2023-04-14 | 华中科技大学 | 一种电机定子内轮廓表面缺陷快速在线检测方法及装置 |
CN116051658A (zh) * | 2023-03-27 | 2023-05-02 | 北京科技大学 | 基于双目视觉进行目标检测的相机手眼标定方法及装置 |
CN116399874A (zh) * | 2023-06-08 | 2023-07-07 | 华东交通大学 | 剪切散斑干涉无损检测缺陷尺寸的方法和程序产品 |
CN116883945A (zh) * | 2023-07-21 | 2023-10-13 | 江苏省特种设备安全监督检验研究院 | 一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107248159A (zh) * | 2017-08-04 | 2017-10-13 | 河海大学常州校区 | 一种基于双目视觉的金属工件缺陷检测方法 |
US20190096080A1 (en) * | 2017-08-25 | 2019-03-28 | Maker Trading Pte Ltd | Machine vision system and method for identifying locations of target elements |
CN112092929A (zh) * | 2020-10-12 | 2020-12-18 | 王宏辰 | 一种勘测车 |
WO2021051126A1 (en) * | 2019-09-11 | 2021-03-18 | The Johns Hopkins University | Portable projection mapping device and projection mapping system |
CN112906674A (zh) * | 2021-04-13 | 2021-06-04 | 中国矿业大学(北京) | 一种基于双目视觉的矿井火灾识别与火源定位方法 |
CN113393439A (zh) * | 2021-06-11 | 2021-09-14 | 重庆理工大学 | 一种基于深度学习的锻件缺陷检测方法 |
CN113506286A (zh) * | 2021-07-27 | 2021-10-15 | 西安电子科技大学 | 基于YOLOv5算法小样本数据集实现微波芯片缺陷检测方法 |
CN113524194A (zh) * | 2021-04-28 | 2021-10-22 | 重庆理工大学 | 基于多模特征深度学习的机器人视觉抓取***的目标抓取方法 |
-
2021
- 2021-11-17 CN CN202111360831.6A patent/CN114067197B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107248159A (zh) * | 2017-08-04 | 2017-10-13 | 河海大学常州校区 | 一种基于双目视觉的金属工件缺陷检测方法 |
US20190096080A1 (en) * | 2017-08-25 | 2019-03-28 | Maker Trading Pte Ltd | Machine vision system and method for identifying locations of target elements |
WO2021051126A1 (en) * | 2019-09-11 | 2021-03-18 | The Johns Hopkins University | Portable projection mapping device and projection mapping system |
CN112092929A (zh) * | 2020-10-12 | 2020-12-18 | 王宏辰 | 一种勘测车 |
CN112906674A (zh) * | 2021-04-13 | 2021-06-04 | 中国矿业大学(北京) | 一种基于双目视觉的矿井火灾识别与火源定位方法 |
CN113524194A (zh) * | 2021-04-28 | 2021-10-22 | 重庆理工大学 | 基于多模特征深度学习的机器人视觉抓取***的目标抓取方法 |
CN113393439A (zh) * | 2021-06-11 | 2021-09-14 | 重庆理工大学 | 一种基于深度学习的锻件缺陷检测方法 |
CN113506286A (zh) * | 2021-07-27 | 2021-10-15 | 西安电子科技大学 | 基于YOLOv5算法小样本数据集实现微波芯片缺陷检测方法 |
Non-Patent Citations (4)
Title |
---|
HEIKO HIRSCHMULLER: "Stereo Processing by Semiglobal Matching and Mutual Information", 《IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE》 * |
KE XU等: "3D detection technique of surface defects for heavy rail based on binocular stereo vision", 《OPTICAL TEST AND MEASUREMENT TECHNOLOGY AND EQUIPMENT》 * |
冯浩等: "基于双目立体视觉的陶瓷表面落渣检测", 《陶瓷学报》 * |
曹桢淼等: "基于扩展跨阶段局部网络的表面缺陷检测", 《计算机集成制造***》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115841449A (zh) * | 2022-09-23 | 2023-03-24 | 昆明市测绘研究院 | 排水管道结构性缺陷纵向定位的单目测距方法及存储介质 |
CN115963397A (zh) * | 2022-12-01 | 2023-04-14 | 华中科技大学 | 一种电机定子内轮廓表面缺陷快速在线检测方法及装置 |
CN115963397B (zh) * | 2022-12-01 | 2023-07-25 | 华中科技大学 | 一种电机定子内轮廓表面缺陷快速在线检测方法及装置 |
CN116051658A (zh) * | 2023-03-27 | 2023-05-02 | 北京科技大学 | 基于双目视觉进行目标检测的相机手眼标定方法及装置 |
CN116399874A (zh) * | 2023-06-08 | 2023-07-07 | 华东交通大学 | 剪切散斑干涉无损检测缺陷尺寸的方法和程序产品 |
CN116399874B (zh) * | 2023-06-08 | 2023-08-22 | 华东交通大学 | 剪切散斑干涉无损检测缺陷尺寸的方法和程序产品 |
CN116883945A (zh) * | 2023-07-21 | 2023-10-13 | 江苏省特种设备安全监督检验研究院 | 一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法 |
CN116883945B (zh) * | 2023-07-21 | 2024-02-06 | 江苏省特种设备安全监督检验研究院 | 一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114067197B (zh) | 2022-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114067197B (zh) | 一种基于目标检测及双目视觉的管道缺陷识别与定位方法 | |
Koch et al. | Evaluation of cnn-based single-image depth estimation methods | |
CN109544679B (zh) | 管道内壁的三维重建方法 | |
CN115272271A (zh) | 一种基于双目立体视觉的管道缺陷检测与定位测距*** | |
CN110689562A (zh) | 一种基于生成对抗网络的轨迹回环检测优化方法 | |
Sedlazeck et al. | 3d reconstruction based on underwater video from rov kiel 6000 considering underwater imaging conditions | |
CN106228605A (zh) | 一种基于动态规划的立体匹配三维重建方法 | |
CN111563415A (zh) | 一种基于双目视觉的三维目标检测***及方法 | |
CN113177565B (zh) | 一种基于深度学习的双目视觉位置测量***及方法 | |
CN117036641A (zh) | 一种基于双目视觉的公路场景三维重建与缺陷检测方法 | |
CN113744315B (zh) | 一种基于双目视觉的半直接视觉里程计 | |
CN114494462A (zh) | 一种基于Yolov5和改进跟踪算法的双目相机测距方法 | |
CN112561996A (zh) | 一种自主水下机器人回收对接中目标检测方法 | |
CN113393439A (zh) | 一种基于深度学习的锻件缺陷检测方法 | |
CN104182968A (zh) | 宽基线多阵列光学探测***模糊动目标分割方法 | |
CN116778288A (zh) | 一种多模态融合目标检测***及方法 | |
Meline et al. | A camcorder for 3D underwater reconstruction of archeological objects | |
CN114648669A (zh) | 一种域自适应双目视差计算的动车组故障检测方法及*** | |
CN112017259B (zh) | 一种基于深度相机与热像仪的室内定位与建图方法 | |
CN112308776A (zh) | 解决遮挡与错误映射的影像序列与点云数据融合的方法 | |
Liu et al. | A novel visual measurement method for three-dimensional trajectory of underwater moving objects based on deep learning | |
CN110136104A (zh) | 基于无人机地面站的图像处理方法、***及介质 | |
CN115273080A (zh) | 一种面向动态场景的轻量级视觉语义里程计方法 | |
CN112950481A (zh) | 一种基于图像拼接网络的水花遮挡图像数据集采集方法 | |
AU2017300877B2 (en) | Method and device for aiding the navigation of a vehicle |
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 |