【技术实现步骤摘要】
一种用于图形处理的三维点云修复方法
本专利技术属于计算机三维模型处理和计算机图形学领域,尤其涉及一种用于图形处理的三维点云修复方法。
技术介绍
近年来,要在现实世界中直接获取大量三维数据,可以通过使用LiDAR扫描仪或深度传感器,如Kinect,以及立体相机等来实现。然而,使用这些仪器获得的3D数据通常不完整,主要原因如下几点:扫描仪的扫描视角受限,非目标物体的遮挡、以及光折射和反射的影响。因此,经常造成目标物体几何信息和语义信息的丢失。于是,研究如何修复不完整的3D模型,以便于更多后续应用,是一个非常有必要的研究课题。此外,3D模型也出现了大量的表现形式,如点云、体素、面片和距离场等。其中使用点云来表示和处理3D数据已受到越来越多的关注,因为与其他表示形式(例如3D体素网格)相比,它的存储成本较低,但是它能更精致细腻地表示3D模型。文献1C.R.Qi,H.Su,K.Mo,andL.J.Guibas.Pointnet:Deeplearningonpointsetsfor3dclassificationandsegmentation.2018.的出现使得无序点集可以被直接处理,这极大地促进了用于处理点云的深度学习架构的发展,以及更其它相关研究的发展,如3D场景重建,3D模型分割和3D模型修复等。文献2W.Yuan,T.Khot,D.Held,C.Mertz,andM.Hebert.PCN:PointCompletionNetwork.InternationalConferenceon3DVision20 ...
【技术保护点】
1.一种用于图形处理的三维点云修复方法,其特征在于,包括如下步骤:/n步骤1,输入点云模型数据集,采集数据;/n步骤2,采用基于Self-Attention自注意力机制的方法和多层感知机MLP相结合得到长距离依赖关系提取网络,用所述长距离依赖关系提取网络将输入的点云映射为全局特征向量,再采用拓扑根树结构的解码器生成不完整点云的缺失部分;/n步骤3,将不完整点云及生成的缺失部分点云合成到一起,得到最终修复后的完整点云模型。/n
【技术特征摘要】
1.一种用于图形处理的三维点云修复方法,其特征在于,包括如下步骤:
步骤1,输入点云模型数据集,采集数据;
步骤2,采用基于Self-Attention自注意力机制的方法和多层感知机MLP相结合得到长距离依赖关系提取网络,用所述长距离依赖关系提取网络将输入的点云映射为全局特征向量,再采用拓扑根树结构的解码器生成不完整点云的缺失部分;
步骤3,将不完整点云及生成的缺失部分点云合成到一起,得到最终修复后的完整点云模型。
2.根据权利要求1所述的方法,其特征在于,步骤1包括如下步骤:
步骤1-1,设定输入单个三维点云模型s,预设定5个视点,分别为(1,0,0)、(0,0,1)、(1,0,1)、(-1,0,0)、(-1,1,0);
步骤1-2,随机选择一个视点作为中心点p,并且预设定一个半径r;
步骤1-3,对于三维点云模型s,以随机选择的视点p为中心,去除在预设定半径r范围内的点,得到不完整的点云模型;被去除的点的集合则是与不完整点云模型对应的缺失部分点云。
3.根据权利要求2所述的方法,其特征在于,步骤2包括如下步骤:
步骤2-1,将输入的三维点云模型数据集S={STrain,STest}划分为训练集STrain={s1,s2,...si,...,sn}和测试集STest={sn+1,sn+2,...,sn+j,...,sn+m},其中si表示训练集中第i个三维点云模型,sn+j表示测试集中第j个三维点云模型;i取值为1~n,j取值为1~m;
步骤2-2,对于训练集STrain,采集其中每个三维点云模型在随机视点下的不完整点云模型PTrain={p1,p2,...pi,...,pn}以及对应的缺失部分点云模型GTrain={g1,g2,..gi,...,gn}作为整个网络的输入进行训练,得到训练好的长距离依赖关系提取网络和拓扑根树结构的解码器,其中pi指的是训练集STrain中的第i个三维点云模型si对应的不完整点云模型,gi指的是训练集STrain中的第i个三维点云模型si对应的缺失部分点云模型;
步骤2-3,对于测试集STest,采集其每个三维点云模型在随机视点下的不完整点云模型PTest={pn+1,pn+2,...,pn+j,...,pn+m}并输入到训练好的网络中,得到不完整点云输入模型对应的缺失部分点云,其中pn+j指的是测试集STest中的第j个三维点云模型sn+j对应的不完整点云模型。
4.根据权利要求3所述的方法,其特征在于,步骤2-2包括如下步骤:
步骤2-2-1,将训练集STrain中不完整点云PTrain作为输入,并用相对应的缺失部分点云GTrain做监督训练,经过第一阶段共享多层感知机的正向传播后,不完整点云中的每个点都被映射为256维的特征向量,其中第一阶段多层共享感知机由两层共享全连接网络组成,第一层将每个点映射为128维特征向量,第二层将每个点映射为256维特征向量,整个输入点云被映射为维度为2048×256的矩阵;
步骤2-2-2,设步骤2-2-1得到的2048×256维矩阵为x=(x1,x2,x3,...,xi),它将作为自注意力模块的输入,其中xi为输入点云中一个点对应的特征向量;通过两个1×1卷积网络将x映射到两个特征空间Q和K以计算输入点云的注意力得分,分别通过函数h(x)和v(x)得到,其中Q=(h(x1),h(x2),h(x3),...h(xi))=((whx1,whx2,whx3,...whxi),K=(v(x1),v(x2),v(x3),...v(xi))=(wvx1,wvx2,wvx3,...wvxi),wh和wv是需要进行学习的权重矩阵,分别对应h(x)和v(x),由1×1卷积实现,wh和wv的维度都为32×256;Q是维度为2048×32的查询矩阵,表示输入点云的点数为2048,每个点用3...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。