作者:白静

计算机辅助设计与图形学学报

1、解决的问题

由于三维模型投影得到的视图是由不同视点得到,具有相对独立性,这种像素级的融合运算并没有直接的物理或者几何意义,更有可能造成图像有益信息淹没和混淆。

2、创新点

提出基于卷积神经网络和投票机制的三维模型分类和检索算法。

3、优点

这种加权投票的分类思想既确保了三维物体各个视图间的相对独立性,又避免个别有歧义视图对物体类别判断的误导。

4、缺点

本文算法存在局部特征识别及细分类能力较弱的问题.,无法有效区分table和desk这些模型所属类别。

5、算法原理

首先,利用多视图表征3D模型;

其次,利用卷积神经网络完成基于视图的处不识别;

最后,通过决策层的加权投票完成3D模型的最终分类,以避免像素级的视图融合,突出多数有效视角,减小少数不佳视角干扰,仅为提高三维模型的分类能力。

5.1、多视图表征

本文采用Su-MVCNN所提出的12视图渲染方式构建给定网络模型M的多视图表征V(M)

5.2、弱分类器:视图分类及表征

考虑到3D模型库的规模及视图的复杂性,选用Jia提出的C阿飞飞Net作为面向单个二维视图分类及表征的深度学习模型。

该网络共包含8层,其中前5层是卷积层,中间是2个全连接层,最后一层为网络输出层FC8和Softmax分类层。

此训练分为2步:

首先利用ImageNet图像资源作为输入,对CaffeNet进行预训练;

然后采用3D模型渲染的二维视图作为输入对获得的网络模型进行微调,使最终获得的网络模型有效适应3D模型对应的二维视图。

训练好后,给定3D模型M的单个视图vl,以FC8层的输出Dl作为该视图的特征描述,其中k为类的数目;以softMax层输出结果Pl作为分类结果,即视图属于各个类的概率。

5.3、强分类器:基于投票的三维模型分类

给定3D模型M多视图表征中每个视图属于各个类别的概率,以其为输入,构建强分类器,完成三维模型的分类。设依据视图属于每个类的概率分布情况,计算类i所获视图投票知为Tvote,k为类的数目,则模型M的分类结果为

(1)概率投票法

将3D模型各个视图属于某类的概率值Pil作为投票值,累加计算wi所获投票,设n为单个模型视图数目

(2)0-1投票法

依据Pil来看,3d模型最可能属于哪个类就给哪个类投出一票;若3D模型以相近似的概率属于多个类,则给这几个类都投出一票。

其中,是阈值;Lk(Pl)表示视图vl属于各类概率Pl中的第k大元素

(3)加权0-1投票法

对于0-1投票法,有的视图可能投了多票具有不公平性。为此提出加权0-1投票法

其中,视图vl的权重为其投票数目的倒数,来确保各个视图在投票中的相对平等地位。

5.4、距离度量方法

(1)A2A:视图集V(x)内每个视图到V(y)内所有视图的最短距离的平均值作为模型x到y之间的距离

(2)MiniA2A:视图集V(x)内每个视图到V(y)内所有视图的最小距离作为模型x到y之间的距离

(3)V2A:只考虑投票正确的视图间的距离,用视图集V(x)内投票正确的视图同视图集V(y)内投票正确的视图间距离的平均值作为模型x到y之间的距离

(4)V2V:只考虑投票正确的视图间的距离,用视图集V(x)内投票正确的视图同视图集V(y)内投票正确的视图的最小距离作为模型x到y之间的距离

6、实验设计

6.1、分类实验

(1)视图选取实验

3V表示3视图,从结果整体来看,12V和80V取得了最好的分类效果。在非刚性数据集上,这两种方向相当,在刚性数据集上,模型数目较少的12V由于80V;在数目较多时80V优于12V

(2)投票方式选取实验

由表3可知,概率投票法不需要设置任何参数,最为鲁棒,分类性能与其他两种方法相当。

无论选用哪种投票方式,参数如何选取,非刚性三维模型数据集都较为鲁棒。说明非刚性数据集的模型特征信息比较丰富。上表得出,ModelNet10 ,ModelNet40,SHREC10,SHREC11,SHREC15的取值依次为0.7,0.5,0,0,0

(3) 基于视图的分类算法的对比试验

本文算法分类准确率具有一定优势。在更加复杂的ModelNet40数据集上,准确率位居第一。

(4)与其他分类算法的对比试验

从表上看出本文算法有效性,同时也揭示了本文算法在刚性三维模型的分类中还存在一些缺陷。

(5)各个类的根类结果分析

在bed,char,monitor,toilet分类准确率均为1;dresser次之,0.91;在desk,night_stand和table上分类准确率为0.86,0.84,0.75.

其中,table类和desk类在局部结构上有所区别,但是整体形状及其相似。可以看出本文算法在模型的细分类以及局部区域识别方面能力不足,因为无法有效区分这些模型所属类别。

(6)非刚性三维模型分类实验对比

6.2、检索实验

设置视图数目n=12,选取modelnet和shrec完成测试。

(1)4种距离度量算法对比。

(2)刚性3D模型检索实验对比

本文算法和其他4种典型算法的MAP和P-R曲线。

各个类的检索结果。

(3)非刚性三维模型检索实验对比

本文算法和其他算法的P-R曲线

下图是使用V2A检索算法,运行时间如表

PS:

刚性三维模型具有以下特点

1、大多由规则的几何体组成,模型表面的几何信息也比较单一,大多是平面或规则的曲面;

2、局部特征往往几种在特定的功能区域,而不是分散于模型的整个表面,因此不同视角下视图捕获的特征信息较为相似,区别力相对较弱。

基于卷积神经网络和投票机制的三维模型分类与检索 2019 论文笔记相关推荐

  1. 基于卷积神经网络和注意力机制的人眼闭合检测算法

    基于卷积神经网络和注意力机制的人眼闭合检测算法 前言 卷积神经网络 注意力机制 数据集 源代码 致谢 结语 前言 卷积神经网络 近年来,基于神经网络的识别方法已经成为一个热门的研究专题,该方法可用于特 ...

  2. 基于卷积神经网络的不良地质体识别与分类

    在泛函分析中,卷积.旋积或摺积(英语:Convolution)是通过两个函数f 和g 生成第三个函数的一种数学算子,表征函数f 与g经过翻转和平移的重叠部分的面积. 如果将参加卷积的一个函数看作区间的 ...

  3. 基于卷积神经网络的乳腺肿瘤良恶性分类方法研究

    一.创新点: 1.多中心数据处理方法 2.将原始的网络模型的 sofmax 分类器替换成 SVM(主要是将softmax 分类器所用的交叉熵损失函数替换成 SVM 的 hinge loss 形式的损失 ...

  4. 机械臂论文笔记(一)【基于卷积神经网络的二指机械手 抓取姿态生成研究 】

    基于卷积神经网络的二指机械手 抓取姿态生成研究 论文下载 摘要 第1章 绪论 1.1 抓取生成国内外研究现状 1.1.1已知物体抓取生成 1.1.2相似物体抓取生成 1.1.3 未知物体抓取生成 1. ...

  5. 第八届“泰迪杯”数据挖掘挑战赛C题“泰迪杯”奖论文(基于卷积神经网络及集成学习的网络问政平台留言文本挖掘与分析)

    目 录 第一章 引言 1.1挖掘背景 1.2挖掘意义 1.3问题描述 第二章 群众留言分类 2.1数据准备 2.1.1数据描述 2.1.2数据预处理 2.2特征提取 2.3建立模型 2.3.1卷积神经 ...

  6. 基于卷积神经网络的垃圾图像分类算法

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 垃圾分类作为资源回收利用的重要环节之一, 可以有效地提高资源回收利 ...

  7. 卷积神经网络matlab_基于卷积神经网络的遥感图像养殖区自动划分

    基于卷积神经网络的遥感图像养殖区自动划分 摘要:卷积神经网络是目前计算机视觉领域广泛应用的模型.我们在传统卷积神经网络的基础上,替换了全连接层,借助高分辨率图像,对海水养殖区进行识别和标记,最终实现了 ...

  8. 一维卷积神经网络_序列特征的处理方法之二:基于卷积神经网络方法

    前言 上一篇文章介绍了基本的基于注意力机制方法对序列特征的处理,这篇主要介绍一下基本的基于卷积神经网络方法对序列特征的处理,也就是TextCNN方法.序列特征的介绍,背景以及应用可以参考上一篇的详细介 ...

  9. 【华为云技术分享】序列特征的处理方法之二:基于卷积神经网络方法

    [摘要] 本文介绍了针对序列特征采用的处理方法之二:基于卷积神经网络方法,并分析了为何卷积神经网络擅长对于局部特征的提取. 前言 上一篇文章介绍了基本的基于注意力机制方法对序列特征的处理,这篇主要介绍 ...

最新文章

  1. 大型企业门户网站设计开发一般性原则和建议
  2. A - 排名 HDU - 1236 sort(cmp)
  3. java主键后四位顺序号_JAVA中取顺序号 (转)
  4. CSS实现背景透明而背景上的文字图片不透明
  5. centOS 7设置静态IP,使用Xshell远程连接
  6. jdbc详解:1、创建数据库connection连接
  7. STM32工作笔记0074---UCOSIII 任务管理(中)
  8. [转载] Python数学实验与建模 课后习题第1章解析
  9. The processing instruction target matching [xX][mM][lL] is not allowed
  10. Scratch-贪吃蛇小游戏
  11. 第一个Python程序--Python
  12. 快速养成一个好习惯?特别是小孩,培养一个习惯需要多长时间
  13. php替换word字符串,word怎么用符号替换字符
  14. C++ - 线程安全的std::cout
  15. Android 百度地图开发(二)
  16. 局部搜索(爬山法+模拟退火+遗传算法)
  17. 51单片机小白零基础教程——点亮第一个小灯以及流水灯(附原理图、代码详细讲解)
  18. Kotlin学习笔记(二)——函数操作符内置函数
  19. 网站接入服务器必须备案吗,服务器和域名必须备案吗
  20. xbox360链接pc_如何在Windows PC上使用Xbox One控制器

热门文章

  1. 酷睿i7 8550u属于什么级别 i7 8550u相当于台式机什么CPU
  2. mysql select having_MySQL中SELECT子句WHERE和HAVING的区别
  3. 脱单攻略 | 如何找到心仪的另一半?
  4. Linux笔记 No.22---(Linux - PAM)
  5. python中的bisect模块与二分查找
  6. RPC(远程过程调用)详解
  7. python的价值观_朴素的DevOps价值观
  8. 多个日期时间段进行合并计算时长,剔除重叠时间段
  9. Spark基础编程实践
  10. 【Opencv】无损保存png图片,JPG始终有损