CN113421291B - 利用点云配准技术和三维重建技术的工件位置找正方法 - Google Patents
利用点云配准技术和三维重建技术的工件位置找正方法 Download PDFInfo
- Publication number
- CN113421291B CN113421291B CN202110806722.6A CN202110806722A CN113421291B CN 113421291 B CN113421291 B CN 113421291B CN 202110806722 A CN202110806722 A CN 202110806722A CN 113421291 B CN113421291 B CN 113421291B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- point
- model
- workpiece
- data
- 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
- 238000005516 engineering process Methods 0.000 title claims abstract description 35
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000006243 chemical reaction Methods 0.000 claims abstract description 12
- 230000004927 fusion Effects 0.000 claims abstract description 8
- 239000013598 vector Substances 0.000 claims description 21
- 230000009466 transformation Effects 0.000 claims description 18
- 239000011159 matrix material Substances 0.000 claims description 15
- 238000013519 translation Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 10
- 230000000694 effects Effects 0.000 claims description 10
- 238000000354 decomposition reaction Methods 0.000 claims description 9
- 230000005484 gravity Effects 0.000 claims description 7
- 238000007781 pre-processing Methods 0.000 claims description 7
- 238000005192 partition Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 5
- 230000000007 visual effect Effects 0.000 claims description 5
- 230000002146 bilateral effect Effects 0.000 claims description 4
- 238000005457 optimization Methods 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000005259 measurement Methods 0.000 description 5
- 238000003754 machining Methods 0.000 description 4
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 238000013019 agitation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000000638 solvent extraction Methods 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/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
- G06T7/344—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- 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
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
-
- 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/20024—Filtering details
- G06T2207/20028—Bilateral filtering
-
- 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/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- 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/30244—Camera pose
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)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
一种利用点云配准技术和三维重建技术的工件位置找正方法,首先利用点云技术建立点云模型,其次根据高精度机械臂的运动关系及手眼标定的结果进行多角度点云模型粗拼接,再应用ICP算法对其进行精拼接,通过点云融合得到焊件参考模型,之后利用点云配准技术,将实际场景中的工件模型和建立的参考模型对齐,得到两者的位姿转换关系,使系统能够实时感知工件的位姿,从而实现工件的定位找正。解决了在工件模型未知情况下,工件的定位找正,进而获得准确的机器人运动路径。
Description
【技术领域】
本发明属于光学测量技术领域,具体涉及一种利用点云配准技术和三维重建技术的工件位置找正方法。
【背景技术】
近年来,随着工业自动化的需求,工业机器人在辅助加工得到了广泛的使用。目前,在自动化生产中,应用最多的是“示教再现”和“离线编程”两种工作方式。这两种模式虽然效果不错,但在实际的生产环境中,由于目标多变,且工作环境复杂,而这些工作模式无法感知工况,对环境的变化缺乏一定的灵活性导致效率较低。因此机器人辅助加工的智能化是未来发展和应用的必然趋势。
机器人辅助加工的智能化,主要是将各类传感器与机器人结合起来,实时获取实时工况的相关信息,通过对这些信息的实时处理,进而调整加工过程中相关参数,完成自动加工作业。视觉传感器具有非接触测量,精度高、速率高,抗弧光等优点,在机器人辅助加工的智能化过程中得到了大量应用。
视觉传感技术在机器人辅助加工中主要分为被动视觉法和主动视觉传感技术。主动视觉通常以结构光或者激光作为测量光源,将其投射到测量物体表面,CCD相机拍摄物体表面图像并进行分析,从而获取工件几何结构特征。因此,对于测量获取的点云数据是否能够进行合理准确的处理,得到完整精确的CAD模型,对于机器人运动路径的准确性至关重要。
【发明内容】
针对上述问题,本发明提供一种利用点云配准技术和三维重建技术的工件位置找正方法,通过对视觉传感器获取的工件点云数据进行处理,建立工件参考模型,最终实现工件位置找正,解决了在工件模型未知的情况下,准确装夹工件,进而获得准确的机器人运动路径,确保后期工作得顺利进行。
本发明是通过以下技术方案实现的,提供一种利用点云配准技术和三维重建技术的工件位置找正方法,包括以下步骤:
S1对获得的点云数据进行预处理,获得点云模型;
S2利用三维重建技术建立参考模型;
S3对参考模型和点云模型进行点云配准,得到参考模型和点云模型的位姿变换矩阵;
S4利用位姿变换矩阵将点云模型和参考模型对齐,即完成工件位置找正。
特别的,所述S1采用视觉传感器获取点云数据,该视觉传感器为二维传感器。
特别的,所述S1中预处理包括点云去噪和点云简化,所述点云去噪具体按照以下方案实施:
S111利用点云加权模糊C均值聚类算法计算数据点gi的密度ρi,密度ρi具体按如下公式进行计算:
公式(1)中,gi为数据点,d(gi,gj)为两个数据点间的欧氏距离,gj为数据点gi的k个邻域点,当k个数据点距离较近时,d(gi,gj)较小,ρi较大,这对聚类影响较大,因此按如下公式对ρi进行归一化:
于公式(2)中,r为数据点到聚类中心的距离,Ωi为数据点gi对分类的影响,噪声点离模型越远,Ωi越小,对分类的影响就越小,最终的聚类效果越好,因此点云加权模糊C均值聚类算法的目标函数按如下公式表示:
于公式(3)中,uij为数据点对应的隶属度,其介于[0,1]之间,bi为聚类组i的聚类中心,dij=|bi-xj|为第i个聚类中心与第j个数据点间的欧式距离,xj为数据点坐标,s=2,C为聚类中心个数;
S112判断数据点gi到k近邻点的平均距离是否大于阈值,若是,则表示该数据点gi为噪声,删除,结束,若否,则执行S213,
S113对k近邻点进行点云权重聚类,用聚类中心作为新的数据点,即去除点云数据中的大尺度噪声,结束,通过迭代计算使公式(3)取最小值,按如下公式计算出聚类中心bi、对应的隶属度uij:
S114按如下公式计算出双边滤波因子μ:
于公式(6)中,kij为数据点gi的临近点,M(gi)为数据点gi的邻域点的隶属度,σc衡量了点gi到其邻域点的欧氏距离对该点的影响,σs表示点gi到邻域点的距离向量在法向上的投影对该点的影响,为滤波函数,/>为特征权重函数,x=||gi-kij||为数据点gi到邻域点的距离,<ni,gi-kij>为特征权重,所述滤波函数、特征权重函数分别按如下公式表示:
S115按如下公式对滤波数据进行更新:
gi=gi+μn (9);
S116遍历模型中所有数据点,即去除点云数据中的小尺度噪声,结束;
所述点云简化具体按照以下方案实施:
S121通过原始点云模型在X,Y,Z方向上的xmin,xmax,ymin,ymax,zmin,zmax,来确定Cell的大小,
S122根据实际需要确定栅格大小lx,ly,lz,从而确定模型在X,Y,Z方向被分成m,n,l份,即:
S123确定每个数据点gi在栅格中的索引号ai,bi,ci,计算方法如下:
按如下公式将数据点gi在栅格中的索引号转化为一维形式:
Indexgi=ai+(bi-1)×m+(ci-1)×m×n (12),
S124按如下公式计算体素栅格内所有点的重心,并用该重心代表栅格内的所有点,
S125遍历所有体素,得到简化后的点云数据。
特别的,所述S2具体按照以下方案实施:
S21将工件固定放置于机械臂前方,控制机械臂运动n次得到点云模型集合{p1,p2,…,pn},将各个直接获得的点云模型转换到机械臂初始拍摄位置的相机坐标系下,分析系统的坐标转换关系如下公式:
于公式(14)中,均为手眼关系矩阵,分别表示工具末端相对相机的位姿关系和相机相对工具末端的位姿关系,/>表示机械臂每次移动时的位姿,从机械臂系统获得,/>表示机械臂的初始拍摄位置;
S22通过点云融合将模型进行粗拼接,得到粗拼接模型;
S23在点云P中任意选一点Pi,在点云Q中找到距其最近的点Qj,对于存在的一些误匹配点对,引入以下约束进行去除,若(p1,q1),(p2,q2)为两对正确匹配的对应点,设e=||q1-p1||2,则这两对对应点应该满足以下约束:
(1)方向性约束:(p2-p1)(q2-q1)≥0,
(2)刚性约束:||q2-q1||2≤2(e+||p2-q1||2),
(3)匹配误差约束:||q2-q1||2≤e+||p2-q1||2;
S24粗拼接之后的两片点云对应的空间点集用{Pi|i=1,2,…,r}和{Qi|i=1,2,…,s}表示,P和Q不用一一对应,r、s无需相等,假设r>s,且两片点云有n个正确的对应点,求解这两组点集对应点之间的旋转和平移关系[R,T],从而使如下公式的目标函数最小,
S25通过全局优化和点云融合,即得到工件参考模型。
特别的,所述S2在得到工件参考模型后,按如下公式对其拼接精度进行检验,若满足需要,则结束,若不满足需要,重新进行工件参考模型的拼接,
于公式(15)中,N为模型点云中的点数量,为残差ei的平均值,
特别的,所述S3首先用SHOT描述子对工件参考模型实现粗配准,其次用ICP对工件参考模型实现精确配准;
所述现粗配准具体按照以下方案实施:
SHOT特征描述子在构建的局部参考系内,统计特征点周围的拓扑特征,将特征保存在直方图中,并对其进行归一化,特征点p邻域内的点记为pi,且满足||pi-p||≤R,其局部描述符M按如下公式计算:
于公式(15)中,di=||pi-p||2,采用特征分解法算法对M进行特征值分解,得到M的三个特征值及对应的特征向量,分别作为x+,y+,z+,相反方向记为x-,y-,z-,最终的x轴方向表示为:
同理得到z轴的方向,y轴方向通过z×x确定,即构建完成局部参考系,其具有旋转和平移不变性;
所述精确配准具体按照以下方案实施:
S321根据不同点云对应点间的距离,建立场景点云和参考点云的对应点集,
S322求满足对应点集平均距离最小的刚性变换参数,
S323应用得到的刚性变换参数对场景点云进行坐标变换,得到变换后的场景点云,
S324求参考点云和变换后的点云之间的平均距离,若小于设置的距离阈值,则迭代结束,否则以变换后的点云作为新的场景点云继续进行迭代计算,直到参考点云和变换点云之间的平均距离小于设置的距离阈值,即目标函数满足收敛精度要求。
特别的,所述直方图按如下方法构建:
将局部参考系按照2个径向分区、2个俯仰分区、8个方位角进行分区,获得32个子区间,分区完成后,记点p的法向量为n,球内点pi的法向量记为ni,设两个法向量的夹角为θi,则获得如下公式:
cosθi=n·ni (21),
将cosθi划分为m份,则可以建立32(m+1)份局部直方图,其中1表示球内邻域点在球内的位置,通过对邻域点在局部坐标系中的位置和方向角的计算,即完成直方图的构建。
特别的,所述S4按照以下方案实施:
S41根据两组点云之间的匹配关系,对两组点云之间的位姿转换关系进行初步估计,首先将参考点云的中心移动至场景点云中心处,可粗略计算出两组点云之间的平移向量T,假设参考点云关键点移动后为p',x为场景点云的关键点坐标,则有:
于公式(22)中,R为单位矩阵,其平方为1,因此上述公式可按如下公式化为求解H的最大值:
∑2xTRp'=tr(RT∑xp'T)=tr(RTH) (23),
于公式(23)中,H=∑xp'T,对H进行奇异值分解,得到如下公式:
H=USVT (24),
于公式(24)中,当R=VUT时,RTH可对角化,此时迹最大,即通过分解H,得到旋转矩阵R,并计算出平移矩阵T;
S42利用位姿变换矩阵,将参考模型和场景点云模型对齐,实现工件的位置找正。
本发明提供一种利用点云配准技术和三维重建技术的工件位置找正方法,具有以下有益效果:
1、无需知道工件模型,只需要参考点云即可,较为方便;
2、公国点云降噪算法和滤波算法进行点云数据处理,在去除点云数据噪声的同时保留了图像的细节,使模型更加接近工件;
3、多角度模型重建技术可以对多角度机器人的点云测量数据实现从粗拼接到ICP精拼接,并通过三维重建得到工件的完整点云模型;
4、点云配准技术可以快速得到参考模型和场景点云模型之间的位姿转换关系,对场景点云进行位姿估计,从而将参考模型和场景点云模型对齐,实现工件的位置找正,方便快捷。
【附图说明】
图1为采用本发明经过点云处理后的示意图,其中左侧图为点云去噪图,右侧为点云简化图;
图2为本发明点云表面误差分布图;
图3采用本发明粗拼接后获得的结果示意图;
图4采用本发明精拼接后获得的结果示意图;
图5采用本发明点云配准后获得的结果示意图。
【具体实施方式】
本发明提供一种利用点云配准技术和三维重建技术的工件位置找正方法,首先对采集的点云进行去噪及简化等预处理;其次以机械臂作为运动装置辅助完成工件参考模型的三维重建;最后进行相关点云配准算法,得到实物模型和参考模型的位姿变换矩阵,从而将实物模型和参考模型对齐,完成焊件的位置找正。为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进一步详细说明。
S1对获得的点云数据进行预处理,获得点云模型
点云预处理包括点云去噪和点云简化两部分,其中点云去噪采用三维点云去噪算法:利用点云加权模糊C均值聚类算法去除大尺度噪声,同时对点云进行聚类,再对那些离点云模型较近的小尺度噪声使用双边滤波算法进行处理,在去除噪声的同时能够尽可能保留图像的细节。采用体素化网格法实现点云简化,即模型被划分为若干个体素栅格,每个体素栅格中的所有点用一个重心点来代替,从而在保证点云特征的情况下实现对点云的下采样,同时可以通过调整体素栅格的大小来获得不同采样密度的点云模型。
S11点云去躁
S111利用点云加权模糊C均值聚类算法计算数据点gi的密度ρi,密度ρi具体按如下公式进行计算:
公式(1)中,gi为数据点,d(gi,gj)为两个数据点间的欧氏距离,gj为数据点gi的k个邻域点,当k个数据点距离较近时,d(gi,gj)较小,ρi较大,这对聚类影响较大,因此按如下公式对ρi进行归一化:
于公式(2)中,r为数据点到聚类中心的距离,Ωi为数据点gi对分类的影响,噪声点离模型越远,Ωi越小,对分类的影响就越小,最终的聚类效果越好,因此点云加权模糊C均值聚类算法的目标函数按如下公式表示:
于公式(3)中,uij为数据点对应的隶属度,其介于[0,1]之间,bi为聚类组i的聚类中心,dij=|bi-xj|为第i个聚类中心与第j个数据点间的欧式距离,xj为数据点的坐标,s=2,C为聚类中心个数,
S112判断数据点gi到k近邻点的平均距离是否大于阈值,若是,则表示该数据点gi为噪声,删除,结束,若否,则执行S213,
S113对k近邻点进行点云权重聚类,用聚类中心作为新的数据点,即去除点云数据中的大尺度噪声,结束,通过迭代计算使公式(3)取最小值,按如下公式计算出聚类中心bi、对应的隶属度uij:
S114按如下公式计算出双边滤波因子μ:
于公式(6)中,kij为数据点gi的临近点,M(gi)为数据点gi的邻域点的隶属度,σc衡量了点gi到其邻域点的欧氏距离对该点的影响,σs表示点gi到邻域点的距离向量在法向上的投影对该点的影响,为滤波函数,/>为特征权重函数,x=||gi-kij||为数据点gi到邻域点的距离,<ni,gi-kij>为特征权重,所述滤波函数、特征权重函数分别按如下公式表示:
S115将公式(6)带入如下公式对滤波数据进行更新:
gi=gi+μn (9);
S116遍历模型中所有数据点,即去除点云数据中的小尺度噪声,结束,如此即在去除噪声的同时保留了图像细节,从而使最终获得的点云模型更加接近工件;
S12点云简化
S121通过原始点云模型在X,Y,Z方向上的xmin,xmax,ymin,ymax,zmin,zmax,来确定Cell的大小,
S122根据实际需要确定栅格大小lx,ly,lz,从而确定模型在X,Y,Z方向被分成m,n,l份,即:
S123确定每个数据点gi在栅格中的索引号ai,bi,ci,计算方法如下:
按如下公式将数据点gi在栅格中的索引号转化为一维形式:
S124按如下公式计算体素栅格内所有点的重心,并用该重心代表栅格内的所有点,
S125遍历所有体素,得到简化后的点云数据,获得去躁、简化后的点云模型,点云模型如图1所示。
S2多角度模型重建
利用高精度的机械臂,可以将相机在不同位置处扫描的点云模型转换到同一坐标系下,从而实现模型的粗拼接,然后利用ICP算法求得相邻点云的位姿转换关系,实现点云的精拼接,最后进行全局优化,并对拼接后的模型进行点云融合处理,以去除冗余点云,获得如图2所示的点云表面误差分布图。
S21将工件固定放置于机械臂前方,控制机械臂运动n次得到点云模型集合{p1,p2,…,pn},将各个直接获得的点云模型转换到机械臂初始拍摄位置的相机坐标系下,分析系统的坐标转换关系如下公式:
于公式(14)中,均为手眼关系矩阵,分别表示工具末端相对相机的位姿关系和相机相对工具末端的位姿关系,/>表示机械臂每次移动时的位姿,从机械臂系统获得,/>表示机械臂的初始拍摄位置;
S22通过点云融合将模型进行粗拼接,得到粗拼接模型,粗拼接模型如图3所示;
S23在点云P中任意选一点Pi,在点云Q中找到距其最近的点Qj,对于存在的一些误匹配点对,引入以下约束进行去除,若(p1,q1),(p2,q2)为两对正确匹配的对应点,设e=||q1-p1||2,则这两对对应点应该满足以下约束:
(1)方向性约束:(p2-p1)(q2-q1)≥0,
(2)刚性约束:||q2-q1||2≤2(e+||p2-q1||2),
(3)匹配误差约束:||q2-q1||2≤e+||p2-q1||2;
S24粗拼接之后的两片点云对应的空间点集用{Pi|i=1,2,…,r}和{Qi|i=1,2,…,s}表示,P和Q不用一一对应,r、s无需相等,假设r>s,且两片点云有n个正确的对应点,求解这两组点集对应点之间的旋转和平移关系[R,T],从而使如下公式的目标函数最小,
S25通过全局优化和点云融合,即得到工件参考模型,工件参考模型如图4所示。
为了确保点云模型和工件更加近似,按如下公式对拼接精度进行检验,
最终计算结果为0.066mm,满足机器人辅助加工作业中工件重建精度的要求,结束。
S3对参考模型和点云模型进行点云配准,得到参考模型和点云模型的位姿变换矩阵
S31对降采样得到的关键点计算其SHOT特征描述子
SHOT特征描述子在构建的局部参考系内,统计特征点周围的拓扑特征,将特征保存在直方图中,并对其进行归一化,特征点p邻域内的点记为pi,且满足||pi-p||≤R,其局部描述符M按如下公式计算:
于公式(15)中,di=||pi-p||2,采用特征分解法算法对M进行特征值分解,得到M的三个特征值及对应的特征向量,分别作为x+,y+,z+,相反方向记为x-,y-,z-,最终的x轴方向表示为:
同理得到z轴的方向,y轴方向通过z×x确定,即构建完成局部参考系,其具有旋转和平移不变性;
为了计算特征,将上述局部参考系按照2个径向分区、2个俯仰分区、8个方位角进行分区,获得32个子区间,分区完成后,记点p的法向量为n,球内点pi的法向量记为ni,设两个法向量的夹角为θi,则获得如下公式:
cosθi=n·ni (21),
将cosθi划分为m份,则可以建立32(m+1)份局部直方图,其中1表示球内邻域点在球内的位置,通过对邻域点在局部坐标系中的位置和方向角的计算,即完成直方图的构建。
S32 ICP精确位姿矩阵估计
经过点云初步配准后,两组点云匹配点之间的距离已经在一定范围内,因此可以利用ICP算法在场景点云中寻找参考模型点云最近的点,从而完成点云精确配准,执行过程如下:
S321根据不同点云对应点间的距离,建立场景点云和参考点云的对应点集,
S322求满足对应点集平均距离最小的刚性变换参数,
S323应用得到的刚性变换参数对场景点云进行坐标变换,得到变换后的场景点云,
S324求参考点云和变换后的点云之间的平均距离,若小于设置的距离阈值,则迭代结束,否则以变换后的点云作为新的场景点云继续进行迭代计算,直到目标函数满足收敛精度要求,结果如图5所示。
S4工件找正
S41根据两组点云之间的匹配关系,对两组点云之间的位姿转换关系进行初步估计,首先将参考点云的中心移动至场景点云中心处,可粗略计算出两组点云之间的平移向量T,假设参考点云关键点移动后为p',x为场景点云的关键点坐标,则有:
于公式(22)中,R为单位矩阵,其平方为1,因此上述公式可按如下公式化为求解H的最大值:
∑2xTRp'=tr(RT∑xp'T)=tr(RTH) (23),
于公式(23)中,H=∑xp'T,对H进行奇异值分解,得到如下公式:
H=USVT (24),
于公式(24)中,当R=VUT时,RTH可对角化,此时迹最大,即通过分解H,得到旋转矩阵R,并计算出平移矩阵T,位姿转换矩阵如下:
S42利用位姿变换矩阵,将参考模型和场景点云模型对齐,实现工件的位置找正。
结合最终获得的示意图,可知采用本发明进行工件位置找正方法可行,且误差较小,从而可以确保机器人运动路径的准确。
于本发明中,对于有CAD模型的工件,实现预建立的工件参考点云模型和实际点云模型对齐,使系统可以实时感知工件的位姿情况,实现工件的定位找正。而对于无CAD模型的工件,利用参考模型的三维重建技术,根据高精度机械臂的运动关系及手眼标定的结果进行多角度点云模型粗拼接,再应用ICP算法对其进行精拼接,通过点云融合得到工件件参考模型,在利用电源配准技术,将实际场景中的工件模型和建立的参考模型对齐,得到两者的位姿转换关系,使系统能够实时感知工件的位姿,从而实现工件的定位找正。
Claims (5)
1.利用点云配准技术和三维重建技术的工件位置找正方法,其特征在于,包括以下步骤:
S1对获得的点云数据进行预处理,获得点云模型;
S2利用三维重建技术建立参考模型,所述S2具体按照以下方案实施:
S21将工件固定放置于机械臂前方,控制机械臂运动n次得到点云模型集合{p1,p2,…,pn},将各个直接获得的点云模型转换到机械臂初始拍摄位置的相机坐标系下,分析系统的坐标转换关系如下公式:
于公式(14)中,均为手眼关系矩阵,分别表示工具末端相对相机的位姿关系和相机相对工具末端的位姿关系,/>表示机械臂每次移动时的位姿,从机械臂系统获得,表示机械臂的初始拍摄位置;
S22通过点云融合将模型进行粗拼接,得到粗拼接模型;
S23在点云P中任意选一点Pi,在点云Q中找到距其最近的点Qj,对于存在的一些误匹配点对,引入以下约束进行去除,若(p1,q1),(p2,q2)为两对正确匹配的对应点,设e=||q1-p1||2,则这两对对应点应该满足以下约束:
(1)方向性约束:(p2-p1)(q2-q1)≥0,
(2)刚性约束:||q2-q1||2≤2(e+||p2-q1||2),
(3)匹配误差约束:||q2-q1||2≤e+||p2-q1||2;
S24粗拼接之后的两片点云对应的空间点集用{Pi|i=1,2,…,r}和{Qi|i=1,2,…,s}表示,P和Q不用一一对应,r、s无需相等,假设r>s,且两片点云有n个正确的对应点,求解这两组点集对应点之间的旋转和平移关系[R,T],从而使如下公式的目标函数最小,
S25通过全局优化和点云融合,即得到工件参考模型;
S3对参考模型和点云模型进行点云配准,得到参考模型和点云模型的位姿变换矩阵,所述S3首先用SHOT描述子对工件参考模型实现粗配准,其次用ICP对工件参考模型实现精确配准;
所述现粗配准具体按照以下方案实施:
SHOT特征描述子在构建的局部参考系内,统计特征点周围的拓扑特征,将特征保存在直方图中,并对其进行归一化,特征点p邻域内的点记为pi,且满足||pi-p||≤R,其局部描述符M按如下公式计算:
于公式(15)中,di=||pi-p||2,采用特征分解法算法对M进行特征值分解,得到M的三个特征值及对应的特征向量,分别作为x+,y+,z+,相反方向记为x-,y-,z-,最终的x轴方向表示为:
同理得到z轴的方向,y轴方向通过z×x确定,即构建完成局部参考系,其具有旋转和平移不变性;
所述精确配准具体按照以下方案实施:
S321根据不同点云对应点间的距离,建立场景点云和参考点云的对应点集,
S322求满足对应点集平均距离最小的刚性变换参数,
S323应用得到的刚性变换参数对场景点云进行坐标变换,得到变换后的场景点云,
S324求参考点云和变换后的点云之间的平均距离,若小于设置的距离阈值,则迭代结束,否则以变换后的点云作为新的场景点云继续进行迭代计算,直到目标函数满足收敛精度要求;
S4利用位姿变换矩阵将点云模型和参考模型对齐,即完成工件位置找正,所述S4按照以下方案实施:
S41根据两组点云之间的匹配关系,对两组点云之间的位姿转换关系进行初步估计,首先将参考点云的中心移动至场景点云中心处,可粗略计算出两组点云之间的平移向量T,假设参考点云关键点移动后为p',x为场景点云的关键点坐标,则有:
于公式(22)中,R为单位矩阵,其平方为1,因此上述公式可按如下公式化为求解H的最大值:
Σ2xTRp'=tr(RTΣxp'T)=tr(RTH) (23),
于公式(23)中,H=Σxp'T,对H进行奇异值分解,得到如下公式:
H=USVT (24),
于公式(24)中,当R=VUT时,RTH可对角化,此时迹最大,即通过分解H,得到旋转矩阵R,并计算出平移矩阵T;
S42利用位姿变换矩阵,将参考模型和场景点云模型对齐,实现工件的位置找正。
2.根据权利要求1所述的利用点云配准技术和三维重建技术的工件位置找正方法,其特征在于,所述S1采用视觉传感器获取点云数据,该视觉传感器为二维传感器。
3.根据权利要求1所述的利用点云配准技术和三维重建技术的工件位置找正方法,其特征在于,所述S1中预处理包括点云去噪和点云简化,所述点云去噪具体按照以下方案实施:
S111利用点云加权模糊C均值聚类算法计算数据点gi的密度ρi,密度ρi具体按如下公式进行计算:
公式(1)中,gi为数据点,d(gi,gj)为两个数据点间的欧氏距离,gj为数据点gi的k个邻域点,当k个数据点距离较近时,d(gi,gj)较小,ρi较大,这对聚类影响较大,因此按如下公式对ρi进行归一化:
于公式(2)中,r为数据点到聚类中心的距离,Ωi为数据点gi对分类的影响,噪声点离模型越远,Ωi越小,对分类的影响就越小,最终的聚类效果越好,因此点云加权模糊C均值聚类算法的目标函数按如下公式表示:
于公式(3)中,uij为数据点对应的隶属度,其介于[0,1]之间,bi为聚类组i的聚类中心,dij=|bi-xj|为第i个聚类中心与第j个数据点间的欧式距离,xj为数据点坐标,s=2,C为聚类中心个数;
S112判断数据点gi到k近邻点的平均距离是否大于阈值,若是,则表示该数据点gi为噪声,删除,结束,若否,则执行S113;
S113对k近邻点进行点云权重聚类,用聚类中心作为新的数据点,即去除点云数据中的大尺度噪声,结束,通过迭代计算使公式(3)取最小值,按如下公式计算出聚类中心bi、对应的隶属度uij:
S114按如下公式计算出双边滤波因子μ:
于公式(6)中,kij为数据点gi的临近点,M(gi)为数据点gi的邻域点的隶属度,σc衡量了点gi到其邻域点的欧氏距离对该点的影响,σs表示点gi到邻域点的距离向量在法向上的投影对该点的影响,为滤波函数,/>为特征权重函数,x=||gi-kij||为数据点gi到邻域点的距离,<ni,gi-kij>为特征权重,所述滤波函数、特征权重函数分别按如下公式表示:
S115按如下公式对滤波数据进行更新:
gi=gi+μn (9);
S116遍历模型中所有数据点,即去除点云数据中的小尺度噪声,结束;
所述点云简化具体按照以下方案实施:
S121通过原始点云模型在X,Y,Z方向上的xmin,xmax,ymin,ymax,zmin,zmax,来确定Cell的大小,
S122根据实际需要确定栅格大小lx,ly,lz,从而确定模型在X,Y,Z方向被分成m,n,l份,即:
S123确定每个数据点gi在栅格中的索引号ai,bi,ci,计算方法如下:
按如下公式将数据点gi在栅格中的索引号转化为一维形式:
S124按如下公式计算体素栅格内所有点的重心,并用该重心代表栅格内的所有点,
S125遍历所有体素,得到简化后的点云数据。
4.根据权利要求1所述的利用点云配准技术和三维重建技术的工件位置找正方法,其特征在于,所述S2在得到工件参考模型后,按如下公式对其拼接精度进行检验,若满足需要,则结束,若不满足需要,重新进行工件参考模型的拼接,
于公式(15)中,N为模型点云中的点数量,为残差ei的平均值。
5.根据权利要求1所述的利用点云配准技术和三维重建技术的工件位置找正方法,其特征在于,所述直方图按如下方法构建:
将局部参考系按照2个径向分区、2个俯仰分区、8个方位角进行分区,获得32个子区间,分区完成后,记点p的法向量为n,球内点pi的法向量记为ni,设两个法向量的夹角为θi,则获得如下公式:
cosθi=n·ni (21),
将cosθi划分为m份,则可以建立32(m+1)份局部直方图,其中1表示球内邻域点在球内的位置,通过对邻域点在局部坐标系中的位置和方向角的计算,即完成直方图的构建。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110806722.6A CN113421291B (zh) | 2021-07-16 | 2021-07-16 | 利用点云配准技术和三维重建技术的工件位置找正方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110806722.6A CN113421291B (zh) | 2021-07-16 | 2021-07-16 | 利用点云配准技术和三维重建技术的工件位置找正方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113421291A CN113421291A (zh) | 2021-09-21 |
CN113421291B true CN113421291B (zh) | 2023-10-24 |
Family
ID=77721785
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110806722.6A Active CN113421291B (zh) | 2021-07-16 | 2021-07-16 | 利用点云配准技术和三维重建技术的工件位置找正方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113421291B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114155351B (zh) * | 2021-11-11 | 2022-09-23 | 埃洛克航空科技(北京)有限公司 | 三维重建网格的特征过滤方法、系统及电子设备 |
CN114373015B (zh) * | 2021-12-28 | 2024-05-31 | 易思维(杭州)科技股份有限公司 | 一种基于冗余信息进行321定位的方法 |
CN114453981B (zh) * | 2022-04-12 | 2022-07-19 | 北京精雕科技集团有限公司 | 工件找正方法及装置 |
CN116416173A (zh) * | 2023-03-24 | 2023-07-11 | 哈尔滨工业大学 | 一种用于薄壁工件加工检测的点云拼接方法及系统 |
CN117523206B (zh) * | 2024-01-04 | 2024-03-29 | 南京航空航天大学 | 一种基于跨源点云与多模态信息的自动化装配方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609951A (zh) * | 2012-03-29 | 2012-07-25 | 重庆大学 | 光伏电池板遮荫部分的检测方法 |
CN107121967A (zh) * | 2017-05-25 | 2017-09-01 | 西安知象光电科技有限公司 | 一种激光在机找正和工序间测量装置 |
CN109934855A (zh) * | 2018-12-28 | 2019-06-25 | 南京理工大学 | 一种基于点云的带电作业场景电力部件三维重建方法 |
CN110570019A (zh) * | 2019-08-14 | 2019-12-13 | 中国地质大学(武汉) | 一种基于宽度学习的烧结过程综合焦比时序预测方法 |
CN110910433A (zh) * | 2019-10-29 | 2020-03-24 | 太原师范学院 | 一种基于深度学习的点云匹配方法 |
CN111754464A (zh) * | 2020-06-03 | 2020-10-09 | 北京汉飞航空科技有限公司 | 一种类pd算法结合icp算法的零件精确找正方法 |
CN111784770A (zh) * | 2020-06-28 | 2020-10-16 | 河北工业大学 | 基于shot和icp算法的无序抓取中的三维姿态估计方法 |
CN112013792A (zh) * | 2020-10-19 | 2020-12-01 | 南京知谱光电科技有限公司 | 一种复杂大构件机器人面扫描三维重建方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8472686B2 (en) * | 2010-11-08 | 2013-06-25 | Cranial Technologies, Inc. | Method and apparatus for orienting image representative data |
WO2018208791A1 (en) * | 2017-05-08 | 2018-11-15 | Aquifi, Inc. | Systems and methods for inspection and defect detection using 3-d scanning |
-
2021
- 2021-07-16 CN CN202110806722.6A patent/CN113421291B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609951A (zh) * | 2012-03-29 | 2012-07-25 | 重庆大学 | 光伏电池板遮荫部分的检测方法 |
CN107121967A (zh) * | 2017-05-25 | 2017-09-01 | 西安知象光电科技有限公司 | 一种激光在机找正和工序间测量装置 |
CN109934855A (zh) * | 2018-12-28 | 2019-06-25 | 南京理工大学 | 一种基于点云的带电作业场景电力部件三维重建方法 |
CN110570019A (zh) * | 2019-08-14 | 2019-12-13 | 中国地质大学(武汉) | 一种基于宽度学习的烧结过程综合焦比时序预测方法 |
CN110910433A (zh) * | 2019-10-29 | 2020-03-24 | 太原师范学院 | 一种基于深度学习的点云匹配方法 |
CN111754464A (zh) * | 2020-06-03 | 2020-10-09 | 北京汉飞航空科技有限公司 | 一种类pd算法结合icp算法的零件精确找正方法 |
CN111784770A (zh) * | 2020-06-28 | 2020-10-16 | 河北工业大学 | 基于shot和icp算法的无序抓取中的三维姿态估计方法 |
CN112013792A (zh) * | 2020-10-19 | 2020-12-01 | 南京知谱光电科技有限公司 | 一种复杂大构件机器人面扫描三维重建方法 |
Non-Patent Citations (2)
Title |
---|
"Dense 3D Scene Reconstruction from Multiple Spherical Images for 3-DoF+ VR Applications";Thiago L. T. da Silveira;《2019 IEEE Conference on Virtual Reality and 3D User Interfaces (VR)》;全文 * |
《 三维点云数据处理的技术研究》;王丽辉;《中国博士学位论文全文数据库》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113421291A (zh) | 2021-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113421291B (zh) | 利用点云配准技术和三维重建技术的工件位置找正方法 | |
CN111775146B (zh) | 一种工业机械臂多工位作业下的视觉对准方法 | |
CN107301654B (zh) | 一种多传感器的高精度即时定位与建图方法 | |
CN110223345B (zh) | 基于点云的配电线路作业对象位姿估计方法 | |
CN112669385B (zh) | 基于三维点云特征的工业机器人工件识别与位姿估计方法 | |
CN111897349A (zh) | 一种基于双目视觉的水下机器人自主避障方法 | |
CN111089569A (zh) | 一种基于单目视觉的大型箱体测量方法 | |
CN110634161A (zh) | 一种基于点云数据的工件位姿快速高精度估算方法及装置 | |
Lin et al. | Robotic grasping with multi-view image acquisition and model-based pose estimation | |
CN108876852B (zh) | 一种基于3d视觉的在线实时物体识别定位方法 | |
CN115147437B (zh) | 机器人智能引导加工方法与系统 | |
CN112509063A (zh) | 一种基于边缘特征匹配的机械臂抓取系统及方法 | |
CN113781561B (zh) | 基于自适应高斯权快速点特征直方图的目标位姿估计方法 | |
CN113393524B (zh) | 一种结合深度学习和轮廓点云重建的目标位姿估计方法 | |
CN116766194A (zh) | 基于双目视觉的盘类工件定位与抓取系统和方法 | |
CN113172632A (zh) | 一种基于图像的简化机器人视觉伺服控制方法 | |
CN114001651B (zh) | 一种基于双目视觉测量和先验检测数据的大型细长筒类构件位姿原位测量方法 | |
Zhang et al. | Deep learning-based robot vision: High-end tools for smart manufacturing | |
CN112530267B (zh) | 一种基于计算机视觉的机械臂智能示教方法及应用 | |
CN116012442A (zh) | 一种机械臂末端位姿自动回正的视觉伺服方法 | |
CN114004900A (zh) | 一种基于点线面特征的室内双目视觉里程计方法 | |
Gu et al. | Research on static vision-based target localization for astronaut assistant robots | |
Tellaeche et al. | 6DOF pose estimation of objects for robotic manipulation. A review of different options | |
Qi et al. | Error modeling and compensation of 3d scanning robot system based on PSO-RBFNN | |
CN116394235B (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 |