预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于多视角卷积神经网络的三维模型分类方法 摘要 本文针对三维模型分类问题,提出了一种基于多视角卷积神经网络(MVCNN)的分类方法。首先,将三维模型从不同视角转化为二维图片。然后,使用MVCNN网络对这些图片进行训练,最终得到分类结果。实验结果表明,本文方法具有较高的分类准确性和较快的分类速度。 关键词:三维模型,分类,卷积神经网络,多视角 引言 随着三维模型的广泛应用,对三维模型的分类和识别问题越来越受到关注。三维模型分类是指将三维模型分为不同的类别,其应用于计算机视觉、虚拟现实、游戏开发等领域。三维模型分类的关键问题是如何表示三维模型的特征以便于分类。 传统的三维模型分类方法基于手工设计的特征表示,如形状描述符、统计特征等,这些方法需要大量的人力和时间来选择特征和优化参数。而卷积神经网络(CNN)则可以自动学习特征,因此在目标识别和分类任务中具有很大的潜力。在二维图片分类问题上,CNN已经取得了很好的效果,然而在三维模型分类问题上,CNN的效果仍有待提高。 近年来,一些基于深度学习的三维模型分类方法得到了很好的应用。其中,基于多视角卷积神经网络(MVCNN)的方法是一种常用的方法。MVCNN方法将三维模型从不同的视角下投影为多个二维图片,然后将这些图片同时输入到卷积神经网络中,最终汇总分类结果。这些图片可以提供更多的信息,从而提高分类的准确性。MVCNN方法在三维模型分类问题上取得了很好的效果,本文也将使用MVCNN方法进行三维模型分类。 本文结构如下:第二部分介绍相关工作,第三部分介绍本文方法,第四部分是实验结果,第五部分是实验分析,最后是总结和展望。 相关工作 传统的三维模型分类方法主要基于手工设计的特征表示,如形状描述符、统计特征等。这些方法需要大量的人力和时间来选择特征和优化参数。而卷积神经网络(CNN)则可以自动学习特征,因此在目标识别和分类任务中具有很大的潜力。 MVCNN方法是一种用于三维模型分类的深度学习方法,该方法通过将三维模型从不同的视角投影为多个二维图片,然后将这些图片同时输入到卷积神经网络中来提高分类的准确性。Shui等人提出了MVCNN方法[1],并将该方法应用于多个三维模型分类数据集,取得了很好的分类结果。 Lai等人提出了一种基于深度学习的三维形状描述符方法(DeepShape)[2]。该方法首先将一组三维形状表示为一组网格表示,并将其转化为一组2D图像。然后使用CNN自动学习特征,最后使用支持向量机(SVM)进行分类。这种方法可以有效地解决传统三维形状描述符的问题,从而提高了分类准确性。 本文方法 本文提出了一种基于MVCNN的三维模型分类方法。该方法将三维模型从不同的视角下投影为多个二维图片,然后将这些图片同时输入到卷积神经网络中进行分类。本文使用了VGG16[3]网络作为基础网络,其具有较强的特征提取能力。本文方法的框架如图1所示。 图1MVCNN方法框架 图1中,每个三维模型从不同的视角下投影为了12个图片。然后将这些图片输入到VGG16网络中,最后汇总分类结果。下面将详细介绍本文方法的实现。 三维模型的预处理 首先,需要对三维模型进行预处理。预处理过程如下: 1.将三维模型应用到球体上,并将其归一化到[-1,1]的立方体中。 2.将立方体划分为m×n×o个体素,计算每个体素内是否有点。如果一个体素内至少有一个点,则将其标记为“1”,否则标记为“0”。 3.对每个标有“1”的体素沿着某个方向确定相机位置,同时确定相机视角的方向。 4.将相机对每个三维模型拍摄图像并缩放为224×224大小的灰度图像。 该方法可以产生12张2D图像,从不同方向观察3D模型并生成对应的2D图像,图片的大小为(224,224)。 网络模型 本文采用了改进的VGG16网络作为基本网络结构。由于我们产生12个2D图像,需要对这些图像采用特殊的方法进行网络设计。首先,每个2D图像先经过与VGG16相同的前13个卷积层,然后将每个卷积层的输出进行平均。该方法可以生成与原始VGG16网络结构相似的网络模型。该网络的具体结构如图2所示。 图2网络模型 在图2中,每个2D图像先经过与VGG16相同的前13个卷积层,然后进行平均。然后将这些输出输入到连接层进行分类,最后输出预测结果。 训练和测试 训练模型时,使用交叉熵损失函数最小化训练误差。本文采用Adam优化算法,学习率设为0.0001。在训练过程中,随机选择一组2D图像,然后输入到网络中进行训练。在测试过程中,将一组2D图像输入到网络中,然后输出预测结果。 实验结果 本文采用了两个公开数据集进行实验:ModelNet10[1]和ModelNet40[4]。这些数据集包含了一系列从不同角度拍摄的3D模型图像。本文将这些图像分为训练集和测试集,其中训练集占80%,测试集占2