CN117456001A - 一种基于点云配准的工件姿态检测方法 - Google Patents
一种基于点云配准的工件姿态检测方法 Download PDFInfo
- Publication number
- CN117456001A CN117456001A CN202311766138.8A CN202311766138A CN117456001A CN 117456001 A CN117456001 A CN 117456001A CN 202311766138 A CN202311766138 A CN 202311766138A CN 117456001 A CN117456001 A CN 117456001A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- point
- workpiece
- source
- transformation
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 13
- 230000009466 transformation Effects 0.000 claims abstract description 85
- 239000011159 matrix material Substances 0.000 claims abstract description 69
- 238000000034 method Methods 0.000 claims abstract description 59
- 238000000605 extraction Methods 0.000 claims abstract description 34
- 238000005507 spraying Methods 0.000 claims description 25
- 238000004519 manufacturing process Methods 0.000 claims description 17
- 230000036544 posture Effects 0.000 claims description 13
- 238000013519 translation Methods 0.000 claims description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 9
- 239000000284 extract Substances 0.000 claims description 6
- 230000035945 sensitivity Effects 0.000 claims description 6
- 238000000354 decomposition reaction Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 4
- 238000009877 rendering Methods 0.000 claims description 4
- 230000005484 gravity Effects 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 230000003287 optical effect Effects 0.000 claims description 3
- 238000000513 principal component analysis Methods 0.000 claims description 3
- 238000004088 simulation Methods 0.000 claims description 3
- 239000007921 spray Substances 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 239000000463 material Substances 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000000843 powder Substances 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- 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/60—Analysis of geometric attributes
- G06T7/66—Analysis of geometric attributes of image moments or centre of gravity
-
- 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/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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种基于点云配准的工件姿态检测方法,其包括:S1:根据待喷涂工件模型或利用深度相机拍摄准确姿态工件的点云得到目标点云,根据深度相机所拍摄的待喷涂工件的点云得到源点云;S2:将目标点云和源点云输入特征提取单元提取每个点的特征描述子;S3:根据每个点的特征描述子,对目标点云和源点云进行匹配,得到并记录变换矩阵;S4:根据当前的变换矩阵和变换次数判断位姿变换是否达到终止条件,如果是,则将所有记录的变换矩阵连乘,得到最终变换矩阵;如果否,则根据变换矩阵对源点云进行位姿变换,得到位姿变换后的源点云,返回步骤S2。该方法具有良好的抗干扰能力和实时性,相比其他方法大幅提高配准性能,准确度更高。
Description
技术领域
本发明属于图像识别技术领域,具体涉及一种基于点云配准的工件姿态检测方法。
背景技术
粉末喷涂相比传统油漆工艺喷涂,有着更加高效、环保、节能的优势,在目前常用的自动化喷涂产线上,待喷涂工件一般先被固定勾架固定好,随着运输线经过机械臂,机械臂预先设定好喷涂轨迹,对经过的待喷涂工件进行喷粉涂装,若工件姿态在运输过程中出现偏差,将影响喷涂效果导致部分地方喷涂厚度不达标,喷涂缺失的地方往往需要人工或机械重新补充喷涂,大大影响效率,而目前大部分产线为了减少上述情况出现,需要在喷涂过程中加大机械臂的喷涂量,造成时间和物料上的浪费。因此,对待喷涂工件的姿态提前进行实时检测,提供及时可靠的工件姿态信息,有利于后续机械臂的喷涂轨迹修改,是提高喷涂产线效率、较少物料浪费的基础工作。
申请人曾申请了中国专利申请CN113706454A和CN 113763436A,其中CN113706454A公开了一种基于配准的工件偏移检测的方法,通过将工件的目标点云与正位模板点云进行配准,从而得到当前工件的偏移量;CN 113763436 A公开了一种基于图像配准的工件碰撞检测方法,其通过深度相机捕捉并生成实体坐标系的点云,根据捕捉到的点云拟合出参照坐标系,若参照坐标系相于实体坐标系的误差小于预设值,则参照坐标系拟合成功,将捕捉到的参照坐标系转换成世界坐标系,设定世界坐标系的参数以确定碰撞预警的触发条件。这两项专利申请均涉及到基于点云配准的工件姿态检测方法,但是其准确度不足。
中国专利申请CN113112417A也公开了一种基于三维点云的喷涂工件建模方法,通过深度相机Kinectv2扫描得到喷涂工件点云模型;基于统计学方法对喷涂工件点云模型进行滤波以去除噪声点;在体素栅格法中加入了提出的边缘保持算法对喷涂工件点云模型进行精简;基于移动最小二乘法对喷涂工件的点云模型进行平滑;通过贪婪投影三角化算法将喷涂工件的点云模型重建成实体模型。该方法同样存在准确度不足的缺点,对于复杂工件无法适用。
发明内容
针对现有技术的不足,本发明旨在提供一种准确度更高的基于点云配准的工件姿态检测方法。
本发明提供一种基于点云配准的工件姿态检测方法,其包括如下步骤:
S1:根据待喷涂工件模型或利用深度相机拍摄准确姿态工件的点云得到目标点云,根据深度相机所拍摄的待喷涂工件的点云得到源点云;
S2:将目标点云和源点云输入特征提取单元提取每个点的特征描述子;
S3:根据每个点的特征描述子,对目标点云和源点云进行匹配,得到并记录变换矩阵;
S4:根据当前的变换矩阵和变换次数判断位姿变换是否达到终止条件,如果是,则将所有记录的变换矩阵连乘,得到最终变换矩阵,即源点云相对目标点云的姿态;如果否,则根据变换矩阵对源点云进行位姿变换,得到位姿变换后的源点云,返回步骤S2。
在优选实施例中,在步骤S1之前还包括如下步骤:
S0:收集3D模型数据集,对3D模型进行多视角点云渲染,模拟深度相机拍摄工件,得到与深度相机拍摄接近的点云数据,利用该点云数据对特征提取单元进行训练;
S0进一步包括如下子步骤:
S01:对喷涂产线上采用的深度相机进行标定,得到内参矩阵K,内参矩阵的形式如下:
,
其中和/>分别为深度相机在水平和垂直方向的焦距,/>和/>分别是光心在所成图像坐标系水平和垂直方向上的坐标;
S02:在VTK工具中导入所述内参矩阵和所收集的3D模型数据集,设定不同的视角以得到各个视角下的模拟深度图,采集到的深度图通过以下计算转为点云数据:
,
,
,
其中、/>、/>分别为点云/>、/>、/>方向坐标,/>、/>分别为深度图/>方向和/>方向的坐标值,/>为该坐标的深度信息;
S03:利用步骤S02中获得的点云数据对特征提取单元进行训练。
在优选实施例中,在步骤S1中,根据深度相机与喷涂产线的位置,对深度相机拍摄的点云数据的坐标值进行阈值判断,裁切掉待喷涂工件周围环境的点云数据,保留喷涂产线上待喷涂工件的点云数据,对裁切后的待喷涂工件的点云数据,进行体素下采样,再通过SOR算法对采样后的点云数据进行滤波,得到源点云。
在优选实施例中,步骤S2进一步包括如下子步骤:
S21:对于源点云和目标点云中每个点寻找其半径/>内的/>个邻居点,以逆时针顺序,相邻的每两个邻居点/>、/>与中心点/>形成三角形,通过主成分分析估计三角形的法向量/>,计算三角形重心/>,组成该三角形的特征/>,将每个三角形的特征拼接在一起,得到该点特征,利用多层感知器将特征提取为编码,得到源点云和目标点云中每个点的初始特征编码;
S22:将源点云和目标点云中每个点的初始特征编码,输入所述特征提取单元,得到源点云和目标点云中每个点的特征描述子。
在优选实施例中,在步骤S22中,特征提取单元包括依次连接的KPConv特征提取模块、自注意力模块和交叉注意力模块,所述KPConv特征提取模块采用KPConv卷积方法对源点云和目标点云的初始特征编码进行下采样,得到稀疏的源点云和目标点云以及每个稀疏点的特征;所述自注意力模块对经所述KPConv特征提取模块处理后的源点云和目标点云进行自注意力机制处理,提取源点云和目标点云各自的内部特征;所述交叉注意力模块对经自注意力模块处理后的源点云和目标点云进行共同计算,提取源点云和目标点云之间的特征;所述每个点的特征描述子包括点云的内部特征和点云之间的特征。
在优选实施例中,所述自注意力模块通过距离编码和角度编码/>确定点在空间中的位置:
对于两个点和/>,其欧式距离为
,
其位置编码为:
,
其中为特征位数,/>是距离敏感度系数;
选取的/>个邻居点/>,/>和/>间角度为
,
角度编码为
,
其中是距离敏感度系数;
根据距离编码和角度编码/>计算得到点/>和点/>的相对位置编码为:
,
其中和/>为位置编码和角度编码的权重矩阵。
在优选实施例中,在步骤S3中,根据步骤S2获得的点云中每个点的特征描述子,对目标点云和源点云进行匹配,得到变换矩阵;
在步骤S4中,计算变换矩阵的角度差值/>和平移差值/>,计算方法如下:
,
,
比较角度差值和平移差值/>与设定的对应阈值/>和/>,如果角度差值/>和/或平移差值/>大于设定阈值,且位姿变换次数小于预设变换次数,则根据变换矩阵对源点云进行旋转与平移,并返回步骤S2;如果角度差值/>和平移差值/>均小于设定阈值,或者位姿变换次数等于预设变换次数,则将所有记录的变换矩阵连乘,得到最终变换矩阵。
在优选实施例中,在步骤S2中,特征提取单元对源点云和目标点云的初始特征编码进行下采样,得到稀疏的源点云和目标点云以及每个稀疏点的特征;
在步骤S3中,根据源点云和目标点云间各个点在特征维度上的距离,建立每个点之间的相关性得分:
,
其中是源点云/>中的点,/>是目标点云/>中的点;
根据点云间每个点的相关性得分,选取其中得分最大的个稀疏点组合,对于每个稀疏点组合,寻找两个点在各自的原始点云中的/>个近邻点,根据各个点的特征,计算每个两组近邻点间各自的损失,得到损失矩阵/>:
,
其中为源点云/>中点/>的特征,/>是目标点云/>中/>的特征,/>为特征维度;
对于所得到的损失矩阵,利用Sinkhorn算法找到近邻点间可能的重合点,即两个点可能是不同姿态下点云的同一个点,选取得分最高的前组作为重合点对;
对于每个稀疏点组合所获取到的重合点对/>,通过权重SVD分解,求解:
,
其中权重为该重合点在损失矩阵中的得分,求解得到该稀疏点组合的变换矩阵后,完成粗匹配;
将各个稀疏点对中的重合点叠加到一起得到,对于各稀疏点对所求解的变换矩阵,计算:
,
若,/>为预设值,则对该变换矩阵得分加1,选择得分最高的变换矩阵为该轮次的结果,完成精匹配,即得分最高的变换矩阵为变换矩阵/>。
本发明方法成功地实现了在喷涂产线中对常见物体进行姿态检测,同时具有良好的抗干扰能力和实时性,相比其他方法大幅提高配准性能,准确度更高。
附图说明
通过附图中所示的本发明优选实施例更具体说明,本发明上述及其它目的、特征和优势将变得更加清晰。在全部附图中相同的附图标记指示相同的部分,且并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本的主旨。
图1是本发明提供的基于点云配准的工件姿态检测方法的流程图。
图2是特征提取单元的结构示意图。
图3是标定深度相机时的标定板示意图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本进行更全面的描述。
需要说明的是,当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件并与之结合为一体,或者可能同时存在居中元件。本文所使用的术语“安装”、“一端”、“另一端”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本技术领域的技术人员通常理解的含义相同。本文中说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
请参考图1-3,本发明实施例提供一种基于点云配准的工件姿态检测方法,其包括如下步骤:
S1:根据待喷涂工件模型或利用深度相机拍摄准确姿态工件的点云得到目标点云,根据深度相机所拍摄的待喷涂工件的点云得到源点云。深度相机能检测出拍摄空间的景深距离,通过深度相机获取到图像中每个点距离摄像头的距离,在加上该点在 2D 图像中的二维坐标,就能获取图像中每个点的三维空间坐标,生成三维点云数据。准确姿态工件的点云可以用深度相机正对待喷涂工件的正面拍摄而得。目标点云可以预先输入到喷涂系统中。源点云则是可以由固定设置在喷涂产线上深度相机实时拍摄喷涂产线上传输的待喷涂工件而得。
S2:将目标点云和源点云输入特征提取单元提取每个点的特征描述子。特征描述子是对一张图片或者一个图片块的一种表示,通过提取有用信息并扔掉多余的信息来简化图像。特征提取是使用计算机提取图像中属于特征性的信息的方法及过程。特征提取单元一般会预先利用点云数据对其进行训练,以使特征提取单元能达到较好的提取效果。
S3:根据每个点的特征描述子,对目标点云和源点云进行匹配,得到并记录变换矩阵(也可以称配准矩阵)。对目标点云和源点云进行匹配的过程可以逐步进行,可以先进行粗匹配,再进行细匹配(精匹配)。
S4:根据当前的变换矩阵和变换次数判断位姿变换是否达到终止条件,如果是,则将所有记录的变换矩阵连乘,得到最终变换矩阵,即源点云相对目标点云的姿态;如果否,则根据变换矩阵对源点云进行位姿变换,得到位姿变换后的源点云,返回步骤S2。根据变换矩阵可以计算出源点云与目标点云之间的误差,当误差小于设定的阈值则可以结束循环(迭代);变换次数表示源点云的位姿变化次数,当其到达设定的循环次数时,也停止循环(迭代)。最终变换矩阵为之前所有求得变换矩阵相乘的结果,最终变换矩阵体现的是源点云相对目标点云的姿态,也即待喷涂物体的实际姿态。
在优选实施例中,在步骤S1之前还包括如下步骤:
S0:收集3D模型数据集,对3D模型进行多视角点云渲染,模拟深度相机拍摄工件,得到与深度相机拍摄接近的点云数据,组成训练数据集,利用该点云数据对特征提取单元进行训练。通过多角度渲染相机视角的点云进行训练,使训练数据和喷涂产线深度相机拍摄的数据更加接近,让该方法更适应喷涂产线,提高鲁棒性和准确性。
S0进一步包括如下子步骤:
S01:对喷涂产线上采用的深度相机进行标定,得到内参矩阵K,内参矩阵的形式如下:
,
其中和/>分别为深度相机在水平和垂直方向的焦距,/>和/>分别是光心在所成图像坐标系水平和垂直方向上的坐标。具体来说,可以打印如图3所示的已知尺寸的黑白棋盘格作为标定板,使用深度相机对不同角度、距离下的标定板拍摄至少3张图像,对所拍摄的图像用张正友标定法求解,得到内参矩阵K。
S02:在VTK工具中导入所述内参矩阵K和所收集的3D模型数据集,VTK(visualization toolkit)是一个开源的免费软件系统,主要用于三维计算机图形学、图像处理和可视化。在VTK工具中设定不同的视角以得到各个视角下的模拟深度图,采用的视角可以为正十二面体的20个顶点指向中心的方向。采集到的深度图通过以下计算转为点云数据:
,
,
,
其中、/>、/>分别为点云/>、/>、/>方向坐标,/>、/>分别为深度图/>方向和/>方向的坐标值,/>为该坐标的深度信息;
S03:利用步骤S02中获得的点云数据对特征提取单元进行训练。
在优选实施例中,在步骤S1中,根据深度相机与喷涂产线的位置,对深度相机拍摄的点云数据的x、y、z坐标值进行阈值判断,裁切掉待喷涂工件周围环境的点云数据,保留喷涂产线上待喷涂工件的点云数据,对裁切后的待喷涂工件的点云数据,进行体素下采样,再通过SOR算法(逐次超松弛迭代法,Successive Over Relaxation)对采样后的点云数据进行滤波,得到源点云。这是属于对点云数据进行预处理。实际运行中,对输入的训练集的点云,也同样进行体素下采样,再通过SOR算法对点云进行滤波。在本实施例中,体素下采样的体素网格大小设定为0.01,SOR算法每个点的最大邻居点数量为20,标准差为2。通过进行上述预处理,可以大幅减少点云的数据量,使得计算机运行该方法更加快。
在优选实施例中,步骤S2进一步包括如下子步骤:
S21:对于源点云和目标点云中每个点寻找其半径/>内的/>个邻居点,以逆时针顺序,相邻的每两个邻居点/>、/>与中心点/>形成三角形,通过主成分分析估计三角形的法向量/>,计算三角形重心/>,组成该三角形的特征/>。在本实施例中,半径r设置为0.0625,k设置为9。将每个三角形的特征拼接在一起,得到该点特征,维度为,利用多层感知器(MLP,Multilayer Perceptron)将特征提取为编码,得到源点云和目标点云中每个点的初始特征编码。在本实施例中,MLP为两层全连接层,分别将特征计算为16和32,中间经过一层最大池化层,最终得到每个点的初始特征编码为1×32。通过提前对点云初始特征进行逐点编码,减少了模型规模和推理时间,使得该方法具有实时检测的能力。
S22:将源点云和目标点云中每个点的初始特征编码,输入所述特征提取单元,得到源点云和目标点云中每个点的特征描述子。
请参考图2,在优选实施例中,在步骤S22中,特征提取单元包括依次连接的KPConv(Kernel Point Convolution,核心点卷积)特征提取模块、自注意力模块和交叉注意力模块,所述KPConv特征提取模块采用KPConv卷积方法对源点云和目标点云的初始特征编码进行一步步下采样,得到稀疏的源点云和目标点云以及每个稀疏点的特征;所述自注意力模块对经所述KPConv特征提取模块处理后的源点云和目标点云进行自注意力机制处理,提取源点云和目标点云各自的内部特征;所述交叉注意力模块对经自注意力模块处理后的源点云和目标点云进行共同计算,提取源点云和目标点云之间的特征;所述每个点的特征描述子包括点云的内部特征和点云之间的特征。
在优选实施例中,自注意力模块通过距离编码和角度编码/>确定点在空间中的位置,采用正弦编码实现:
对于两个点和/>,其欧式距离为
,
其位置编码为:
,
其中为特征位数,/>是距离敏感度系数;
选取的/>个邻居点/>,/>和/>间角度为
,
角度编码为
,
其中是距离敏感度系数;
根据距离编码和角度编码/>计算得到点/>和点/>的相对位置编码为:
,
其中和/>为位置编码和角度编码的权重矩阵。
在优选实施例中,在步骤S3中,根据步骤S2获得的点云中每个点的特征描述子,对目标点云和源点云进行匹配,得到变换矩阵;
在步骤S4中,计算变换矩阵 的角度差值/>和平移差值/>,计算方法如下:
,
,
比较角度差值和平移差值/>与设定的对应阈值/>和/>,如果角度差值和/或平移差值/>大于设定阈值,且位姿变换次数小于预设变换次数,则根据变换矩阵对源点云进行旋转与平移,并返回步骤S2;如果角度差值/>和平移差值/>均小于设定阈值,或者位姿变换次数等于预设变换次数,则将所有记录的变换矩阵连乘,得到最终变换矩阵。在本实施例中,/>设置为5,/>设置为0.1,预设变换次数设置为5。
在优选实施例中,在步骤S2中,特征提取单元对源点云和目标点云的初始特征编码进行下采样,得到稀疏的源点云和目标点云以及每个稀疏点的特征,
在步骤S3中,根据源点云和目标点云间各个点在特征维度上的距离,建立每个点之间的相关性得分:
,
其中是源点云/>中的点,/>是目标点云/>中的点;
根据点云间每个点的相关性得分,选取其中得分最大的个稀疏点组合,对于每个稀疏点组合,寻找两个点在各自的原始点云中的/>个近邻点,根据各个点的特征,计算每个两组近邻点间各自的损失,得到损失矩阵/>:
,
其中为源点云/>中点/>的特征,/>是目标点云/>中/>的特征,/>为特征维度;
对于所得到的损失矩阵,利用Sinkhorn算法找到近邻点间可能的重合点,即两个点可能是不同姿态下点云的同一个点,选取得分最高的前组作为重合点对。在本实施例中,/>设置为64,/>设置为256。
对于每个稀疏点组合所获取到的重合点对/>,通过权重SVD分解(奇异值分解, singular value decomposition),求解:
,
其中权重为该重合点在损失矩阵中的得分,求解得到该稀疏点组合的变换矩阵后,完成粗匹配;
将各个稀疏点对中的重合点叠加到一起得到,对于各稀疏点对所求解的变换矩阵,计算:
,
若,则对该变换矩阵得分加1,/>为预设值,可以设置为0.05,选择得分最高的变换矩阵为该轮次的结果,完成精匹配,即得分最高的变换矩阵为变换矩阵/>。
在本申请中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“优选实施例”、“再一实施例”、“其他实施例”或“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (7)
1.一种基于点云配准的工件姿态检测方法,其特征在于,包括如下步骤:
S0:收集3D模型数据集,对3D模型进行多视角点云渲染,模拟深度相机拍摄工件,得到与深度相机拍摄接近的点云数据,利用该点云数据对特征提取单元进行训练;
S0进一步包括如下子步骤:
S01:对喷涂产线上采用的深度相机进行标定,得到内参矩阵K,内参矩阵的形式如下:
,
其中和/>分别为深度相机在水平和垂直方向的焦距,/>和/>分别是光心在所成图像坐标系水平和垂直方向上的坐标;
S02:在VTK工具中导入所述内参矩阵和所收集的3D模型数据集,设定不同的视角以得到各个视角下的模拟深度图,采集到的深度图通过以下计算转为点云数据:
,
,
,
其中、/>、/>分别为点云/>、/>、/>方向坐标,/>、/>分别为深度图/>方向和/>方向的坐标值,/>为该坐标的深度信息;
S03:利用步骤S02中获得的点云数据对特征提取单元进行训练;
S1:根据待喷涂工件模型或利用深度相机拍摄准确姿态工件的点云得到目标点云,根据深度相机所拍摄的待喷涂工件的点云得到源点云;
S2:将目标点云和源点云输入特征提取单元提取每个点的特征描述子;
S3:根据每个点的特征描述子,对目标点云和源点云进行匹配,得到并记录变换矩阵;
S4:根据当前的变换矩阵和变换次数判断位姿变换是否达到终止条件,如果是,则将所有记录的变换矩阵连乘,得到最终变换矩阵,即源点云相对目标点云的姿态;如果否,则根据变换矩阵对源点云进行位姿变换,得到位姿变换后的源点云,返回步骤S2。
2.根据权利要求1所述的基于点云配准的工件姿态检测方法,其特征在于,在步骤S1中,根据深度相机与喷涂产线的位置,对深度相机拍摄的点云数据的坐标值进行阈值判断,裁切掉待喷涂工件周围环境的点云数据,保留喷涂产线上待喷涂工件的点云数据,对裁切后的待喷涂工件的点云数据,进行体素下采样,再通过SOR算法对采样后的点云数据进行滤波,得到源点云。
3.根据权利要求1所述的基于点云配准的工件姿态检测方法,其特征在于,步骤S2进一步包括如下子步骤:
S21:对于源点云和目标点云中每个点寻找其半径/>内的/>个邻居点,以逆时针顺序,相邻的每两个邻居点/>、/>与中心点/>形成三角形,通过主成分分析估计三角形的法向量/>,计算三角形重心/>,组成该三角形的特征/>,将每个三角形的特征拼接在一起,得到该点特征,利用多层感知器将特征提取为编码,得到源点云和目标点云中每个点的初始特征编码;
S22:将源点云和目标点云中每个点的初始特征编码,输入所述特征提取单元,得到源点云和目标点云中每个点的特征描述子。
4.根据权利要求3所述的基于点云配准的工件姿态检测方法,其特征在于,在步骤S22中,特征提取单元包括依次连接的KPConv特征提取模块、自注意力模块和交叉注意力模块,所述KPConv特征提取模块采用KPConv卷积方法对源点云和目标点云的初始特征编码进行下采样,得到稀疏的源点云和目标点云以及每个稀疏点的特征;所述自注意力模块对经所述KPConv特征提取模块处理后的源点云和目标点云进行自注意力机制处理,提取源点云和目标点云各自的内部特征;所述交叉注意力模块对经自注意力模块处理后的源点云和目标点云进行共同计算,提取源点云和目标点云之间的特征;所述每个点的特征描述子包括点云的内部特征和点云之间的特征。
5.根据权利要求4所述的基于点云配准的工件姿态检测方法,其特征在于,所述自注意力模块通过距离编码和角度编码/>确定点在空间中的位置:
对于两个点和/>,其欧式距离为/>,
其位置编码为:
,
其中为特征位数,/>是距离敏感度系数;
选取的/>个邻居点/>,/>和/>间角度为
,
角度编码为:
,
其中是距离敏感度系数;
根据距离编码和角度编码/>计算得到点/>和点/>的相对位置编码为:
,
其中和/>为位置编码和角度编码的权重矩阵。
6.根据权利要求1所述的基于点云配准的工件姿态检测方法,其特征在于,
在步骤S3中,根据步骤S2获得的点云中每个点的特征描述子,对目标点云和源点云进行匹配,得到变换矩阵;
在步骤S4中,计算变换矩阵 的角度差值/>和平移差值/>,计算方法如下:
,
,
比较角度差值和平移差值/>与设定的对应阈值/>和/>,如果角度差值/>和/或平移差值/>大于设定阈值,且位姿变换次数小于预设变换次数,则根据变换矩阵/>对源点云进行旋转与平移,并返回步骤S2;如果角度差值/>和平移差值/>均小于设定阈值,或者位姿变换次数等于预设变换次数,则将所有记录的变换矩阵连乘,得到最终变换矩阵。
7.根据权利要求6所述的基于点云配准的工件姿态检测方法,其特征在于,在步骤S2中,特征提取单元对源点云和目标点云的初始特征编码进行下采样,得到稀疏的源点云和目标点云以及每个稀疏点的特征,
在步骤S3中,根据源点云和目标点云间各个点在特征维度上的距离,建立每个点之间的相关性得分:,
其中是源点云/>中的点,/>是目标点云/>中的点;
根据点云间每个点的相关性得分,选取其中得分最大的个稀疏点组合,对于每个稀疏点组合,寻找两个点在各自的原始点云中的/>个近邻点,根据各个点的特征,计算每个两组近邻点间各自的损失,得到损失矩阵/>:
,
其中为源点云/>中点/>的特征,/>是目标点云/>中/>的特征,/>为特征维度;
对于所得到的损失矩阵,利用Sinkhorn算法找到近邻点间可能的重合点,即两个点可能是不同姿态下点云的同一个点,选取得分最高的前组作为重合点对;
对于每个稀疏点组合所获取到的重合点对/>,通过权重SVD分解,求解:
,
其中权重为该重合点在损失矩阵中的得分,求解得到该稀疏点组合的变换矩阵后,完成粗匹配;
将各个稀疏点对中的重合点叠加到一起得到,对于各稀疏点对所求解的变换矩阵,计算:
,
若,/>为预设值,则对该变换矩阵得分加1,选择得分最高的变换矩阵为该轮次的结果,完成精匹配,即得分最高的变换矩阵为变换矩阵/>。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311766138.8A CN117456001B (zh) | 2023-12-21 | 2023-12-21 | 一种基于点云配准的工件姿态检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311766138.8A CN117456001B (zh) | 2023-12-21 | 2023-12-21 | 一种基于点云配准的工件姿态检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117456001A true CN117456001A (zh) | 2024-01-26 |
CN117456001B CN117456001B (zh) | 2024-04-09 |
Family
ID=89582196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311766138.8A Active CN117456001B (zh) | 2023-12-21 | 2023-12-21 | 一种基于点云配准的工件姿态检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117456001B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109202912A (zh) * | 2018-11-15 | 2019-01-15 | 太原理工大学 | 一种基于单目深度传感器和机械臂配准目标轮廓点云的方法 |
WO2022040970A1 (zh) * | 2020-08-26 | 2022-03-03 | 南京翱翔信息物理融合创新研究院有限公司 | 一种同步实现三维重建和ar虚实注册的方法、系统及装置 |
WO2022165876A1 (zh) * | 2021-02-06 | 2022-08-11 | 湖南大学 | 一种基于wgan的无监督多视角三维点云联合配准方法 |
CN116749198A (zh) * | 2023-07-31 | 2023-09-15 | 武汉惟景三维科技有限公司 | 一种基于双目立体视觉引导机械臂抓取方法 |
-
2023
- 2023-12-21 CN CN202311766138.8A patent/CN117456001B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109202912A (zh) * | 2018-11-15 | 2019-01-15 | 太原理工大学 | 一种基于单目深度传感器和机械臂配准目标轮廓点云的方法 |
WO2022040970A1 (zh) * | 2020-08-26 | 2022-03-03 | 南京翱翔信息物理融合创新研究院有限公司 | 一种同步实现三维重建和ar虚实注册的方法、系统及装置 |
WO2022165876A1 (zh) * | 2021-02-06 | 2022-08-11 | 湖南大学 | 一种基于wgan的无监督多视角三维点云联合配准方法 |
CN116749198A (zh) * | 2023-07-31 | 2023-09-15 | 武汉惟景三维科技有限公司 | 一种基于双目立体视觉引导机械臂抓取方法 |
Non-Patent Citations (1)
Title |
---|
郭清达;全燕鸣;姜长城;陈健武;: "应用摄像机位姿估计的点云初始配准", 光学精密工程, no. 06, 15 June 2017 (2017-06-15), pages 238 - 247 * |
Also Published As
Publication number | Publication date |
---|---|
CN117456001B (zh) | 2024-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110032949B (zh) | 一种基于轻量化卷积神经网络的目标检测与定位方法 | |
Zhu et al. | Efficient registration for precision inspection of free-form surfaces | |
CN107767456A (zh) | 一种基于rgb‑d相机的物体三维重建方法 | |
CN105740899A (zh) | 一种机器视觉图像特征点检测与匹配复合的优化方法 | |
JP2011174880A (ja) | 位置姿勢推定方法及びその装置 | |
CN113470090A (zh) | 基于sift-shot特征的多固态激光雷达外参标定方法 | |
CN106996748A (zh) | 一种基于双目视觉的轮径测量方法 | |
CN113393439A (zh) | 一种基于深度学习的锻件缺陷检测方法 | |
CN113362457B (zh) | 一种基于散斑结构光的立体视觉测量方法及系统 | |
CN109470149A (zh) | 一种管路位姿的测量方法及装置 | |
CN112734844B (zh) | 一种基于正八面体的单目6d位姿估计方法 | |
CN115482195A (zh) | 一种基于三维点云的列车部件变形检测方法 | |
CN111402330A (zh) | 一种基于平面靶标的激光线关键点提取方法 | |
CN116486287A (zh) | 基于环境自适应机器人视觉系统的目标检测方法及系统 | |
Yu et al. | Cutting plane based cylinder fitting method with incomplete point cloud data for digital fringe projection | |
CN116664856A (zh) | 基于点云-图像多交叉混合的三维目标检测方法、系统及存储介质 | |
CN114310887A (zh) | 3d人腿识别方法、装置、计算机设备及存储介质 | |
CN109064536B (zh) | 一种基于双目结构光的书页三维重建方法 | |
CN114612412A (zh) | 三维点云数据的处理方法及其用途、电子设备、存储介质 | |
CN114387262A (zh) | 一种基于机器视觉的螺母定位检测方法、装置及系统 | |
CN113793383A (zh) | 一种3d视觉识别取放系统及方法 | |
CN117456001B (zh) | 一种基于点云配准的工件姿态检测方法 | |
CN116051808A (zh) | 一种基于YOLOv5的轻量化零件识别定位方法 | |
CN116843829A (zh) | 基于双目视频的混凝土结构裂缝三维重建与长度量化方法 | |
CN116309817A (zh) | 一种基于rgb-d相机的托盘检测与定位方法 |
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 |