首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于机械臂辅助的多视角航空构件三维点云全局拼接方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:电子科技大学

摘要:本发明公开了一种基于机械臂辅助的多视角航空构件三维点云全局拼接方法。第一步,粗拼接:根据手眼关系和机械臂位姿的坐标系转换,将多视角点云同一转换到机械臂基坐标系上得到初步粗拼接结果。基于同名尺度不变特征转换关键点的粗拼接方法对初步粗拼接结果进行位移补偿,得到了相对位置较好的粗拼接结果。第二步,精拼接:建立多视场点云的全局约束关系,并利用KD在重叠区域中匹配点对关系,并综合点云的点到点、点到面和面到面的几何属性将错误匹配的点对剔除,保证点对准确度的同时也将点对数量尽可能减小,保证点对数量足够进行配准。并且在ICP迭代过程中,建立多视场点云的权重自调整配准系统,将错误点对在配准过程中的影响降到最低,一次性得到所有点云的刚体转换参数即最优的点云转换参数,提高了多视场点云的拼接精度,使待测物的三维形貌得到良好的还原效果。

主权项:1.一种基于机械臂辅助的多视角航空构件三维点云全局拼接方法,其特征在于,包括:1、对多视角点云进行粗拼接1.1、设共拍摄组视角的标定板图像,待测物和基坐标相对位置固定不变,第i个视角和第j,j≠i个视角拍摄有坐标转换关系: bHe,i·eHc·cHt,i=bHe,j·eHc·cHt,j其中,bHe,i,bHe,j分别为第i、j个视角机械臂末端坐标系到基坐标系的转换矩阵,cHt,i,cHt,j分别为待测物坐标系到相机坐标系的转换矩阵,下标i和j表示视角序号,使用Tsai-Lenz算法求解可得手眼矩阵eHc;1.2、基于图像重投影误差对手眼矩阵建立修正目标函数,具体步骤如下:1.2.1、记标定板上某一个角点在待测物坐标系上的坐标为Ψ,则在第i个视角拍摄时,其对应的相机坐标系上的坐标为Ψi,将其转换到第j个视角后投影至图像坐标系上,与该点第j个视角对应的图像坐标oj构成图像重投影误差为: 其中,zc,i为尺度因子,QL为相机的内参矩阵,分别为3个旋转向量和3个平移分量,为遗传算法优化参数,为遗传算法优化参数构成的手眼矩阵;1.2.2、使用遗传算法优化参数通过罗格里德变换得到旋转矩阵平移分量构成平移矩阵得到优化后的手眼矩阵为: 1.3、将标定板替换为待测物,拍摄得n个视角的点云,记第i个视角的机械臂位姿矩阵为i=1,2,…,n,第i个视角点云集的第k个点在相机坐标系上一点为记转换到机械臂基坐标系上的第i,i=1,2,…,n个视角的点云集为Pi,对应的点数记为则点云集Pi的第k,个点记为Pi,k=xi,k,yi,k,zi,kT,则转换到机械臂基坐标下变成: 将所有视角点云代入上式中都转换到机械臂的基坐标系上,得到所有点云集P={P1,P2,…,Pn},即为多视角点云基于手眼矩阵的粗拼接效果;1.4、使用同名SIFT关键点对多视角点云进行位移补偿:1.4.1、对n个视角的点云进行统计滤波和均匀采样,此时点云记为第i,i=1,2,…,n个点云的点数为其第k,个点记为1.4.2、对分别进行SIFT关键点检测,得到每个点云特定位置的关键点集将关键点集分别与关键点集的所有点两两匹配构成同名点,记第i,i=2,3,…,n个关键点集与的第j,个同名点为其中,为关键点集中关键点的数量;1.4.3、利用同名点的位置差计算第2~n个点云在x,y,z方向上的平移量,记同名点的坐标分别为记第i,i=2,3,…,n个滤波前后的点云Pi、经过平移后分别为Ωi、则滤波前后的点云集最终粗拼接结果分别为Ω={Ω1,Ω2,…,Ωn},其中Ω1=P1,记点云Ωi的第k,个点为记点云第j个点其计算公式如下: 其中,为常数;2、使用全局ICP拼接方法对粗拼接点云进行精拼接2.1、通过八叉树寻找粗拼接多视角点云的重叠区域来进建立全局约束关系2.1.1、点云集中任取2个不同视角的点云构成一组点集对,组成点集对个数为N,则得到点集对矩阵S为: 其中,第i′行的第1列、第2列元素分别为Si′,1、Si′,2,表示对应点集对的序号,2.1.2、接着,通过遍历点集对的重叠区域点数来确定次点集对是否有约束关系,记第i′个点集对的重叠区域点对数记为i′=1,2,…,N,的初始值为0,初始化i′=1,为两两点云集重叠区域的最少点数阈值为Toverlap,则得到点集对的重叠区域点对数的具体过程如下:2.1.2.1、对于点集对对点云集建立八叉树2.1.2.2、初始化k=1;2.1.2.3、对于点云集的第k个点判断该点是否在八叉树的最大包围盒中,若是,则进入步骤2.1.2.4,否则,k=k+1,重复步骤2.1.2.3;2.1.2.4、以点为查询点,在八叉树中进行体素最近邻搜索,若查询点所在体素中的存在点云集的点,则认为点与其近邻点为点集对重叠区域的点对,重叠区域点对数判断k是否大于等于如果大于等于,则进入步骤2.1.2.5,否则k=k+1,返回步骤2.1.2.3;2.1.2.5、判断i′是否大于等于N,如果大于等于,则得到所有点集对的重叠点数,进入步骤2.1.3,否则,i′=i′+1,返回步骤2.1.2.1;2.1.3、遍历所有点集对i′=1,2,…,N,若则保留此点集对到新的点集对矩阵,否则,剔除该点集对,不保留到新的点集对矩阵中,得到新的点集对矩阵S′M×2,M为新的点集对个数,进入步骤2.2;2.2、进入全局ICP精拼接迭代即外层迭代:记全局ICP拼接循环的最大迭代次数为Tq,记点云集Ωi,i=1,2,…,n经过q次刚体变换后为qΩi,q=1,2,…,Tq,i=1,2,…n,其第j个点坐标记为j=1,2,…Ni,同理,令采样后点云集经过q次刚体变换后为q=1,2,…,Tq,i=1,2,…n,其第j个点坐标记为令初始迭代次数q=1,具体迭代步骤如下:2.2.1、对于第q次全局ICP迭代,使用步骤2.1.2的方法重新确定点集对重叠区域,得到重叠区域内点对集,记第i′,i′=1,2,…M个点集对重叠区域内的点对集为其点对数为其中,则有第i′,i′=1,2,…M个重叠点对集的第k个点对记为得到重叠区域总点集2.2.2、在重叠点对集中重新匹配点对,具体步骤如下:2.2.2.1、遍历重叠点集,令i′=1;2.2.2.2、对于第i′个重叠点集对建立KD树2.2.2.3、开始搜索点对,令j=1;2.2.2.4、对于点集的第j个点作为搜索点,在KD树中进行最近邻搜索找到其最近点令记为一个点对;2.2.2.5、若j=j+1,返回步骤2.2.2.4,否则,记点集以及点集则有为第i′个点对集,进入步骤2.2.2.6;2.2.2.6、若i′<M,i′=i′+1,返回步骤2.2.2.2,否则,输出初始点对总集进入步骤2.2.3;2.2.3、基于多特征的点对阈值剔除2.2.3.1、欧式距离剔除记点q=1,2,…,Tq,i′=1,2,…,M,的坐标分量为点的坐标分量为则第i′个初始点对集的第j个点对的欧式距离计算公式如下: 判断欧式距离是否大于剔除阈值如果大于,则剔除第j个点,否则保留,其中,剔除阈值为: 其中,为常数系数;2.2.3.2、点到切平面距离剔除计算第i′,i=1,2,…,M个点对集的第j,个点对的法向量为则第i′,i=1,2,…,M个初始点对集对应的法向量集合记为记点q=1,2,…,Tq,i=1,2,…,M,的坐标分量为其对应法向量分量为记点的坐标分量为其对应法向量分量为则第i′个初始点对集的第j个点对的点到切平面距离计算公式为 将点到切平面距离在范围或的点剔除,其余的保留,其中,q=1,2,…,Tq,i′=1,2,…,M,剔除阈值根据以下步骤确定:点对集对应的点到切平面距离的集合为qΦi′为集合qdi′的中位数,qEi′为集合qdi′的绝对中位差,对于集合qdi′,其估计标准差为: 则点到切平面距离的剔除阈值设为: 其中,g为常数系数;2.2.3.3、点对粗糙度剔除计算第i′,i′=1,2,…,M个点对集的第j,个点对q=1,2,…,Tq的粗糙度为点集对应的粗糙度集合为点集对应的粗糙度集合为则第i′,i′=1,2,…,M个初始点对集对应的粗糙度集合记为判断粗糙度差值是否大于剔除阈值Tr,如果大于,则剔除第j个点,否则保留;2.2.3.4、点对法线间夹角剔除记点对q=1,2,…,Tq,i′=1,2,…,M,的法线间夹角为计算法线间夹角 若法线间夹角大于180°,则然后判断,如果法线间夹角大于除阈值Tθ,则剔除第j个点,否则保留;在步骤2.2.3.1~2.2.3.4剔除过程中,设定2个剔除条件调节阈值TN1和TN2,按照点对集的点对数量将所有点对集划分为三类:当时,令g=g1,Tθ=Tθ,1,Tr=Tr,1;当时,令g=g2,Tθ=Tθ,2,Tr=Tr,2;当时,令g=g3,Tθ=Tθ,3,Tr=Tr,3;其中,g1≥g2≥g3,Tθ,1≥Tθ,2≥Tθ,3,Tr,1≥Tr,2≥Tr,3;记第i′个剔除错误点对后的点对集为q=1,2,…,Tq,为剔除后该点对集的点对数量,则有点对总集合可写成记所有M个点对集的所有点对个数总和为qno,每次外层迭代都不同,有: 记点对总集合的第j,j=1,2,…,qno个点对为则有2.2.4、建立多视角点云权重自调整配准系统2.2.4.1、除第1个视觉的点云外,其他点云为松散点云,第q次迭代的目标变换参数为qε=[qε2,qε3,…,qεn]T,其中qεi=[qαi,gβi,qγi,qtx,i,qty,i,qtz,i]T,i=2,3,…n为当前迭代中第i个点云的目标变换参数,qαi、qβi、qγi分别为点云绕固定点云坐标系x、y、z轴的3个旋转参数,qtx,i、qty,i、qtz,i分别为沿固定点云坐标系x、y、z轴的3个平移参数,则第i,i=2,3,…,n个点云的刚体变换齐次矩阵为: 2.2.4.2、记第i′,i′=1,2,…,M个点对集的第j,个点对的坐标分别为其对应的法向量分别为则在第q,q=1,2,…,Tq次ICP迭代中,第i′=1,2,…,M个点对集的第j,个点对的点到切平面距离为: 2.2.4.3、则点对总集合的所有点对的点到切平面距离平方和用线性表达式替代上式表示为: 其中,qA是qno×np维的系数矩阵,np=6n-1是所有松散点云的转换参数总数,qAj,j=1,2,…,qno是qA的第j行元素,其元素是关于点对以及法向量的函数,qA的构造步骤如下:首先初始化qA为全零矩阵;接着,构造qA的列索引向量其中 然后构造qA的行索引向量qAh_i′,i′=1,2,…,M对应为第i′个点对集点对的行索引矩阵: 其中,qArow为当前已遍历的点对集的点对总数,有: 对于第i′,i′=1,2,…,M个点对集的第个点对都有对应的系数向量,分别为形如下式: 其中,元素的构造如下: 则对于第i′,i′=1,2,…,M个点对集有以下两种情况:若S′i′,1=1,系数矩阵qA的第r,r∈qAh_i′行,第c7、c8、c9、c10、c11、c12列的值如下: 若S′o′,1≠1,系数矩阵qA的第r,r∈qAh_i′行,第c1、c2、c3、c4、c5、c6列的值如下: 第c7、c8、c9、c10、c11、c12列的值如下: 其中,表示列索引矩阵AL的第S′i′,1,i′=1,2,…,M行m,m=1,2,…,6列的元素值,表示列索引矩阵AL的第S′i′,2,i′=1,2,…,M行m=1,2,…,6列的元素值;2.2.4.4、接下来,进入配准系统迭代即内层迭代循环,设当前配准系统迭代次数为λ=1,权重调整标志为权重调整次数为Nw=0,点对激活标志为no×1维的全一向量;设内层最大迭代次数为λmax,最大权重调整次数为Krasus终止标准和最大线性化误差的收敛阈值为分别2.2.4.5、记第q次外层迭代的第λ次内层迭代得到的所有松散点云转换参数为以及当前迭代的配准系统目标函数解为则有: 其中,是上一次迭代的目标转换参数,第一次迭代时为零向量,设所有点云集的转换参数向量为ε0′1为固定点云集的转换参数,其位姿始终不变,即ε0′1=[0,0,0,0,0,0]T;2.2.4.6、理想情况下,当两次配准系统迭代间的点对距离之差相同时就得到最优的参数解,将上一次迭代得到的转换参数求得的所有点对的点到切平面距离向量称为观测向量把当作估计值去拟合观测值则第q次外层迭代的第λ次内层迭代的观测向量的构造步骤如下:与步骤2.2.4.1同理,构成点对集i′=1,2,…,M两个点集各自的齐次变换矩阵构造公式如下: 其中,k=1,2,…,6,为参数向量的第Ik个元素;第i′,i′=1,2,…,M个点对集的第个点对各自齐次坐标为: 通过齐次变换矩阵转换后,点对各自的齐次坐标为: 此时点对的笛卡尔坐标变为: 其中,分别为的x、y、z坐标,分别为的x、y、z坐标,转换后,点对的点到切平面距离为: 点对集i′=1,2,…,M所有点对的点到切平面距离向量为: 则观测向量为: 其中,为第j,j=1,2,…,qno个点到切平面距离;2.2.4.7、记为第i′,i′=1,2,…,M个点对集相应的权重向量,为第i′,i′=1,2,…,M个点对集第个点对的权重,其计算公式如下: 点对的相对权重为: 则点对集i′=1,2,…,M相对权重向量为: 所有点对集的相对权重向量为: 其中,为第j,j=1,2,…,qno个点得相对权重;2.2.4.8、在配准系统中引入一个权重调整因子使得每一次内层迭代都会根据上一次迭代的情况来对点对重新加权,将初始设定为一个qno×1维的全1向量,记第λ次内层迭代的权值矩阵为其维数为qno×1,第j个点对的权值为其计算公式为: 其中,分别为相对权重向量权重调整因子的第j个元素则多视角点云权重自调整配准系统目标函数为: 2.2.4.9、建立配准迭代约束系统:使用模型残差来约束内层迭代,则第λ次内层迭代的模型残差为: 使用点到切平面距离的估计标准差来标准化模型残差,得到标准化残差第j个观测值的标准化残差计算公式如下: 其中,qδj分别为模型残差和qδ的第j个元素,为所有点对的点到切平面距离的估计标准差向量,为点对集q=1,2,…,Tq,i′=1,2,…,M的估计标准差向量,为维的全一向量;与步骤2.2.4.6同理,按构造观测向量的方法,令即由当前内层迭代得到的转换参数转换点云集后,计算得到所有点对的点到切平面距离向量根据Krasus终止标准,有: 其中,下标j表示向量的第j,j=1,2,…,qno个元素;使用残差和向量的差来表示模型的线性化误差向量,则线性化误差向量的元素绝对值的最大值即为最大线性化误差其表达式如下: 其中,为残差和向量的第j个元素;权重自调整配准系统的迭代约束步骤如下:2.2.4.9.1、若进入步骤2.2.4.9.2,否则,更新迭代次数λ=λ+1,继续迭代,返回步骤2.2.4.5;2.2.4.9.2、若权重调整标志更新权调整次数:Nw=Nw+1,进入步骤2.2.4.9.3,否则,结束内层迭代;2.2.4.9.3、遍历标准化残差构造激活标准残差向量对于的第j,j=1,2,…,qno个元素若其对应的激活标志则有其中,为标准残差向量的第j,j=1,2,…,qno个元素;2.2.4.9.4、若满足且条件,即中元素绝对值的最大值大于残差阈值且权重调整次数未超过其阈值则认为本次内层迭代存在严重错误,需要对权重调整因子做出调整:更新迭代次数λ=0,调整权重调整因子,第j个权重调整因子调整公式为: 当权重调整次数Nw1:对于第j个观测值,若其标准残差则需要将其重新激活,即若其标准残差则停用该观测值,即该点对对应的权重调整因子被调整为最小值权重调整完成,继续迭代,返回步骤2.2.4.5;否则,若不满足且的条件,则认为本次内层迭代过程中不存在严重错误:当权重调整次数Nw1,更新迭代次数λ=0,j=1,2,…,qno,并使权重调整标志继续迭代,返回步骤2.2.4.5,否则,则停止内层迭代,进入步骤2.2.5;2.2.5、进行刚体变换由步骤2.2.4得到第q次外层迭代的松散点云转换参数则松散点云的刚体变换矩阵为: 对滤波前后的松散点云集q-1Ωi、i=2,3,...n的每一个点进行刚体变换,使其坐标转换到与固定点云在同一坐标系上,计算公式如下: 则得到经q次转换后的点云集有集合保存qΩ、进入步骤2.2.6;2.2.6、设置全局变换参数阈值为Tε,若||qε||2≤T≥或qεTq,立即停止外层迭代,得到精拼接的滤波前后多视角点云Ω′qΩ、否则,将点云qΩ、代入步骤2.2中继续全局ICP迭代。

全文数据:

权利要求:

百度查询: 电子科技大学 一种基于机械臂辅助的多视角航空构件三维点云全局拼接方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。