【技术实现步骤摘要】
三维点云分类及旋转姿态预测方法及系统
[0001]本专利技术涉及三维点云分类
,具体来说是一种三维点云分类及旋转姿态预测方法及系统。
技术介绍
[0002]三维点云分类神经网络是以点云作为输入数据的分类神经网络,是神经网络处理点云数据的基础,其他点云的处理任务如点云分割、点云补全都以分类网络作为其骨干网络,所以三维点云分类网络的设计就显得至关重要,影响着下游相关任务的性能。
[0003]由于三维点云的旋转涉及三个自由的方向,而一般的三维点云神经网络仅仅考虑固定姿态的点云模型作为输入,导致三维点云神经网络往往具有较差的旋转鲁棒性。为解决该问题,传统的方法是使用主成分分析固定点云姿态,但该方法得出的参考向量具有二义性,导致点云姿态并未完全固定,并且这种方法所固定的姿态往往与现实世界中物体的实际姿态相差甚远,不利于人进行理解和分辨。
[0004]如申请号为CN202110973556.9公开的三维点云全自动分类方法及深度神经网络模型,包括获取三维点云数据集;对三维点云数据集代表的三维点云下采样,选取三维点云中 ...
【技术保护点】
【技术特征摘要】
1.三维点云分类及旋转姿态预测方法,其特征在于,基于以下定义:将具有n个点的点云表示为其中第i行表示点云P中的第i个点X
i
的笛卡尔坐标(x
i
,y
i
,z
i
);方法包括以下步骤:步骤1、设计三维点云旋转不变性表示模块,具体包括:步骤1.1、对输入点云中的任意一个点,计算出距离其最近的k个近邻点,所述k个近邻点包含着物体局部的表面信息;步骤1.2、估算所述k个近邻点所对应的点云局部法向量,具体的公式表示为:X
ij
代表中心点X
i
邻域内的第j个点,代表这k个邻域点的均值,C
i
代表这k个邻域点的协方差,计算该协方差矩阵最小的特征值所对应的特征向量即为所需要的点云表面法向量;步骤1.3、将所有点处得到的法向量聚合为一个法向量点云步骤1.4、对法向量点云进行聚类求得参考z轴,所述z轴代表点云中最大平面法向量的方向,旋转该点云使真实z轴与参考z轴重合;将所有点投影到xy平面,删除与原点距离小于设定值以内的点,将剩余点全部单位化,形成平面上的圆环形状的点云,对该平面点云再次进行聚类操作,选取第二个参考轴,将其作为参考x轴,所述参考x轴由点云中第二大平面决定;再次旋转该点云,使参考x轴与真实x轴重合;此时点云的旋转姿态被固定;步骤2、以旋转不变性表示模块作为前置模块,设计具有旋转鲁棒性的三维点云分类神经网络,具体包括:步骤2.1、输入具有随机旋转的点云,经过旋转不变性表示模块后对于同一点云将具有唯一固定的方向;步骤2.2、将步骤2.1中固定角度的点云进行24次旋转后输入共享参数的DGCNN特征提取结构中得到24个对应的点云特征向量;步骤2.3、将所述24个对应的点云特征向量输入最大池化层,得到最终的类内一致性特征向量,输入最终用于分类的全连接层,得到最终的分类结果;步骤3、以旋转不变性表示模块为基础,设计旋转姿态预测网络,具体包括:步骤3.1、在所述DGCNN之前加入旋转不变性表示模块,所述旋转不变性表示模块用以固定点云的旋转角度为某一个规律的方向,并记录所经过的旋转矩阵R1;步骤3.2、将DGCNN网络的类别数修改为24,用来预测24个规律的旋转姿态,所述旋转不变性表示模块可以记录随机旋转后的输入点云将旋转姿态固定过程中的旋转矩阵,将旋转姿态固定过程中的旋转矩阵与24个类别对应的旋转矩阵相乘即可得到最终预测的旋转矩阵;步骤3.3、训练过程中,需要得到经过旋转不变性表示模块处理后的点云所对应的旋转分类标签,将数据集中原始的对齐点云姿态设置为类别0,将其旋转24次并将每一次的旋转结果对应一个类别,记录对应的固定旋转矩阵,原始对齐的点云经过一个随机旋转以及一个旋转不变性表示模块所施加的旋转后作为DGCNN网络的输入,将两个旋转矩阵相乘后与分类类别对应的旋转矩阵相比较,两者角度差最小的作为最终姿态分类标签;
步骤3.4、测试阶段将旋转不变性表示模块求得的旋转矩阵与分类标签对应的旋转矩阵相乘的逆作为对最终旋转姿态所对应旋转矩阵的预测值,求得预测值相对于实际值的角度误差作为评判网络效果的指标。2.根据权利要求1所述的三维点云分类及旋转姿态预测方法,其特征在于,所述步骤1.4中已知两个坐标轴,需要旋转点云使之重合,具体用到的公式可以表示为:q0=cos(θ/2)、q1=x
·
sin(θ/2)、q2=y
·
sin(θ/2)、q3=z
·
sin(θ/2)、其中θ表示从参考轴到真实坐标轴的角度,(x,y,z)表示参考轴与真实坐标轴叉积的结果,(q0,q1,q2,q3)表示从参考轴到真实坐标轴旋转的四元组,R表示从参考轴到真实坐标轴的旋转矩阵。3.根据权利要求1所述的三维点云分类及旋转姿态预测方法,其特征在于,所述步骤3.3中通过旋转矩阵求对应的旋转角度的方法:根据旋转矩阵计算得出对应的旋转角度的公式表示为:R
a
=R1R2、其中R1表示经过随机旋转以及旋转不变性表示模块后的总的旋转矩阵,R2表示预测旋转姿态类别所对应的旋转矩阵的逆,24个旋转姿态分类对应24个旋转矩阵,分别代入R2求得对应的24个角度θ,以最小的一个θ对应的分类作为真实标签,来训练本实施例的旋转姿态预测网络。4.根据权利要求1所述的三维点云分类及旋转姿态预测方法,其特征在于,步骤2和步骤3中训练网络模型的实验设置如下:实验均在CentOS Linux 7的集群上运行,使用一块Tesla V100 32G的gpu以及10.1版本的cuda。5.三维点云分类及旋转姿态预测系统,其特征在于,基于以下定义:将具有n个点的点云表示为其中第i行表示点云P中的第i个点X
i
的笛卡尔坐标(x
i
,y
i
...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。