王亚
核刊名称:计算机应用研究
1、解决的问题:
之前的算法只能融合特定模态的融合,本文提出了更具普适性的框架,可以综合不同模态的融合。
2、摘要:
基于深度学习模型研究了多模态融合的特征描述,在训练时使用新的相关性损失函数进行训练优化,以此提取出更加稳健的特征向量。
从各个模态学习到的特征向量在训练步骤中相互指导以获得更稳健的特征表示。
首先,提取每个三维模型的三个模态特征。点云模态提描述结构信息,多视图模态描述描述视觉信息,Panorama全景视图模态描述三维模型的表面信息。
其次,提出的新的相关性损失函数可以有效减轻不同模态的特征差异以获取更稳健的特征向量,并在训练步骤实现不同模态的特征表示的相互指导,提升了学习效率。
最后,本文提出了一种基于统计思想的融合方法以融合不同模型的分类结果,用于最终的
三维模型分类和检索。
3、算法原理
3.1、数据处理
点云模态 | 采用MeshLab将ply模型转换为点云数。由于数据集中的模型大小不均匀,因此需要先加载使用蝶形细分算法对数据进行网格细分,间接增加点云点数。之后对每个模型进行采样,每个模型采样都获得1024个采样点。 |
多视图模态 | 采用NPCA(基于网格模型的表面法向量统计属性而得到矩阵)对三维模型数据进行降维标准化,然后利用OpenGL的可视化工具提取一组视图,具体是以三维模型的Z轴为中心,每隔30°进行一次采样,每个三维模型都能得到12张不同角度的视图来表示视觉信息。 |
全景视图模态 | 全景视图是通过把三维模型置于半径为R,高度为H=2R的圆柱体的中心,把其表面投影到圆柱体的侧表面上获得模型的表面信息。三维模型轴线平行于X轴或者Y轴或者Z轴均可获得初始全景图。其中R=2 dmax,dmax是模型表面与其质心的最大距离,采样速率为128.圆柱形投影可以获得两种模型特征信息。 a).模型表面在三维空间中的位置信息作为模型的空间分布图(SDM)。 b).模型表面的方向信息作为法线偏差图(NDM) 然后对NDM图求表面方向的梯度图,然后将3个黑白单通道图作为RGB的三个通道,获得3D模型的三通道图, |
3.2、多模态联合网络
点云模态,利用流行的 PointNet 模型进行特征提取;
多视图模态,利用 MVCNN 模型来实现特征提取功能;
全景图模态,利用 PANORAMA-MVCNN 学习三维模型的特征向量。
提出新的相关性损失函数:
将两个不同的特征向量的距离度量的2范数用来表示两个不同模态下的特征向量的相关性,此值逐渐降低,说明不同特征向量之间相互指导。
其中,f表示由不同模态网络提取的特征向量,M的下标代表1,2,3三种不同的模态,
是一个归一化激发函数。
本文采用交叉熵损失函数和相关性损失函数两种损失函数,首先在单模态网络训练中,使用交叉熵损失函数,以此来保证原网络的优异性。然后使用新的相关损失函数来确保多个模态之间的特征彼此指导,提高网络训练的学习速度,并且提高特征向量的鲁棒性。
例如,模态1的最终损失函数为:
3.3、多模态融合
通过三模态卷积神经网络的学习,获得种基于不同模态的三维模型的特征。相较于传统方法使用池化操作融合不同特征,本文使用统计方法,采用加权融合方法融合三个特征向量。
f代表的是不同模态下的特征向量,α是不同模态的权重,对加权融合特征的特征输入到全连接层(FC 层),全连接层的维度依次为 512,256,C。C 代表数据集类别的数量,最后通过一个 softmax 层获得三维模型的分类概率分布。