基于动态图卷积的三维模型形状识别方法

文档序号:1862777 发布日期:2021-11-19 浏览:20次 >En<

阅读说明:本技术 基于动态图卷积的三维模型形状识别方法 (Three-dimensional model shape recognition method based on dynamic graph convolution ) 是由 韩丽 佟宇宁 兰鹏燕 于 2021-08-03 设计创作,主要内容包括:本发明公开一种基于动态图卷积的三维模型形状识别方法,首先,提出一种动态权重分配的图卷积算子来建立滤波器权重与具有任意连通性的模型内邻域矩阵之间的对应关系;其次,通过交叉验证方法对采样点及其K邻域进行优化,并利用可变形卷积算子计算出更准确的邻域点信息,学习得到感受野中每个邻域点位置的偏移量;最后,采用自适应动态图卷积神经网络模型,实现了非刚性三维模型的有效识别。实验结果表面,本发明具有更高的识别准确性和鲁棒性,其识别精度较之最新的基于图卷积神经网络的形状识别算法提高了2%~4%,并解决了常规图卷积不能应用到不规则网格上的问题。(The invention discloses a three-dimensional model shape recognition method based on dynamic graph convolution, which comprises the following steps of firstly, providing a graph convolution operator with dynamic weight distribution to establish the corresponding relation between filter weight and a neighborhood matrix in a model with any connectivity; secondly, optimizing the sampling points and K neighborhoods thereof by a cross validation method, calculating more accurate neighborhood point information by using a deformable convolution operator, and learning to obtain the offset of each neighborhood point position in the receptive field; and finally, the effective identification of the non-rigid three-dimensional model is realized by adopting a self-adaptive dynamic graph convolution neural network model. The experimental result shows that the method has higher identification accuracy and robustness, the identification accuracy is improved by 2-4% compared with the latest shape identification algorithm based on the graph convolution neural network, and the problem that the conventional graph convolution cannot be applied to irregular grids is solved.)

基于动态图卷积的三维模型形状识别方法

技术领域

本发明属于三维模型的形状分析识别领域,尤其涉及一种适用范围广、识别精度高、鲁棒性好、不依赖形状描述符、基于动态图卷积的三维模型形状识别方法。

背景技术

伴随着移动互联网的普及、大数据的兴起和人工智能的发展,3D模型已经成为人们生活中必不可少的一部分。尤其在诸如虚拟现实、无人驾驶、三维游戏动画等特殊领域,3D模型的处理与分析更是其取得广泛应用的关键技术基础。在这种情况下,高效精确的3D模型识别已成为当今计算机图形学、计算机视觉等领域的重要研究课题之一,并且涌现出大量的开源3D模型数据库,如McGill模型库、Summer模型库、Shapegoogle模型库、ShapeNet模型库、SHREC模型库、ModelNet模型库等。这些模型数据库的应用和发展不仅满足了各类用户的要求,也给从事3D计算机图形学的研究者提供了极大的便利。面对如此纷繁复杂、规模庞大的数据库,众多用户迫切需要一种有效的3D模型识别算法,从而能够在大批量的模型中准确、迅捷地找到他们所需要的3D模型。

现有的3D模型识别算法主要分为两大类,即基于手工提取特征描述符的识别算法和基于机器学习特征描述符的识别算法。

首先,基于手工提取特征描述符的识别算法需要用户依靠人工的方式从3D图形模型数据中提取出描述3D模型基本结构形状特征的描述符,如几何特征描述符、骨架特征描述符、图像投影特征描述符和多特征融合描述符等,进而出现了基于计算几何特征描述符的识别算法、基于骨架特征描述符的识别算法、基于图像投影特征描述符的识别算法和基于多特征融合特征描述符的识别算法。由于这些特征描述符均不能提供3D模型的全部几何特征信息,当将此类算法应用于不同的3D图形学模型数据库时,需要根据数据的特点精心设计描述符,而且非常依赖于具体的数据库,所设计的特征只对某些数据库表现好,而在其它数据库上的识别效果却未必优秀。因此,该类3D模型识别方法往往存在明显的局限性。

其次,基于机器学习特征描述符的识别算法通常从模型表面提取底层特征的基础上,利用深度学习框架学习出3D模型的更深、更抽象的高级特征,且无需手工参与,受模型姿态等因素的影响较小。Wang等人从点云模型中提取特征,从最远采样点中选取特征点,再对每个特征点的邻域进行卷积操作,在多层池化、谱卷积和聚类后获得局部结构信息,从而联结其谱坐标中临近的特征点信息作为模型的整体特征描述符,实现了3D模型的形状识别。Fang等人从3D模型的热核特征中提取热形状描述符HeatSD,再利用主成分分析算法和线性判别分析进行训练,各自生成特征形状描述符ESD与Fisher形状描述符FSD,进而将ESD和FSD输入到深度神经网络学习得到DeepSD来完成3D模型形状识别。Carlos等人将3D模型映射到球面上,经过连续的球面变换生成等变的特征图,进而采用特征图的全局加权平均获取具有旋转不变性的特征描述符来完成3D形状识别。Luciano等人引入了基于自动测地矩与深度机器学习的高级判别特征分类器,通过隐藏判别层和稀疏自编码器模块来自动学习每个模型的高级判别特征,取得了较高的模型识别率。谢智歌等人通过运用极限学习机和卷积神经网络研究提出了一种三维模型的特征自动学习算法,获得了良好的实际应用效果。Su等人将从不同角度拍得的2D投影图作为神经网络的输入训练信号,用卷积神经网络对输入的2D投影图进行训练,学习得到3D形状的分类识别模型。较之直接利用3D数据所学习的模型,该模型取得了更高的形状识别精度。然而,传统的卷积神经网络(CNN)还需先提取3D模型的形状描述符才能对特征加以描述,以此实现3D模型的形状识别,其识别精度和鲁棒性尚不尽人意。

在这种情况下,考虑到大多数3D模型都是以图的形式呈现和存储,且图结构可以自然地表达实际生活中的相关数据结构,图中每个节点的局部结构信息各异、灵活性强,研究人员进一步在图结构上构造深度学习模型。由于图卷积神经网络(GCNN)对局部结构的建模能力及普遍存在的节点依赖关系具备更强的描述能力,基于图卷积神经网络的3D模型识别方法得到了研究人员的广泛关注,基本思想是从一个固定边界框的多尺度网格开始训练一个回归器,迭代循环地朝着目标移动或放大网格中的元素,进而将目标检测问题模型转化为寻找从一个固定网格到紧紧包围目标的边界的路径问题。遗憾的是,尽管基于图卷积神经网络的3D模型识别方法对常规的、稳定的网格表示能够取得不错的性能,可是由于其对邻域点的选择过于固定、不能很好地拟合不规则模型,该类方法尚不易于被拓展到非常规网格表示的3D形状识别上,且卷积核的范围也不能随着物体的变化进行放大或者缩小,所提取的特征与模型的匹配程度还不够精准。

综上所述,基于机器学习和卷积神经网络的3D模型形状识别方法目前仍然面临适用范围有限、识别精度不高、鲁棒性不强、对形状描述符的依赖程度高等问题。因此,如何将卷积神经网络拓展到不规则的、变换的3D模型上并实现3D模型的形状识别尚未得到有效解决。

发明内容

本发明是为了解决现有技术所存在的上述技术问题,提供一种可有效处理不规则的、变换的3D模型,适用范围广、识别精度高、鲁棒性好、不依赖形状描述符、基于动态图卷积的三维模型形状识别方法。

本发明的技术解决方案是:一种基于动态图卷积的三维模型形状识别方法,其特征在于按照如下步骤进行:

步骤1.建立自适应动态图卷积神经网络ADCNN,包含1层可变形3D卷积层、4层卷积层、2层上采样层、3层全连接层,分别为3DConv、Conv1、Conv2、Conv3、Conv4、UC1、UC2、FC1、FC2、FC3,所有卷积核大小均为3×3像素;

所述3Dconv包含32个以Xavier方法进行初始化的卷积核,采用ReLU作为激活函数;Conv1包含64个以Xavier方法进行初始化的卷积核和64个神经元的池化层,采用ReLU作为激活函数;Conv2包含32个以Xavier方法进行初始化的卷积核和32个神经元的池化层,采用ReLU作为激活函数;Conv3包含64个以Xavier方法进行初始化的卷积核和64个神经元的池化层,采用ReLU作为激活函数;Conv4包含32个以Xavier方法进行初始化的卷积核和32个神经元的池化层,采用ReLU作为激活函数;UC1输出的特征向量的维度为128;UC2输出的特征向量的维度为64;FC1和FC2输出的特征向量的维度均为32;FC3利用1×1卷积输出1024维的特征向量;各层的排列顺序从前到后分别为3Dconv、FC1、Conv1、FC2、Conv2、Conv3、UC1、Conv4、UC2、FC3;

所述3Dconv层利用公式(1)定义的可变形三维卷积算子完成卷积运算,得到每个邻域点的3D偏移量(Δx,Δy,Δz);

其中,pi表示3D模型中的第i个位置,y(pi)表示可变形三维卷积算子在pi处产生的输出特征,pj表示以pi为中心的、3×3×3卷积采样网格中的第j个位置,Ni表示pi的邻域采样点集合,|Ni|表示Ni包含的采样点数量,Δpj表示pj的3D偏移量,w(pj)表示pj对于pi的可训练权重,x(pi+pj+Δpj)表示3D模型在位置pi+pj+Δpj上的采样特征函数值;

所述Conv1、Conv2、Conv3、Conv4层利用公式(2)定义的卷积算子完成卷积运算;

其中,yi表示卷积层输出的第i个特征向量,xi表示卷积层输入的第i个特征向量,xj表示卷积层输入的第j个特征向量,b表示可训练的偏置量,Wm表示第m个可训练的加权矩阵且1≤m≤M,M表示可训练的加权矩阵的总数,qm(xi,xj)表示xj对Wm的权重函数,其定义由公式(3)给出;

其中,和cm表示线性变换参数向量,上标T表示向量的转置运算;

步骤2.生成3D模型采样点的邻域矩阵U;

步骤2.1输入n个非刚性3D模型的每个采样点的位置坐标,组成3D模型集合D={M1,M2,…,Mi,…Mn},所述Mi表示第i个3D模型;

步骤2.2对于D中的每个3D模型,利用KNN网络选取邻域点,进而建立采样点的邻域矩阵U;

步骤3.从3D模型集合D中选取三分之一的数据作为训练数据集,三分之一的数据作为测试数据集,其余三分之一的数据作为验证数据集,进而采用交叉验证法计算最佳的邻域点数量;

步骤4.利用步骤2所得到的3D模型数据集,对自适应动态图卷积神经网络ADCNN进行训练,其中,batch_size设置为16,正则化参数设置为0.5,学习率设置为0.01,dropout率设为0.5;

步骤4.1输入训练数据集中每个3D模型的原始坐标信息、邻域点位置信息及其邻域矩阵U,并将每个模型的特征图像的分辨率统一调整为224×224像素,令迭代次数计数器iter←1;

步骤4.2对于每个3D模型,利用3Dconv层的可变形三维卷积算子计算每个邻域点的3D偏移量(Δx,Δy,Δz),并利用三次线性插值算法将每个邻域点的3D偏移量(Δx,Δy,Δz)转换为整数型的偏移量(Δxz,Δyz,Δzz),进而将每个邻域点的原始坐标与其偏移量(Δxz,Δyz,Δzz)相加,得到更新后的3D模型;

步骤4.3将训练数据集中每个更新后的3D模型输入ADCNN网络的后续各个层,从而为每个3D模型计算得到一个4096维的输出特征向量y;

步骤4.4将每个3D模型的特征向量y输入Softmax函数,得到ADCNN在训练集上的识别匹配结果及其预测损失loss;

步骤4.5令iter←iter+1,若iter>TotalIter,则得到已训练好的自适应动态图卷积神经网络ADCNN,转入步骤5,否则,利用基于随机梯度下降法的反向误差传播算法和预测损失loss更新ADCNN的参数,转入步骤4.2重新处理训练集中的所有3D模型,所述TotalIter表示预设的迭代次数;

步骤5.利用训练好的自适应动态图卷积神经网络ADCNN对3D模型进行形状识别;

步骤5.1输入一个待处理的3D模型InputModel的原始坐标信息、邻域点位置信息及其邻域矩阵U,并将该模型的特征图像的分辨率统一调整为224×224像素;

步骤5.2将InputModel的原始坐标信息、邻域点位置信息、邻域矩阵U以及调整后的特征图像输入自适应动态图卷积神经网络ADCNN中,计算得到一个4096维的输出特征向量y;

步骤5.3将特征向量y输入Softmax函数,从而输出3D模型InputModel的识别结果。

本发明与现有技术相比,具有如下优点:第一,引进一种自适应动态子图卷积学习模型直接对原始模型输入坐标信息进行学习,利用可变形卷积算子在原有采样点的邻域位置上增加可训练的偏移量,再叠加得到新的邻域点信息,并将其与原始采样点一起输入到动态权重分配的图卷积神经网络中,能够更好地适应变换的三维模型,摆脱传统方法对形状描述符的依赖;第二,利用自适应分配滤波器权值的策略,有利于通过动态学习的特征来计算图内GHBorder间的对应关系,从而更加准确地刻画具有任意连通性的图内GHBorder之间的对应,而不是依赖于在图上的预定义的静态坐标,实现了对非刚性三维模型进行更加高效的形状识别。因此,本发明可有效处理不规则的、变换的3D模型,具有适用范围广、识别精度高、鲁棒性好、不依赖形状描述符等优点,其在SHREC2010、SHREC2011、SHREC2015模型集上的平均识别准确率达到了97.64%。

具体实施方式

本发明的一种基于动态图卷积的三维模型形状识别方法,按照如下步骤进行;

步骤1.建立自适应动态图卷积神经网络ADCNN,包含1层可变形3D卷积层、4层卷积层、2层上采样层、3层全连接层,分别为3DConv、Conv1、Conv2、Conv3、Conv4、UC1、UC2、FC1、FC2、FC3,所有卷积核大小均为3×3像素;

所述3Dconv包含32个以Xavier方法进行初始化的卷积核,采用ReLU作为激活函数;Conv1包含64个以Xavier方法进行初始化的卷积核和64个神经元的池化层,采用ReLU作为激活函数;Conv2包含32个以Xavier方法进行初始化的卷积核和32个神经元的池化层,采用ReLU作为激活函数;Conv3包含64个以Xavier方法进行初始化的卷积核和64个神经元的池化层,采用ReLU作为激活函数;Conv4包含32个以Xavier方法进行初始化的卷积核和32个神经元的池化层,采用ReLU作为激活函数;UC1输出的特征向量的维度为128;UC2输出的特征向量的维度为64;FC1和FC2输出的特征向量的维度均为32;FC3利用1×1卷积输出1024维的特征向量;各层的排列顺序从前到后分别为3Dconv、FC1、Conv1、FC2、Conv2、Conv3、UC1、Conv4、UC2、FC3;

所述3Dconv层利用公式(1)定义的可变形三维卷积算子完成卷积运算,得到每个邻域点的3D偏移量(Δx,Δy,Δz);

其中,pi表示3D模型中的第i个位置,y(pi)表示可变形三维卷积算子在pi处产生的输出特征,pj表示以pi为中心的、3×3×3卷积采样网格中的第j个位置,Ni表示pi的邻域采样点集合,|Ni|表示Ni包含的采样点数量,Δpj表示pj的3D偏移量,w(pj)表示pj对于pi的可训练权重,x(pi+pj+Δpj)表示3D模型在位置pi+pj+Δpj上的采样特征函数值;

所述Conv1、Conv2、Conv3、Conv4层利用公式(2)定义的卷积算子完成卷积运算;

其中,yi表示卷积层输出的第i个特征向量,xi表示卷积层输入的第i个特征向量,xj表示卷积层输入的第j个特征向量,b表示可训练的偏置量,Wm表示第m个可训练的加权矩阵且1≤m≤M,M表示可训练的加权矩阵的总数,qm(xi,xj)表示xj对Wm的权重函数,其定义由公式(3)给出;

其中,和cm表示线性变换参数向量,上标T表示向量的转置运算;

步骤2.生成3D模型采样点的邻域矩阵U;

步骤2.1输入n个非刚性3D模型的每个采样点的位置坐标,组成3D模型集合D={M1,M2,…,Mi,…Mn},所述Mi表示第i个3D模型;

步骤2.2对于D中的每个3D模型,利用KNN网络选取邻域点,进而建立采样点的邻域矩阵U;

步骤3.从3D模型集合D中选取三分之一的数据作为训练数据集,三分之一的数据作为测试数据集,其余三分之一的数据作为验证数据集,进而采用交叉验证法计算最佳的邻域点数量;

步骤4.利用步骤2所得到的3D模型数据集,对自适应动态图卷积神经网络ADCNN进行训练,其中,batch_size设置为16,正则化参数设置为0.5,学习率设置为0.01,dropout率设为0.5;

步骤4.1输入训练数据集中每个3D模型的原始坐标信息、邻域点位置信息及其邻域矩阵U,并将每个模型的特征图像的分辨率统一调整为224×224像素,令迭代次数计数器iter←1;

步骤4.2对于每个3D模型,利用3Dconv层的可变形三维卷积算子计算每个邻域点的3D偏移量(Δx,Δy,Δz),并利用三次线性插值算法将每个邻域点的3D偏移量(Δx,Δy,Δz)转换为整数型的偏移量(Δxz,Δyz,Δzz),进而将每个邻域点的原始坐标与其偏移量(Δxz,Δyz,Δzz)相加,得到更新后的3D模型;

步骤4.3将训练数据集中每个更新后的3D模型输入ADCNN网络的后续各个层,从而为每个3D模型计算得到一个4096维的输出特征向量y;

步骤4.4将每个3D模型的特征向量y输入Softmax函数,得到ADCNN在训练集上的识别匹配结果及其预测损失loss;

步骤4.5令iter←iter+1,若iter>TotalIter,则得到已训练好的自适应动态图卷积神经网络ADCNN,转入步骤5,否则,利用基于随机梯度下降法的反向误差传播算法和预测损失loss更新ADCNN的参数,转入步骤4.2重新处理训练集中的所有3D模型,所述TotalIter表示预设的迭代次数,在本实施例中,令TotalIter=500;

步骤5.利用训练好的自适应动态图卷积神经网络ADCNN对3D模型进行形状识别;

步骤5.1输入一个待处理的3D模型InputModel的原始坐标信息、邻域点位置信息及其邻域矩阵U,并将该模型的特征图像的分辨率统一调整为224×224像素;

步骤5.2将InputModel的原始坐标信息、邻域点位置信息、邻域矩阵U以及调整后的特征图像输入自适应动态图卷积神经网络ADCNN中,计算得到一个4096维的输出特征向量y;

步骤5.3将特征向量y输入Softmax函数,从而输出3D模型InputModel的识别结果。

以SHREC2010、SHREC2011、SHREC2015三个3D模型集为实验数据集,分别采用基于ACNN(adaptive convolution neural network)方法、GCNN(graph-based convolutionalnetwork)方法和本发明进行3D模型识别得到的平均识别准确率结果如表1。

从表1可见,由于ACNN方法需预先提取3D模型的形状描述符才能实现3D模型的形状识别和分类分割等,且不能很好地拟合不规则模型的点集拓扑结构,其识别准确率仅为84.52%,尚不尽人意;GCNN方法的卷积核范围不能随着物体的变化进行放大或者缩小,所提取的特征与模型的匹配程度以及邻域点的选取还有进一步提升的空间,其识别准确率95.04%;本发明则利用自适应动态子图卷积学习模型,更好地适应变换模型,摆脱形状识别方法对形状描述符的依赖,并引进可变形卷积算子和自适应分配滤波器策略,实现了更加准确的3D模型形状识别,平均识别准确率达到了97.64%。

表1不同方法在各个数据集上得到的识别准确率对比

识别方法 ACNN GCNN 本发明
SHREC2010 83.26% 94.65% 96.94%
SHREC2011 84.53% 95.10% 97.07%
SHREC2015 85.78% 95.36% 98.90%

9页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于强化学习的传送控制

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!