CN110991227B - 一种基于深度类残差网络的三维物体识别和定位方法 - Google Patents
一种基于深度类残差网络的三维物体识别和定位方法 Download PDFInfo
- Publication number
- CN110991227B CN110991227B CN201911010487.0A CN201911010487A CN110991227B CN 110991227 B CN110991227 B CN 110991227B CN 201911010487 A CN201911010487 A CN 201911010487A CN 110991227 B CN110991227 B CN 110991227B
- Authority
- CN
- China
- Prior art keywords
- centroid
- point cloud
- sample
- coordinate system
- network
- 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 35
- 238000012549 training Methods 0.000 claims abstract description 32
- 238000012545 processing Methods 0.000 claims abstract description 16
- 238000010606 normalization Methods 0.000 claims abstract description 11
- 238000004519 manufacturing process Methods 0.000 claims abstract description 6
- 238000005070 sampling Methods 0.000 claims description 16
- 239000011159 matrix material Substances 0.000 claims description 15
- 238000012795 verification Methods 0.000 claims description 13
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 238000005516 engineering process Methods 0.000 claims description 7
- 230000004927 fusion Effects 0.000 claims description 6
- 238000013519 translation Methods 0.000 claims description 6
- 238000007781 pre-processing Methods 0.000 claims description 5
- 238000011176 pooling Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 3
- 238000003062 neural network model Methods 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 238000010200 validation analysis Methods 0.000 claims description 2
- 230000004807 localization Effects 0.000 claims 2
- 230000008569 process Effects 0.000 abstract description 5
- 238000002372 labelling Methods 0.000 abstract description 2
- 238000004088 simulation Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000000605 extraction Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 230000006798 recombination Effects 0.000 description 2
- 238000005215 recombination Methods 0.000 description 2
- 230000008521 reorganization Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- RTAQQCXQSZGOHL-UHFFFAOYSA-N Titanium Chemical compound [Ti] RTAQQCXQSZGOHL-UHFFFAOYSA-N 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 239000003599 detergent Substances 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- 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)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于深度类残差网络的三维物体识别和定位方法,所述方法采用三维模型构建模块、模拟数据集制作模块、网络训练模块以及网络运用模块。该方法可自行建立所需目标物体的三维模型,在不限制物体种类和单角度采集点云数据的前提下,快捷、批量地制作需要的目标物体的模拟数据集用于训练,避免了人工处理和标注的繁杂过程。经过单位球归一化等数据处理后,引入深度类残差网络,在学习好目标物体全局特征的同时更好地捕获局部特征信息,在真实环境中实现目标物体的类别和位置返回且能有效地满足实际应用的需求。这种接近原始数据的点云与深度类残差网络结合的三维物体识别和定位方法,具有精度高、速度快、鲁棒性强等特点。
Description
技术领域
本发明属于计算机视觉领域,具体涉及一种基于深度类残差网络的三维物体识别和定位方法。
背景技术
随着科技的发展和人们对三维世界感知能力的需求,三维物体识别技术在很多现实应用中发挥着至关重要的作用,如机器人抓取与操控、自动导航、增强现实等。事实上,三维数据所包含的信息要比二维图像更丰富,加上廉价RGB-D传感器的出现便捷了三维数据的获取,这些都推动了三维识别技术的进一步发展。
传统的方法依赖于手动的特征提取、繁杂的步骤、固定的匹配程序或较高的计算复杂度等,限制了它们的识别种类、识别精确度、推理的快速性及光照变化环境下的表现等。目前,深度神经网络与视觉识别相结合,有利推动了一系列端对端的三维点云处理方法的发展。这些方法都是在公开数据集进行验证,数据集基本是对物体的整个三维模型进行采样的,然而,现实中深度相机只能获取单个角度下的点云数据,因此,在不限制在物体种类和单角度采集点云数据的前提下,如何快捷、批量地制作需要的目标物体数据集并进行相应的数据空间预处理和较好的局部特征提取的网络训练,最终实现真实环境下目标物体的类别和位置返回且能有效地满足实际应用的需求,是一个比较麻烦的问题。
发明内容
为了解决上述背景技术中提出的问题,本发明的目的在于提供一种基于原始点云的表达形式且具有操作便捷、速度快、精度高、鲁棒性强等特点的三维物体识别和定位方法。
本发明为实现上述目的,所采取的技术方案是:一种深度类残差网络的三维物体识别和定位方法,该方法可自行建立目标物体的三维模型,采用虚拟环境对目标物体的虚拟点云数进行采集和预处理用于类残差网络模型的训练,最终在真实环境中实现物体的类别和位置的返回。
所述的方法中采用三维模型构建模块、虚拟数据集制作模块、网络训练模块以及网络运用模块;其中,三维模型构建模块自行建立所需目标物体的三维模型;虚拟数据集制作模块对目标物体的点云数据进行批量采集和预处理,操作方式简便快捷;网络训练模块引入深度类残差网络,更好地捕获局部特征信息;最终,采集来的虚拟数据训练神经网络模型,在真实环境中使用并最终返回目标物体的类别和位置。
一种基于深度类残差网络的三维物体识别和定位方法,其具体的步骤如下:
步骤1:确定目标物体的类别和数量,通过软件或设备建立目标物体的三维模型。
进一步地,上述步骤1中,所述的目标物体为常见的小物体,长宽高均在30cm以内;构建三维模型的设备是三维立体扫描仪,此外,软件使用三维设计软件,也可在公开资源的三维模型中寻找所需的模型;所述目标物体的三维模型为CAD模型,可保存为需要的文件格式。
步骤2:将步骤1中建立的目标物体的三维模型导入到虚拟环境中,通过调整虚拟深度相机的位置,采集目标物体在不同角度下的表面点云数据,并保存到带有目标物体所对应的标签命名文件中,每个角度对应一个点云文件,即一个样本。
进一步地,步骤2具体包括以下步骤:
步骤2.1:将步骤1中保存的目标物体的三维模型导入到虚拟环境中,通过平移和旋转将三维模型放置虚拟环境中的原点位置;
步骤2.2:调用虚拟环境下虚拟深度相机的API接口,设置虚拟环境的坐标原点O与虚拟深度相机S之间的距离OS,同时将采用的虚拟深度相机的初始位置放置在目标物体的正上方;
步骤2.3:通过控制方位角θ(OS与z轴正向的夹角)、仰角(从正z轴看自x轴按逆时针方向转到OP所转过的角度,其中P为点S在xoy平面上的投影)来控制虚拟深度相机的位置,从而采集不同角度下的点云图像,并以带有目标物体所对应的标签命名文件,每个角度对应一个点云文件,即一个样本;上述的虚拟深度相机的位置的表达方式要从球坐标系向直角坐标系(x,y,z)转换,转换关系如下:
步骤3:设置要采样的点云数,针对每个样本数据进行批量处理,在去除不符合要求的样本的同时,求出每个样本的质心并对样本数据做特定的归一化处理。
进一步地,步骤3具体包括以下步骤:
步骤3.1:设置每个样本需要采样的点云数目N,删除包含的点云数少于N/2的样本文件;
步骤3.2:当单个样本中的点云数与所需采样的点云数不一致时,采用FPS技术对该样本中的点云上采样或下采样至设置的数目;
步骤3.3:针对每个样本文件,就其采样完的数据做归一化处理,让每个样本中采样后的点云数据归一化到一个单位球体中;
步骤3.3.1:计算每个样本文件中的N个点云的质心,其坐标为N个点云x、y、z各个坐标的平均值,具体公式如下:
其中,xi、yi、zi代表某个样本中第i个点云的位置信息,xCentroid、yCentroid、zCentroid代表该样本中N个点云的质心的位置信息;
步骤3.3.2:求出每个样本中的每个点云与其质心之间的距离,并取最大的距离作为单位球体的半径,具体公式如下:
r=max(li) (4)
其中,li代表该样本中第i个点云与质心的距离,r代表该样本数据单位归一化后的球的半径,取值为该样本中N个点云中相对质心的距离的最大值;
步骤3.3.3:对每个样本中的点云进行归一化至单位球中,计算每个点云的坐标信息在各个轴方向所占的半径的尺寸,具体公式如下:
其中,xi_new、yi_new、zi_new代表归一化后该样本中第i个点云分别在x、y、z各个轴方向占单位球半径的比例值,该值有正负方向的区别,其数值区间为[-1,1];xCentroid、yCentroid、zCentroid为该样本在步骤3.3.1中求得的质心坐标,r为其在步骤3.3.2中求得的单位球的半径。
步骤4:对样本进行批量处理,使其对应的标签信息,连同三维数据信息一起保存,至此训练集的制作完成;按照确定的训练集和验证集的比例,重复之前的步骤,再制作验证集。
进一步地,步骤4中包括以下具体步骤:
步骤4.1:读取每个样本文件中的数据及其在步骤2中置于文件名中的标签信息,再通过相应的数据类型的转换,最终一起保存成统一的数据格式,作为训练集,便于读取;
步骤4.2:根据设置的训练集和验证集的比例,设置制作训练时虚拟深度相机的方位角和仰角的区间和每次旋转的角度,按照步骤1-4.1制作最终的验证集;且训练集和验证集之间无交叉样本的情况。
步骤5:采用深度类残差网络,将虚拟的训练集和验证集的点云数据喂入网络中,通过网络的迭代优化获得到较好的网络模型;
进一步地,步骤5包括以下具体步骤:
步骤5.1:引入深度类残差网络,加强邻近点之间的相互学习,提高网络模型局部特征的提取能力,用于训练目标物体;
步骤5.2:将步骤1-4中制作的模拟数据集(训练集和验证集)喂入网络中,设置和微调网络参数,如批量样本数batch,整体迭代的轮数epoch,学习效率learnrate等等,在网络迭代训练的同时,观察网络精确度和损失函数,最终选择效果较好的网络模型。
进一步地,在步骤5中,所述的深度类残差网络是针对PointNet++进行改进的可用于基于无序点云的三维物体识别网络,即MAS结构,其包括采样层、重组层、R3Block层和最大池化层,所述采样层用于选择固定数量的点云作为局部区域的质心,所述重组层用于查找质心的相邻点并执行进一步的特征融合,所述R3Block层用于替换基于MLP的迷你PointNet层,以对局部特征进行编码,所述最大池化层用于降低特征维数和更深一层的特征融合。
步骤6:在真实场景中,采用真实深度相机采集目标物体的点云数据,放入训练好的网络模型中,最终返回该物体的类别和位置信息。
进一步地,步骤6包括以下具体步骤:
步骤6.1:为了进一步验证步骤1-4的模拟数据采集方式的正确性及步骤5训练的网络的实际应用效果,在真实场景中,通过真实深度相机采集某个目标物体在某个角度下的点云数据;对采集来的点云数据稍作处理,如滤波,去背景等,并保存到带有该目标物体所对应的标签命名文件中;
步骤6.2:对该文件中的数据进行步骤3-4.1的处理,最终返回该目标物体所对应的类别信息及其位置信息,这里的位置信息是该文件中点云数据的质心的位置信息(相机坐标系下的),计算方法如步骤3所示;
步骤6.3:通过相机标定技术,将质心位置信息的表达由相机坐标系向世界坐标系转换,转换关系如下:
其中,为真实深度相机的外部参数矩阵,R为3×3的旋转矩阵,t为3×1的平移矩阵,R、t可由相机标定获得;(xCentroid_c,yCentroid_c,zCentroid_c)为质心在相机坐标系下的坐标,(xCentroid_w,yCentroid_w,zCentroid_w)为质心在世界坐标系下的坐标;
步骤6.4:标定板置于基坐标系的同一水平面,将质心的世界坐标系转化为机器人基坐标系下,选取标定板上的任意两点,即任意两世界坐标系下的点,查看机器人坐标,确定机器人基坐标系的方向及其与世界坐标系在x坐标与y坐标上的偏移量Δx、Δy,至此机器人基坐标系与世界坐标系的转换关系如下:
其中,(xCentroid_r,yCentroid_r,zCentroid_r)为质心在机器人基坐标系下的坐标;让机械臂基于该位置坐标抓取目标物体。
本发明具有以下优点及有益效果:
1.提出的基于深度神经网络对单个角度采集的点云数据进行识别的方法,更贴近现实的需求且不限制目标物体的种类;
2.提出的在虚拟环境下采集目标物体的点云数据,并批量处理生成数据集的方式操作快捷简便,避免人工处理和标注的繁杂过程;
3.提出纯虚拟数据用于深度点云神经网络训练,并在于真实环境的三维物体识别和定位的方法切实可行。
4.引入类残差模块,提高网络模型局部特征的提取能力,具有精度高、速度快、鲁棒性强等特点。
附图说明
图1:三维物体识别和定位方法的整体结构图;
图2:单个样本中数据归一化后的效果图;
图3:Loss曲线图;
图4:准确率曲线图;
图5:MSA的结构图;
图6:R3Block的结构图。
具体实施方式
下面结合附图及实施方式对本发明法做进一步的详细说明。
本发明提出了一种结合点云数据和深度神经网络的三维物体识别和定位方法。如图1所示,该方法的整体结构包括三维模型构建模块、虚拟数据集制作模块、网络训练模块以及网络应用模块。其中,虚拟数据集制作模块主要包括虚拟数据的采集和预处理(归一化处理)两个部分,操作方式简便快捷。
实施例
构建目标物体的三维模型的方式有很多种,如在公开资源中搜索模型,使用AutoCAD等软件设计三维模型等,本发明主要采用激光扫描仪的方式构建目标物体的三维模型。本发明中的目标物体为常见小物体,长宽高均在30cm以内,如工件、可乐罐、洗洁精瓶等,此处以一种工件为例。通过激光重复扫描工件的表面而获得空间三维点云数据,与此同时扫描来的点云数据会在相应的软件画面中配准。通过简单地删除多余点云,即可获得最终所需要的点云的三维CAD模型,并保存为所需的格式,如stl格式。
基于虚拟的环境采集点云数据。先将存储格式为stl的工件模型导入虚拟环境下,该环境是有虚拟坐标系的。为了便于之后的数据采集,需要通过旋转和平移将工件的三维模型调到虚拟环境中的原点位置。调用虚拟环境下的Kinect v1深度相机的接口采集工件某个角度下的点云数据。
Kinect v1深度相机是美国微软公司在2012年发售的一款视觉传感器。它采用光编码技术读取投射的红外线图,通过图的变形来取得深度信息。此外还搭载了彩色摄像头,可以更好地获取周围环境的信息。Kinect v1深度相机的配置参数如下表1所示。
表1Kinect v1深度相机的配置参数
接着,设置虚拟环境的坐标原点O与深度相机S之间的距离OS,将采用的虚拟深度相机的初始位置放置在物体的正上方。通过控制深度相机在虚拟环境坐标系下的方位角θ和仰角来控制虚拟深度相机的位置,从而采集不同角度下的点云数据构成训练集和验证集。每个角度对应一个点云文件,即一个样本,文件命包含该文件中物体类别的信息;球半径r,即OS的区间为[0.8,1.2],设置要采样的点云数为1024。
对于训练数据的采集过程,在方位角θ的迭代过程中嵌入仰角迭代的过程,其变化规律为:方位角θ:(0,76,5),即θ的角度区间是[0,76),步长为5度角;仰角/>(0,361,10),即/>的角度区间是[0,361),步长为10度角;首先采用公式(1)将深度相机在虚拟环境下的球坐标系的表达形式/>转化为直角坐标系的表达形式并调用虚拟深度相机进行数据采集;查找点云数少于512的样本文件进行删除,对单个样本中的点云数据实现上采样或下采样至固定的点数1024;接着通过公式(2)、(3)、(4)对每个样本实现批量数据归一化使其数值区间均为[-1,1],求出每个样本中的质心(xCentroid,yCentroid,zCentroid)和每个点云归一化的结果(xi_new,yi_new,zi_new),必要的话实现虚拟深度相机坐标数据之间的转换;如图2所示,为某个样本中点云数据归一化后的效果图。最后将每个样本中的数据及其对应的标签类别存入hdf5文件中构成训练集,便于网络训练。
对于验证数据的采集和预处理过程与虚拟训练数据大体相同,不同的是,其变化规律为:方位角θ:(0,67,11),即θ的角度区间是[0,67),步长为11度角;仰角即/>的角度区间是[0,323),步长为14度角;除了删除点云数少于512的文件,还要删除训练集和验证集中存在交叉情况的个别样本,以免影响网络模型的训练结果。
网络训练部分,采用深度类残差网络,该网络是针对PointNet++进行改进的可用于基于无序点云的三维物体识别网络。该网络主要在PointNet++的setabstraction结构引进类残差模块,改进后称为MAS结构(modified set abstraction)。MAS结构作为网络框架的特征提取主干,由四大部分组成:采样层(Samplinglayer)、重组层(Recombinationlayer)、R3Block层和最大池化层(Maxpooling layer)。采样层负责选择固定数量的点云作为局部区域的质心,重组层负责查找质心的相邻点并执行进一步的特征融合。R3Block层(3D点云处理中的类残模块)用于替换基于MLP的迷你PointNet层,以对局部特征进行编码,而Maxpooling层用于降低特征维数和更深一层的特征融合。
图5为MSA结构图,假设每个MSA模块的输入点云{x1,x2,...,xn}表示为Q,其为B×N0×C0的矩阵。其中,B代表batch size,N0代表每个样本中的点云数量,C0代表通道数。首先,采样层通过最远点采样技术(FPS)在输入点云中选择N1个点作为质心,可能存在重复点。采样层的输出是Q0,其为B×N1×C0的矩阵。接着,重组层通过Ball Query的方式为每个质心选择邻近点,Ball Query找到位于查询点半径范围内的所有点,并将每个邻近点的坐标信息与C0个特征通道的信息融合在一起。重组层产生一个新的输出矩阵Q1,其大小为B×N1×K×C1。然后,R3Block层对输入点云进一步提取特征。在特征提取过程中质心与邻近点的数目不会发生变化,唯一改变的只是每个点对应的特征维度C1。最后,将Maxpooling层用作对称函数,在降低特征维数的同时融合邻近点云的信息。MSA模块的输出为Q3,其为B×N1×C2大小的矩阵。
图6为R3Block层的结构图,R3Block层是根据点云无序的特点以及借鉴ResNet瓶颈结构的思想和Googlenet Inception V3卷积核分解的思想而构建的一种类残差模块。采用1*3的卷积核对邻近点进行相互学习,再用1*3卷积核进一步学习局部特征。为了确保网络层之间的特征维度不变,两个卷积核为1*3的卷积层的填充方式均为“SAME”,步长stride设置为1。然后采用1*1的卷积核实现卷积层之间的升维操作,此处填充方式为“VAILD”,步长stride设置为1。1*1大小的卷积核不仅能减少参数数量,实现跨通道信息交互,还能在保持特征图尺寸不变的同时利用后接的非线性激活函数增强非线性特性,提高网络的表达能力。最后,借鉴ResNet瓶颈结构的思想,在模块的输入与输出间并联一个采用了1*1卷积核的卷积层,填充方式为“VAILD”,步长stride设置为1。引入类残差模块,加强邻近点之间的相互学习,能够在很好地提取目标物体全局特征的同时,更进一步地捕获局部特征信息,从而达到很好的物体识别效果。
训练过程中,虚拟训练集和虚拟验证集的比例约为4:1;网络训练平台的系统为ubuntu16.04,显卡为NVIDIA TITAN XP,优化方法为Adam,初始学习率设为0.001,每2000个step学习率衰减0.7,batch size设置为16,迭代的epoch为150次。图3为Loss曲线图,图4为准确率曲线图。最后,保存较好的网络模型。
为了进一步验证本发明中的数据采集方式的正确性及训练好的网络模型的应用效果,在真实的环境下进行机械臂的工件抓取实验。将标定板置于基坐标系的同一水平面,对深度相机Kinect进行标定,获得相机的外部参数矩阵其中R为3×3的旋转矩阵,t为3×1的平移矩阵,以此来获得相机坐标系与世界坐标系之间的关系。选取标定板上的任意两点,即任意两世界坐标系下的点,查看机器人坐标获得偏移量Δx、Δy,确定机器人基坐标系与世界坐标系的转换关系,以此来获得机器人基坐标系与相机坐标系之间的转换关系,从而便于之后计算质心在机器人基坐标系下的位置信息(xCentroid_r,yCentroid_r,zCentroid_r)。Kinect采集工件在某个角度下的点云数据。经过简单的滤波、分割去除背景和噪声,得到工件的点云数据;再进一步对数据预处理,得到质心点和归一化的数据。最终将归一化的结果喂入深度类残差网络中,调用网络模型,返回工件的类别,并返回工件的质心在机器人基坐标系下的位置信息用于抓取。
Claims (4)
1.一种基于深度类残差网络的三维物体识别和定位方法,其特征在于,所述的方法中采用三维模型构建模块、虚拟数据集制作模块、网络训练模块以及网络运用模块;其中,所述的三维模型构建模块自行建立所需目标物体的三维模型;所述的虚拟数据集制作模块对目标物体的点云数据进行批量采集和预处理;所述的网络训练模块中包含深度类残差网络,用于捕获局部特征信息;采集来的虚拟数据训练神经网络模型,并且在所述的网络运用模块中将在真实环境中使用并最终返回目标物体的类别和位置;
所述的方法包括如下步骤:
步骤1:确定目标物体的类别和数量,建立目标物体的三维模型;
步骤2:将目标物体的三维模型导入到虚拟环境中,通过控制方位角θ、仰角来调整虚拟深度相机的位置,以实现不同角度下的虚拟点云数据的采集,并保存到对应标签命名的文件中,每个角度对应一个点云文件,即一个样本;步骤2包括以下步骤:
步骤2.1:将步骤1中保存的目标物体的三维模型导入到虚拟环境中,通过平移和旋转将三维模型放置虚拟环境中的原点位置;
步骤2.2:调用虚拟环境下虚拟深度相机的API接口,设置虚拟环境的坐标原点O与虚拟深度相机S之间的距离OS,同时将采用的虚拟深度相机的初始位置放置在目标物体的正上方;
步骤2.3:通过控制方位角θ、仰角来控制虚拟深度相机的位置,采集不同角度下的点云图像,并以带有目标物体所对应的标签命名文件,每个角度对应一个点云文件,即一个样本;将上述的虚拟深度相机的位置的表达方式从球坐标系/>向直角坐标系(x,y,z)转换,转换关系如下:
步骤3:设置要采样的点云数,针对每个样本数据进行批量处理,在去除不符合要求的样本的同时进行FPS采样,求出每个样本的质心并对样本数据做特定的归一化处理;
步骤3包括以下步骤:
步骤3.1:设置每个样本需要采样的点云数目N,删除包含的点云数少于N/2的样本文件;
步骤3.2:当单个样本中的点云数与所需采样的点云数不一致时,采用FPS方法对该样本中的点云上采样或下采样至设置的数目;
步骤3.3:针对每个样本文件,对其采样完的数据做归一化处理,让每个样本中采样后的点云数据归一化到一个单位球体中;
步骤3.3.1:计算每个样本文件中的N个点云的质心,其坐标为N个点云x、y、z各个坐标的平均值,公式如下:
其中,xi、yi、zi代表某个样本中第i个点云的位置信息,xCentroid、yCentroid、zCentroid代表该样本中N个点云的质心的位置信息;
步骤3.3.2:求出每个样本中的每个点云与其质心之间的距离,
并取最大的距离作为单位球体的半径,公式如下:
r=max(li) (4)
其中,li代表该样本中第i个点云与质心的距离,r代表该样本数据单位归一化后的球的半径,取值为该样本中N个点云中相对质心的距离的最大值;
步骤3.3.3:对每个样本中的点云进行归一化至单位球中,计算每个点云的坐标信息在各个轴方向所占的半径的尺寸,公式如下:
其中,xi_new、yi_new、zi_new代表归一化后该样本中第i个点云分别在x、y、z各个轴方向占单位球半径的比例值,该值有正负方向的区别,其数值区间为[-1,1];xCentroid、yCentroid、zCentroid为该样本在步骤3.3.1中求得的质心坐标,r为其在步骤3.3.2中求得的单位球的半径;
步骤4:对样本进行批量处理,使其对应的标签信息,连同三维数据信息一起保存,训练集的制作完成;按照确定的训练集和验证集的比例,重复之前的步骤,进行验证集制作;
步骤5:采用深度类残差网络,将训练集和验证集的点云数据喂入网络中,通过网络的迭代优化获得到网络模型;
步骤6:在真实场景中,采用真实深度相机采集目标物体的点云数据,放入训练好的网络模型中,最终返回该物体的类别和位置信息;步骤6包括以下步骤:
步骤6.1:在真实场景中,通过真实深度相机采集某个目标物体在某个角度下的点云数据;对采集来的点云数据进行滤波、去背景处理,并保存到带有该目标物体所对应的标签命名文件中;
步骤6.2:对该文件中的数据进行步骤3至步骤4的处理,最终返回该目标物体所对应的类别信息及其位置信息,所述位置信息是该文件中点云数据的质心的位置信息,如步骤3计算质心;
步骤6.3:通过相机标定技术,将质心位置信息的表达由相机坐标系向世界坐标系转换,转换关系如下:
其中,为真实深度相机的外部参数矩阵,R为3×3的旋转矩阵,t为3×1的平移矩阵,R、t可由相机标定获得;(xCentroid_c,yCentroid_c,zCentroid_c)为质心在相机坐标系下的坐标,(xCentroid_w,yCentroid_w,zCentroid_w)为质心在世界坐标系下的坐标;
步骤6.4:标定板置于基坐标系的同一水平面,将质心的世界坐标系转化为机器人基坐标系下,选取标定板上的任意两点,即任意两世界坐标系下的点,查看机器人坐标,确定机器人基坐标系的方向及其与世界坐标系在x坐标与y坐标上的偏移量Δx、Δy,至此机器人基坐标系与世界坐标系的转换关系如下:
其中,(xCentroid_r,yCentroid_r,zCentroid_r)为质心在机器人基坐标系下的坐标;让机械臂基于该位置坐标抓取目标物体。
2.根据权利要求1所述的基于深度类残差网络的三维物体识别和定位方法,其特征在于,步骤4中训练集和验证集之间不存在交叉样本。
3.根据权利要求1或2所述的基于深度类残差网络的三维物体识别和定位方法,其特征在于,步骤1中所述目标物体为长宽高均在30cm以内的物体。
4.根据权利要求1或2或3所述的基于深度类残差网络的三维物体识别和定位方法,其特征在于,在步骤5中,所述的深度类残差网络是针对PointNet++进行改进的可用于基于无序点云的三维物体识别网络,即MAS结构,其包括采样层、重组层、R3Block层和最大池化层,所述采样层用于选择固定数量的点云作为局部区域的质心,所述重组层用于查找质心的相邻点并执行进一步的特征融合,所述R3Block层用于替换基于MLP的迷你PointNet层,以对局部特征进行编码,所述最大池化层用于降低特征维数和更深一层的特征融合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911010487.0A CN110991227B (zh) | 2019-10-23 | 2019-10-23 | 一种基于深度类残差网络的三维物体识别和定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911010487.0A CN110991227B (zh) | 2019-10-23 | 2019-10-23 | 一种基于深度类残差网络的三维物体识别和定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110991227A CN110991227A (zh) | 2020-04-10 |
CN110991227B true CN110991227B (zh) | 2023-06-30 |
Family
ID=70082343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911010487.0A Active CN110991227B (zh) | 2019-10-23 | 2019-10-23 | 一种基于深度类残差网络的三维物体识别和定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110991227B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111914112B (zh) * | 2020-07-07 | 2023-05-23 | 西安交通大学 | 一种基于点云分类网络的零件cad模型重用方法 |
CN111897332B (zh) * | 2020-07-30 | 2022-10-11 | 国网智能科技股份有限公司 | 一种语义智能变电站机器人仿人巡视作业方法及系统 |
CN111915684A (zh) * | 2020-08-13 | 2020-11-10 | 浙江大华技术股份有限公司 | 坐标转换矩阵的确定方法及装置、存储介质、电子装置 |
CN112215101A (zh) * | 2020-09-27 | 2021-01-12 | 武汉科技大学 | 一种基于注意力机制的三维目标识别方法及系统 |
CN112200865B (zh) * | 2020-09-30 | 2023-01-03 | 张成林 | 物体定位方法及物体定位装置 |
CN112365577B (zh) * | 2020-11-09 | 2022-08-23 | 重庆邮电大学 | 一种基于卷积神经网络的机械零件增强现实跟踪注册方法 |
CN115412717B (zh) * | 2021-05-26 | 2024-05-17 | 荣耀终端有限公司 | 一种点云方位角信息的预测编解码方法及装置 |
CN113311709A (zh) * | 2021-05-27 | 2021-08-27 | 扬州舞指芯创智能科技有限公司 | 一种基于脑机接口的智能轮椅复合控制系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105809113A (zh) * | 2016-03-01 | 2016-07-27 | 湖南拓视觉信息技术有限公司 | 三维人脸识别方法及应用其的数据处理装置 |
WO2019080488A1 (zh) * | 2017-10-27 | 2019-05-02 | 东南大学 | 一种基于多尺度协方差描述子与局部敏感黎曼核稀疏分类的三维人脸识别方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3078935A1 (en) * | 2015-04-10 | 2016-10-12 | The European Atomic Energy Community (EURATOM), represented by the European Commission | Method and device for real-time mapping and localization |
-
2019
- 2019-10-23 CN CN201911010487.0A patent/CN110991227B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105809113A (zh) * | 2016-03-01 | 2016-07-27 | 湖南拓视觉信息技术有限公司 | 三维人脸识别方法及应用其的数据处理装置 |
WO2019080488A1 (zh) * | 2017-10-27 | 2019-05-02 | 东南大学 | 一种基于多尺度协方差描述子与局部敏感黎曼核稀疏分类的三维人脸识别方法 |
Non-Patent Citations (3)
Title |
---|
Charles R. Qi等.PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation.《Computer Vision Foundation》.2017,第652-660页. * |
Michael Gschwandtner 等.BlenSor: Blender Sensor Simulation Toolbox.《Springer》.2011,第199-208页. * |
肖大鹏.典型场景下无人驾驶三维目标识别算法研究.《中国优秀硕士学位论文全文数据库(电子期刊)信息科技辑》.2019,I138-3125. * |
Also Published As
Publication number | Publication date |
---|---|
CN110991227A (zh) | 2020-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110991227B (zh) | 一种基于深度类残差网络的三维物体识别和定位方法 | |
Ichnowski et al. | Dex-nerf: Using a neural radiance field to grasp transparent objects | |
CN108509848B (zh) | 三维物体的实时检测方法及系统 | |
CN112767391B (zh) | 融合三维点云和二维图像的电网线路部件缺陷定位方法 | |
CN113819890B (zh) | 测距方法、装置、电子设备及存储介质 | |
CN109520500B (zh) | 一种基于终端拍摄图像匹配的精确定位及街景库采集方法 | |
CN111553949B (zh) | 基于单帧rgb-d图像深度学习对不规则工件的定位抓取方法 | |
CN112862874B (zh) | 点云数据匹配方法、装置、电子设备及计算机存储介质 | |
CN113159232A (zh) | 一种三维目标分类、分割方法 | |
CN112489099B (zh) | 点云配准方法、装置、存储介质及电子设备 | |
CN114219855A (zh) | 点云法向量的估计方法、装置、计算机设备和存储介质 | |
CN114565916A (zh) | 目标检测模型训练方法、目标检测方法以及电子设备 | |
CN114639115A (zh) | 一种人体关键点与激光雷达融合的3d行人检测方法 | |
CN110853103B (zh) | 一种用于深度学习姿态估计的数据集制作方法 | |
CN116642490A (zh) | 基于混合地图的视觉定位导航方法、机器人及存储介质 | |
CN116664622A (zh) | 一种视觉运动控制方法和装置 | |
Yang et al. | Deep learning based six‐dimensional pose estimation in virtual reality | |
CN115661446A (zh) | 基于深度学习的指针式仪表示数自动读取系统及方法 | |
CN109118576A (zh) | 基于bds位置服务的大型场景三维重建系统及重建方法 | |
CN114863021A (zh) | 一种基于三维重建场景的仿真数据集分析方法及系统 | |
CN111178299B (zh) | 图像处理方法、装置、电子设备和存储介质 | |
CN114820899A (zh) | 一种基于多视角渲染的姿态估计方法和装置 | |
Hong et al. | ClueDepth Grasp: Leveraging positional clues of depth for completing depth of transparent objects | |
Yang et al. | Mmwave radar and vision fusion for semantic 3D reconstruction | |
CN117853664B (zh) | 基于双分支特征融合三维人脸重建方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |