CN116883945B - 一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法 - Google Patents
一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法 Download PDFInfo
- Publication number
- CN116883945B CN116883945B CN202310899387.8A CN202310899387A CN116883945B CN 116883945 B CN116883945 B CN 116883945B CN 202310899387 A CN202310899387 A CN 202310899387A CN 116883945 B CN116883945 B CN 116883945B
- Authority
- CN
- China
- Prior art keywords
- image
- target
- binocular
- parallax
- points
- 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
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000003708 edge detection Methods 0.000 title claims abstract description 21
- 230000009466 transformation Effects 0.000 title claims abstract description 11
- 238000001514 detection method Methods 0.000 claims abstract description 40
- 238000012545 processing Methods 0.000 claims abstract description 16
- 238000005520 cutting process Methods 0.000 claims abstract description 7
- 238000012549 training Methods 0.000 claims description 23
- 239000011159 matrix material Substances 0.000 claims description 18
- 238000012937 correction Methods 0.000 claims description 14
- 238000012795 verification Methods 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 8
- 238000012360 testing method Methods 0.000 claims description 7
- 238000003384 imaging method Methods 0.000 claims description 3
- 230000003287 optical effect Effects 0.000 claims description 3
- 230000001629 suppression Effects 0.000 claims description 3
- 238000009499 grossing Methods 0.000 claims description 2
- 238000005259 measurement Methods 0.000 claims 1
- 238000004364 calculation method Methods 0.000 abstract description 5
- 238000012216 screening Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
-
- 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/0464—Convolutional networks [CNN, ConvNet]
-
- 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/13—Edge detection
-
- 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
-
- 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/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- 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/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/757—Matching configurations of points or features
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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/10016—Video; Image sequence
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/20112—Image segmentation details
- G06T2207/20132—Image cropping
-
- 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/20228—Disparity calculation for image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本发明属于图像处理技术领域,公开了一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,通过使用目标检测算法YOLOv5s对校正后的图像进行目标检测,识别出感兴趣的目标区域并进行裁剪,然后使用边缘检测算法探测出裁剪图像中人员所在位置的边缘轮廓信息,获取二值图像,遍历左目、右目二值图像寻找白色边缘点像素坐标,构造关键点,对特征点进行匹配和筛选,在获得同一目标的多组特征点对的像素坐标和多个视差值后,对视差值进行均值计算,使用视差均值、标定参数结合三角测量原理计算出人员目标与左目相机的空间位置。本发明可以有效缩短算法的处理时间,可获取到稳定且准确的视差信息,有效地完成了人员目标的识别与定位。
Description
技术领域
本发明属于图像处理技术领域,具体的说是涉及一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法。
背景技术
在吊车施工过程中,人为操作不当以及外界扰动会对系统稳定造成影响,进而引发吊物脱钩等危险,进而导致意外伤亡事件。针对通用的桥式起重机,其吊运负载下的一定工作半径范围内需要设定危险区域,施工人员一旦进入危险区域内,就可能会产生生产安全事故。为预防此类事故的发生,减少人员伤亡,有必要对复杂多变的吊装环境下的施工人员进行识别与定位,确保人员的安全。
传统的工人危险区域入侵检测一般是通过RFID(Radio FrequencyIdentification)、UWB(Ultra-wideband)、GPS(Global Positioning System)等定位技术来获取人和机械的位置信息,再将其整合进BIM(Building Information Modeling)建筑模型中,最后通过服务器的判断、分析、处理、传输,从而对现场人员的不安全行为进行监控。但这些方式实际操作过程比较复杂,要求工人始终佩戴传感器,而且干扰工人的正常操作,也给管理工作增加负担。
随着图像处理技术的发展和视频采集设备的普及,利用图像处理实现人员识别和定位已成为人们关注的重点。目前,深度学习、卷积神经网络的目标检测算法已经被广泛应用,以YOLO系列为代表的one-stage算法具有高准确率、高检测速度的优点,而且它能够适应多种场景和目标类型,并且易于实现和部署,使其在计算机视觉领域得到了广泛应用。Tang,Y等人在YOLOv4-tiny模型的基础上提出YOLO-Oleifera模型(E.Y.T.Chian,Y.M.Goh,J.Tian,B.H.W.Guo,Dynamic identification of crane load fall zone:A computervision approach,Safety Science 156(2022).),可适应复杂果园环境下的油茶果实检测和定位,具有较高的精度和稳定性。ZL202211164520.7公开了一种基于双目视觉的变电站作业人员三维重建的方法,在YOLOv5网络的基础上引入注意力机制完成对网络结构的优化,并将其应用在所提出的基于双目视觉的变电站作业人员三维重建的方法中。张建勋等人为解决视觉导航中利用单窗口区域匹配算法获取致密的视差图视差不连续、视差图上的边缘模糊等问题,提出了基于连续性约束和亮度梯度约束的多窗口区域匹配算法使获取的致密视差图更加平滑,物体轮廓更为清晰(张建勋.双目立体视觉实时视差算法研究[D].南京理工大学,2005.)。然而,针对实际场景采集的图像,原始图像样张较大且图像背景纹理特征比较复杂,获取致密视差图的算法比较耗时,基于特征获取稀疏视差的方式算法实时性比较好,而且我们关注的是对人员位置的识别与定位,因此不需要获取全图像上任意像素点的视差,故考虑使用基于特征的方式获取特征点位置处的稀疏视差而不是整个图像的致密视差图。获取双目图像的稀疏视差时,直接对原始图像进行特征点提取和匹配,算法的耗时也比较长。同时利用目标检测过滤的已配对的特征点很多来自图像上的背景而非纹理特征较少的人员,进而无法准确获取双目图像上人员所在位置的而视差,难以精确地定位人员,单纯地对目标检测网络进行优化能解决图像上人员目标漏检、误检等问题,但无法解决双目图像上的特征点误匹配、视差获取不准确的问题。
发明内容
为了解决上述技术问题,本发明提出了一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,用于解决原始算法耗时长、无法准确获取双目图像上人员所在位置的视差进而难以精确地定位人员的问题,本发明有效缩短原始图像的处理时间,并能提取到更多的来自于人员目标身上的特征点,最终能够有效和准确地进行人员识别与定位,并具有较好的鲁棒性。
为了达到上述目的,本发明是通过以下技术方案实现的:
本发明是一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,包括:
步骤1:获取双目摄像头采集的图像数据;
步骤2:对双目相机进行标定,获取双目相机的标定参数,其中,标定参数包括左摄像头和右摄像头的内参、外参和畸变参数;
步骤3:对双目图像进行立体校正,消除图像之间的畸变,使得左右图像在水平方向上对齐;
步骤4:使用目标检测算法YOLOv5s对校正后的图像进行目标检测,识别出感兴趣的目标区域,得到目标类别以及坐标;
步骤5:根据目标检测结果,对双目图像中的行人区域进行裁剪,得到仅包含行人的局部双目图像Image_Left、Image_Right;
步骤6:使用二维高斯核函数为的高斯滤波器对输入图像进行平滑滤波去除噪声;
步骤7:采用卷积模板为和/>的Sobel滤波器(水平x和垂直y方向)在计算梯度和方向;
步骤8:采用4个方向0°、45°、90°、135°模板对梯度幅值进行非极大值抑制;
步骤9:根据经验值设置两个阈值Tmin=100和Tmax=200,用双阈值算法检测边缘,获取二值图像Edge_Left、Edge_Right;
步骤10:遍历二值图像Edge_Left、Edge_Right寻找白色边缘点坐标Points_Left、Points_Right;
步骤11:根据双目图像边缘点Points_Left、Points_Right,分别构造关键点KeyPoints_Left、KeyPoints_Right;
步骤12:分别结合左目图像的处理数据Image_Left、KeyPoints_Left和右目图像的处理数据Image_Right、KeyPoints_Right对每个关键点KeyPoint生成128维的SIFT特征描述description=(a1,a2,…,a128);
步骤13:使用KNN(k-nearest neighbor)算法进行初始匹配,将近邻点个数k设置为2,并将最近邻点和次近邻点的距离比对应的阈值设置为0.75,计算左目图像的每个局部特征点在右目图像的特征点集中的最邻近匹配;
步骤14:采用RANSAC(random sample consensus)算法对初始匹配好的点进行二次过滤;
步骤15:输出双目图像及配对的特征点坐标。
步骤16:计算已匹配特征点的视差并取均值作为目标的视差;
步骤17:通过视差及标定参数得到的重投影矩阵,利用三角测量原理计算中图像中的目标在实际空间中的三维坐标。
本发明的进一步改进在于:步骤2中对双目相机进行标定,包括:
使用一块37×36的棋盘格标定板,每个棋盘格的大小为5mm×5mm,精度为±0.01mm。利用双目相机采集棋盘格标定板不同位姿的10-20对图像,使用MATLAB的标定工具箱stereoCameraCalibrator进行标定,然后可得双目相机的内参矩阵M、外参矩阵R与T、径向畸变系数k1、k2、k3与切向畸变系数p1、p2;
本发明的进一步改进在于:步骤3中,对双目图像进行立体校正,包括:
其中,(u,v)是图像上的原坐标,(u’,v’)是图像原校正后的坐标,r为变量,且r2=u2+v2。
本发明的进一步改进在于:步骤4中,使用目标检测算法YOLOv5s对校正后的图像进行目标检测,识别出感兴趣的目标区域,得到目标类别以及坐标,包括:
步骤4.1:采用整合的PASCALVOC2007和PASCALVOC2012数据集作为YOLOv5s的训练数据集,总共21503张图像以及每张图像对应的XML格式的标签文件,将构建的数据集随机划分为训练集、验证集和测试集,比例为3:1:1。
步骤4.2:利用Pytorch框架搭建好YOLOv5s网络模型,设置好对应的网络训练参数,包括模型设置、训练设置、验证设置和测试设置;
步骤4.3:设置完成后,加载开源的预训练权重初始化模型,并使用GPU开始训练,训练完成之后,得到在验证集中最优的权重文件以及YOLOv5s目标检测网络模型;
步骤4.4:将经过进行立体校正过后的左目图像、右目图像各自输入到训练好的目标检测网络中,输出物体识别的信息,包括物体的类别和检测框的位置信息。
本发明的进一步改进在于:步骤5中,根据步骤4中目标检测结果,对双目图像中的行人区域进行裁剪,得到仅包含行人的局部双目图像,包括:
利用Python中的切片操作,对目标检测类别为person的感兴趣区域,根据边界框的坐标,对其进裁剪。
本发明的进一步改进在于:所述步骤13计算已匹配特征点的视差并取均值作为目标的视差包括两部分:首先是获取每一对匹配特征点处的视差;然后,在获取多对匹配特征点之后,使用多对匹配点的视差均值来代替人员目标位置处的视差值,具体包括如下步骤:
步骤13.1、定义已匹配的双目图像特征点的坐标分别为(xL1,yL1)与(xR1,yR1)、(xL2,yL2)与(xR2,yR2)、…、(xLn,yLn)与(xRn,yRn),则这一组特征点的视差表示为:
di=xLi-xRi,i=1,2,...,n
其中n是匹配的特征点对的数量,xLi、xRi分别为已匹配的第i对特征点在左目像素坐标系、左目像素坐标系的横坐标;
步骤13.2将匹配的多对视差值取均值作为人员目标位置处的视差:
其中Davg表示人员目标位置处的平均视差,n是匹配的特征点对的数量,di为第i对特征点处的视差。
本发明的进一步改进在于:步骤14中,通过视差及标定参数得到的重投影矩阵,利用三角测量原理计算中图像中的目标在实际空间中的三维坐标,包括:
其中,基线B是双目相机光心之间的实际物理距离,通过步骤2中获取的外参矩阵T获取;f为相机的焦距,通过内参矩阵R获取;xl、xr分别表示Pl、Pr在各自坐标系上x轴方向上的像素距离;xl与xr的差值即为视差d;(cx,cy)是成像平面的中心点在像素坐标系中的坐标。
本发明的进一步改进在于:步骤3中,对双目图像进行立体校正具体为:
其中,(u,v)是图像上的原坐标,(u’,v’)是图像原校正后的坐标,r为变量,且r2=u2+v2。
本发明的有益的技术效果是:
本发明通过利用YOLOv5s网络对图像上感兴趣的行人区域进行裁剪,后续只针对与裁剪图像处理有效缩短了算法计算时间;
本发明提出融合目标边缘检测和尺度不变特征来进行双目图像特征点的检测与描述,实现了对特征点的检测与过滤,保证了所匹配的点绝大多数来自于所定位给的人员,为后续的目标定位提供稳定的视差;
本发明将提出的一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法配合所搭建的双目视觉实验台使用,有效地完成了人员目标的识别与定位,具有较好的鲁棒性。
附图说明
图1为本发明人员识别定位方法的流程图。
图2为本发明深度学习卷积神经网络YOLOv5s网络结构示意图。
图3为本发明双目立体几何模型。
图4为本发明双目立体视觉视差定位原理图。
图5为本发明人员识别定位方法在RANSAC算法进行二次过滤后输出的双目图像及配对的特征点的局部放大图。
图6为本发明人员识别定位方法在实测深度为8m处的人员定位测试结果图。
具体实施方式
以下将以图式揭露本发明的实施方式,为明确说明起见,许多实务上的细节将在以下叙述中一并说明。然而,应了解到,这些实务上的细节不应用以限制本发明。也就是说,在本发明的部分实施方式中,这些实务上的细节是非必要的。
针对实际场景采集的图像,直接进行处理,原始算法耗时长、无法准确获取双目图像上人员所在位置的视差进而难以精确地定位人员的问题,本申请提供一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,通过使用目标检测算法YOLOv5s对校正后的图像进行目标检测,识别出感兴趣的目标区域,得到目标类别以及坐标;利用目标检测结果,对双目图像中的行人区域进行裁剪,得到仅包含行人的局部双目图像;然后使用边缘检测算法探测出裁剪图像中人员所在位置的边缘轮廓信息,获取二值图像;遍历左目、右目二值图像寻找白色边缘点像素坐标;再在边缘轮廓点像素坐标的基础上,构造符合SIFT特征点形式的关键点;再利用SIFT特征描述子、裁剪后的双目图像和构造的关键点,计算每个边缘关键点的128维特征描述符;然后使用KNN算法进行初始匹配,最后使用RANSAC算法对初始匹配好的点进行二次过滤,剔除误匹配点,以找到两幅图像中的匹配点,得到匹配点的像素坐标;在获得同一目标的多组特征点对的像素坐标和多个视差值后,对视差值进行均值计算,用视差均值作为目标的视差值;最后利用视差均值以及标定参数得到的重投影矩阵,使用三角测量原理计算出人员目标与左目相机的空间位置,从而实现了目标检测和定位的整体功能。
实施例一
如图1所示,本发明是一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,具体计算步骤如下:
步骤1,获取双目摄像头采集的图像数据;
步骤2,对双目相机进行标定,获取双目相机的标定参数,其中,标定参数包括左摄像头和右摄像头的内参、外参和畸变参数。其中相机标定的实现方法为:
使用一块37×36的棋盘格标定板,每个棋盘格的大小为5mm×5mm,精度为±0.01mm。利用双目相机采集棋盘格标定板不同位姿的10-20对图像,使用MATLAB的标定工具箱stereoCameraCalibrator进行标定,然后可得双目相机的内参矩阵M、外参矩阵R与T、径向畸变系数k1、k2、k3与切向畸变系数p1、p2;
步骤3,对双目图像进行立体校正,消除图像之间的畸变,使得左右图像在水平方向上对齐。其中立体校正的实现方法为:
其中,(u,v)是图像上的原坐标,(u’,v’)是图像原校正后的坐标,r为变量,且r2=u2+v2。
步骤4:使用目标检测算法YOLOv5s对校正后的图像进行目标检测,识别出感兴趣的目标区域,得到目标类别以及坐标。其中,使用目标检测算法YOLOv5s识别与裁剪获得局部双目图像,包括:
步骤4.1:采用整合的PASCALVOC2007和PASCALVOC2012数据集作为YOLOv5s的训练数据集,总共21503张图像以及每张图像对应的XML格式的标签文件,将构建的数据集随机划分为训练集、验证集和测试集,比例为3:1:1。
步骤4.2:利用Pytorch框架搭建好YOLOv5s网络模型,设置好对应的网络训练参数,包括模型设置、训练设置、验证设置和测试设置;
步骤4.3:设置完成后,加载开源的预训练权重初始化模型,并使用GPU开始训练,训练完成之后,得到在验证集中最优的权重文件以及YOLOv5s目标检测网络模型。如图2所示,所述YOLOv5s网络模型由输入、骨干(Backbone)、颈部(Neck)和检测头(Head)四部分组成。
步骤4.4:将经过进行立体校正过后的左目图像、右目图像各自输入到训练好的目标检测网络中,输出物体识别的信息,包括物体的类别和检测框的位置信息。
步骤5:利用Python中的切片操作,对步骤4中目标检测类别为person的感兴趣区域,根据边界框的坐标,对其进裁剪,得到仅包含行人的局部双目图像Image_Left、Image_Right。
步骤6:使用二维高斯核函数为的高斯滤波器对输入图像进行平滑滤波去除噪声,其中(x,y)是坐标,σ是标准差;
步骤7:采用卷积模板为和/>的Sobel滤波器(水平x和垂直y方向)在计算梯度和方向;
步骤8:采用4个方向0°、45°、90°、135°模板对梯度幅值进行非极大值抑制;
步骤9:根据经验值设置两个阈值Tmin=100和Tmax=200,用双阈值算法检测边缘,获取二值图像Edge_Left、Edge_Right;
步骤10:遍历二值图像Edge_Left、Edge_Right寻找白色边缘点坐标Points_Left、Points_Right;
步骤11:根据双目图像边缘点Points_Left、Points_Right,分别构造关键点KeyPoints_Left、KeyPoints_Right;
步骤12:分别结合左目图像的处理数据Image_Left、KeyPoints_Left和右目图像的处理数据Image_Right、KeyPoints_Right对每个关键点KeyPoint生成128维的SIFT特征描述description=(a1,a2,…,a128);
步骤13:使用KNN(k-nearest neighbor)算法进行初始匹配,将近邻点个数k设置为2,并将最近邻点和次近邻点的距离比对应的阈值设置为0.75,计算左目图像的每个局部特征点在右目图像的特征点集中的最邻近匹配;
步骤14:采用RANSAC(random sample consensus)算法对初始匹配好的点进行二次过滤。如图5所示,
具体的为在深度Z方向信息为4m、5m两组近景以及11m、12m两组远景图像上结果的局部放大图,(a)为4m处,(b)为5m处,(c)为11m处,(d)为12m处;从图中可以看出,融合目标边缘检测和尺度不变特征变换的处理方式保证了所匹配的点绝大多数来自于所定位的人员,且在多组数据上都有效,表明该算法具有较好的鲁棒性。
步骤15:输出双目图像及配对的特征点坐标。
以图6为例,实测深度为8m,经过RANSAC过滤后的匹配点有800对,部分特征点坐标列举如下:
序号 | 左目图像特征点坐标 | 右目图像特征点坐标 |
0 | (1149.0,680.0) | (1124.0,688.0) |
1 | (1151.0,680.0) | (1125.0,688.0) |
2 | (1152.0,680.0) | (1126.0,688.0) |
3 | (1153.0,680.0) | (1127.0,688.0) |
4 | (1148.0,681.0) | (1122.0,689.0) |
… | … | … |
797 | (1128.0,1229.0) | (1102.0,1238.0) |
798 | (1183.0,1229.0) | (1158.0,1238.0) |
799 | (1185.0,1229.0) | (1159.0,1238.0) |
步骤16:计算已匹配特征点的视差并取均值作为目标的视差。如图4所示的原理图,在获取到准确的视差及标定参数后,利用三角测量原理计算中图像中的目标相对于左相机在实际空间中的三维坐标。首先是获取每一对匹配特征点处的视差;然后,在获取多对匹配特征点之后,使用多对匹配点的视差均值来代替人员目标位置处的视差值,这种处理方式避免使用单一特征点对获取视差导致最后定位结果波动较大的情况。
定义已匹配的双目图像特征点的坐标分别为(xL1,yL1)与(xR1,yR1)、(xL2,yL2)与(xR2,yR2)、…、(xLn,yLn)与(xRn,yRn),则这一组特征点的视差可表示为:
di=xLi-xRi,i=1,2,...,n
其中n是匹配的特征点对的数量,xLi、xRi分别为已匹配的第i对特征点在左目像素坐标系、左目像素坐标系的横坐标。
要计算目标位置处的视差,将匹配的多对视差值取均值作为人员目标位置处的视差:
其中Davg表示人员目标位置处的平均视差,n是匹配的特征点对的数量,di为第i对特征点处的视差。
步骤17:通过视差及标定参数得到的重投影矩阵,利用三角测量原理计算中图像中的目标在实际空间中的三维坐标。所述利用三角测量原理计算中图像中的目标在实际空间中的三维坐标的实现方法为:
其中,基线B是双目相机光心之间的实际物理距离,通过步骤2中获取的外参矩阵T获取;f为相机的焦距,通过内参矩阵R获取;xl、xr分别表示Pl、Pr在各自坐标系上x轴方向上的像素距离;xl与xr的差值即为视差d;(cx,cy)是成像平面的中心点在像素坐标系中的坐标。
如图6所示,目标检测出来物体类别为person的置信度为0.87,算法计算出来的目标人员相对于左相机的空间位置坐标X,Y,Z为-0.10m,-0.22m,7.71m,而通过人工方法测量到的实际三维坐标为0,-0.10m,8.00m,故此组数据在深度Z方向的误差为3.63%。
实验结果表明,本发明可以有效缩短算法的处理时间,并能提取到更多的来自于人员目标身上的特征点,可获取到稳定且准确的视差信息,配合所搭建的双目视觉实验台使用,有效地完成了人员目标的识别与定位,并具有较好的鲁棒性。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本申请的保护范围之内。
Claims (8)
1.一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,其特征在于:所述人员识别定位方法包括如下步骤:
步骤1、获取双目相机采集的图像数据;
步骤2、对双目相机进行标定,获取双目相机的标定参数,得到双目图像,其中,标定参数包括左摄像头和右摄像头的内参、外参和畸变参数;
步骤3、对双目图像进行立体校正,消除双目图像之间的畸变,使得双目图像中的左目图像、右目图像在水平方向上对齐;
步骤4、使用目标检测算法YOLOv5s对步骤3校正后的双目图像进行目标检测,识别出感兴趣的目标区域,得到目标类别以及坐标;
步骤5、根据步骤4的目标检测结果,对双目图像中的行人区域进行裁剪,得到仅包含行人的局部双目图像Image_Left、Image_Right;
步骤6、用双阈值算法检测双目图像的边缘,获取二值图像Edge_Left、Edge_Right;
步骤7、遍历步骤6获取的二值图像Edge_Left、Edge_Right寻找双目图像的白色边缘点坐标Points_Left、Points_Right;
步骤8、根据双目图像边缘点Points_Left、Points_Right,分别构造关键点KeyPoints_Left、KeyPoints_Right;
步骤9、分别结合左目图像的处理数据Image_Left、KeyPoints_Left和右目图像的处理数据Image_Right、KeyPoints_Right对每个边缘关键点KeyPoint生成128维的SIFT特征描述description=(a1,a2,…,a128);
步骤10、使用KNN算法进行初始匹配,将近邻点个数k设置为2,并将最近邻点和次近邻点的距离比对应的阈值设置为0.75,计算左目图像的每个局部特征点在右目图像的特征点集中的最邻近匹配;
步骤11、采用RANSAC算法对初始匹配好的点进行二次过滤;
步骤12、输出双目图像及配对的特征点坐标;
步骤13、计算已匹配特征点的视差并取均值作为目标的视差;
步骤14、通过视差及标定参数得到的重投影矩阵,利用三角测量原理计算中图像中的目标在实际空间中的三维坐标,其中:
所述步骤13计算已匹配特征点的视差并取均值作为目标的视差包括两部分:首先是获取每一对匹配特征点处的视差;然后,在获取多对匹配特征点之后,使用多对匹配点的视差均值来代替人员目标位置处的视差值,具体包括如下步骤:
步骤13.1、定义已匹配的双目图像特征点的坐标分别为(xL1,yL1)与(xR1,yR1)、(xL2,yL2)与(xR2,yR2)、…、(xLn,yLn)与(xRn,yRn),则这一组特征点的视差表示为:
di=xLi-xRi,i=1,2,...,n
其中n是匹配的特征点对的数量,xLi、xRi分别为已匹配的第i对特征点在左目像素坐标系、左目像素坐标系的横坐标;
步骤13.2将匹配的多对视差值取均值作为人员目标位置处的视差:
其中Davg表示人员目标位置处的平均视差,n是匹配的特征点对的数量,di为第i对特征点处的视差。
2.根据权利要求1所述的一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,其特征在于:所述步骤2中,对双目相机进行标定,包括:
使用一块37×36的棋盘格标定板,每个棋盘格的大小为5mm×5mm,精度为±0.01mm,利用双目相机采集所述棋盘格标定板不同位姿的10-20对图像,使用MATLAB的标定工具箱Stereo Camera Calibrator进行标定,然后得双目相机的内参矩阵M、外参矩阵R与T、径向畸变系数k1、k2、k3与切向畸变系数p1、p2。
3.根据权利要求1所述的一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,其特征在于:所述步骤4中,使用目标检测算法YOLOv5s对校正后的双目图像进行目标检测,识别出感兴趣的目标区域,得到目标类别以及坐标,具体包括如下步骤:
步骤4.1、采用整合的PASCAL VOC2007和PASCAL VOC2012数据集作为YOLOv5s的训练数据集,总共21503张图像以及每张图像对应的XML格式的标签文件,将构建的训练数据集随机划分为训练集、验证集和测试集,比例为3:1:1;
步骤4.2:、利用Pytorch框架搭建好YOLOv5s网络模型,设置好对应的网络训练参数,网络训练参数包括模型设置、训练设置、验证设置和测试设置;
步骤4.3、设置完成后,加载开源的预训练权重初始化模型,并使用GPU开始训练,训练完成之后,得到在验证集中最优的权重文件以及YOLOv5s目标检测网络模型;
步骤4.4、将经过进行立体校正过后的左目图像、右目图像各自输入到训练好的目标检测网络中,输出物体识别的信息,包括物体的类别和检测框的位置信息。
4.根据权利要求3所述的一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,其特征在于:在所述步骤4.2中,所述YOLOv5s网络模型由输入、骨干、颈部和检测头四部分组成。
5.根据权利要求1所述的一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,其特征在于:所述步骤5中,根据目标检测结果,对双目图像中的行人区域进行裁剪,具体为:利用Python中的切片操作,对步骤4中目标检测类别为person的感兴趣区域,根据边界框的坐标,对其进裁剪。
6.根据权利要求1所述的一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,其特征在于:所述步骤6具体包括如下步骤:
步骤6.1、使用二维高斯核函数为的高斯滤波器对输入图像进行平滑滤波去除噪声,其中(x,y)是坐标,σ是标准差;
步骤6.2、采用卷积模板为和/>的Sobel滤波器计算双目图像的梯度和方向,其中x代表水平方向,y代表垂直方向;
步骤6.3、采用4个方向0°、45°、90°、135°卷积模板对梯度幅值进行非极大值抑制;
步骤6.4、设置两个阈值Tmin=100和Tmax=200,用双阈值算法检测边缘,获取二值图像Edge_Left、Edge_Right。
7.根据权利要求1所述的一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,其特征在于:所述步骤14中,通过视差及标定参数得到的重投影矩阵,利用三角测量原理计算中图像中的目标在实际空间中的三维坐标,包括:
其中,基线B是双目相机光心之间的实际物理距离,通过步骤2中获取的外参矩阵T获取;f为相机的焦距,通过内参矩阵R获取;xl、xr分别表示Pl、Pr在各自坐标系上x轴方向上的像素距离;xl与xr的差值即为视差d;(cx,cy)是成像平面的中心点在像素坐标系中的坐标。
8.根据权利要求1-7任一项所述的一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法,其特征在于:所述步骤3中,对双目图像进行立体校正具体为:
其中,(u,v)是图像上的原坐标,(u’,v’)是图像原校正后的坐标,r为变量,且r2=u2+v2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310899387.8A CN116883945B (zh) | 2023-07-21 | 2023-07-21 | 一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310899387.8A CN116883945B (zh) | 2023-07-21 | 2023-07-21 | 一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116883945A CN116883945A (zh) | 2023-10-13 |
CN116883945B true CN116883945B (zh) | 2024-02-06 |
Family
ID=88261871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310899387.8A Active CN116883945B (zh) | 2023-07-21 | 2023-07-21 | 一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116883945B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117743955A (zh) * | 2023-12-21 | 2024-03-22 | 广东人信工程咨询有限公司 | 一种bim的采集数据处理方法、系统、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182705A (zh) * | 2016-12-08 | 2018-06-19 | 广州映博智能科技有限公司 | 一种基于机器视觉的三维坐标定位方法 |
CN111062990A (zh) * | 2019-12-13 | 2020-04-24 | 哈尔滨工程大学 | 一种面向水下机器人目标抓取的双目视觉定位方法 |
WO2020172783A1 (zh) * | 2019-02-26 | 2020-09-03 | 武汉资联虹康科技股份有限公司 | 一种用于经颅磁刺激诊疗的人头姿态跟踪系统 |
CN114067197A (zh) * | 2021-11-17 | 2022-02-18 | 河南大学 | 一种基于目标检测及双目视觉的管道缺陷识别与定位方法 |
CN114638898A (zh) * | 2022-05-23 | 2022-06-17 | 中国人民解放军国防科技大学 | 一种小型飞行目标检测方法和装置 |
CN116279592A (zh) * | 2023-04-26 | 2023-06-23 | 浙江科技学院 | 一种用于无人物流车的可行驶区域划分方法 |
-
2023
- 2023-07-21 CN CN202310899387.8A patent/CN116883945B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182705A (zh) * | 2016-12-08 | 2018-06-19 | 广州映博智能科技有限公司 | 一种基于机器视觉的三维坐标定位方法 |
WO2020172783A1 (zh) * | 2019-02-26 | 2020-09-03 | 武汉资联虹康科技股份有限公司 | 一种用于经颅磁刺激诊疗的人头姿态跟踪系统 |
CN111062990A (zh) * | 2019-12-13 | 2020-04-24 | 哈尔滨工程大学 | 一种面向水下机器人目标抓取的双目视觉定位方法 |
CN114067197A (zh) * | 2021-11-17 | 2022-02-18 | 河南大学 | 一种基于目标检测及双目视觉的管道缺陷识别与定位方法 |
CN114638898A (zh) * | 2022-05-23 | 2022-06-17 | 中国人民解放军国防科技大学 | 一种小型飞行目标检测方法和装置 |
CN116279592A (zh) * | 2023-04-26 | 2023-06-23 | 浙江科技学院 | 一种用于无人物流车的可行驶区域划分方法 |
Non-Patent Citations (2)
Title |
---|
基于实例分割的双目特征点匹配目标识别和定位研究;李山坤;陈立伟;李爽;;无线电工程(第02期);全文 * |
李山坤 ; 陈立伟 ; 李爽 ; .基于实例分割的双目特征点匹配目标识别和定位研究.无线电工程.2020,(第02期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN116883945A (zh) | 2023-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6091560B2 (ja) | 画像解析方法 | |
CN102236794B (zh) | 3d场景中3d对象的识别和姿态确定 | |
CN111723721A (zh) | 基于rgb-d的三维目标检测方法、系统及装置 | |
CN102855459B (zh) | 用于特定前景物体的检测验证的方法和系统 | |
CN107392929B (zh) | 一种基于人眼视觉模型的智能化目标检测及尺寸测量方法 | |
CN104268853A (zh) | 一种红外图像与可见光图像配准方法 | |
CN108335331A (zh) | 一种钢卷双目视觉定位方法及设备 | |
KR102073468B1 (ko) | 비전 시스템에서 컬러 이미지에 대해 컬러 후보 포즈들의 점수화를 위한 시스템 및 방법 | |
CN110363803B (zh) | 一种结合深度图切片和神经网络的目标检测方法和系统 | |
CN109816051B (zh) | 一种危化品货物特征点匹配方法及系统 | |
CN116883945B (zh) | 一种融合目标边缘检测和尺度不变特征变换的人员识别定位方法 | |
CN112528781B (zh) | 一种障碍物检测方法、装置、设备和计算机可读存储介质 | |
CN112683228A (zh) | 单目相机测距方法及装置 | |
CN117292076A (zh) | 工程机械局部作业场景动态三维重构方法及系统 | |
CN109993107B (zh) | 一种基于非迭代k均值算法的移动机器人障碍物视觉检测方法 | |
CN106709432B (zh) | 基于双目立体视觉的人头检测计数方法 | |
CN111462310A (zh) | 一种基于多视几何的螺栓缺陷空间定位方法 | |
CN114511608A (zh) | 一种深度图像的获取方法、装置、终端、成像系统和介质 | |
CN104573635B (zh) | 一种基于三维重建的微小高度识别方法 | |
Gao et al. | Improved binocular localization of kiwifruit in orchard based on fruit and calyx detection using YOLOv5x for robotic picking | |
Hu et al. | Method for detecting micron cracks on a magnetic rotor surface based on a support vector machine | |
Ying et al. | Technique of measuring leading vehicle distance based on digital image processing theory | |
Sun et al. | A vision system based on TOF 3D imaging technology applied to robotic citrus harvesting | |
Guo et al. | A system and method for person identification and positioning incorporating object edge detection and scale-invariant feature transformation | |
WO2015136716A1 (ja) | 画像処理装置、画像センサ、画像処理方法 |
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 |