Multi-view Convolutional Neural Networks for 3D Shape Recognition

Multi-view Convolutional Neural Networks for 3D Shape Recognition

文章出自2015年ICCV, code & data戳这里:http://vis-www.cs.umass.edu/mvcnn/
本文立意之处:represent 3D shape 的descriptor种类繁多,最直观的descriptor生成自native 3D format,若是用view-based descriptor效果会如何?针对这个问题,文章从3D shape的不同视角生成2D 图片,利用常规的CNN训练,再对3D shape做分类、识别,效果远远好于直接用3D shape做训练数据的state_of_art的算法。
算法的框架见下图:
Multi-view Convolutional Neural Networks for 3D Shape Recognition_第1张图片
从3D Shape的不同视角生成2D图片,每张2D图片均通过卷积神经网络CNN1(注意,是同一个CNN1,参数是一样的),在View Pooling layer处融合为一个整体, 后面再接上一个卷积神经网络CNN2,最后接上常规softmax。

Input: A Multi-view Representation

3D模型是以网格的形式存储的,为了得到Multi-View的渲染图,先要设定一个view-point(virtual cameras,虚拟相机),论文尝试了两种方案:第一种方案:假定3D模型按一个特定的轴(e.g. Z-axis)放置,绕着此轴每隔三十度设定一个虚拟相机,如此则可以得到12个2D渲染图,fig 1就是此种方案生成2D图片的示例。第二种方案,3D模型随意摆放,因为无法确定方位等信息,所以需要更多的2D渲染图来得到足够的信息。作者生成一个围绕着3D模型的20面体,在20面体每一面的中心位置设置一个虚拟相机,每个虚拟相机按照0,90,180,270度分别拍摄一张2D图片,如此可以得到20*4 = 80张不同视角的渲染图。

Recognition with Multi-view Representations

利用已经生成的2D图片,对每个视角生成一个descriptor,如何整合不同视角的descriptor来描述3D模型就成了识别任务的主要问题。
Image descriptors:作者考虑了两种descriptor,一种是hand-crafted的Fisher vectors with multi-scale SIFT,另外一种是CNN。其中CNN模型,作者选用了VGG-M network,VGG-M 包含5个convolutional layers(1,2,3,4,5),后面接了三个fc(6,7,8),最后接上softmax。其中fc7(4096-dimensional)用来作为图像的描述算子。网络先用ImageNet预训练,用由3D渲染得到的2D图片fine-tunning。作者的实验表明,无论是hand-crafted的Fisher vectors with multi-scale SIFT还是VGG-M特征都取得了非常不错的性能,效果好于之前流行的一些state_of_art算法,如:3D Shape等。
Classification:作者选用线性SVM训练分类器,训练时采用one-vs-rest方式。测试时,选取3D模型12个不同视角2D图片的最高值作为3D模型的类别。作者还尝试了对12个视角的分值取平均来确定3D的类别,效果不佳。

Multi-view CNN: Learning to Aggregate Views

前面内容的分类效果虽然好于已有的3D算法效果,但并未将多视角descriptor整合起来,为了aggregate这些descriptor,作者设计了 multi-view CNN (MVCNN) 。每一个视角的2D图片均separate通过一个卷积神经网络CNN1,在view-pooling layer处aggregated,然后通过下一个卷积神经网络CNN2。其中CNN1只有一个,也就意味着所有的2D图片通过的是同一个CNN。View-pooling层在不同的2D图片的相同位置做像素级取最大值操作,这个与max-pooling有点像。不同之处在于,max-pooling是对同一个feature map的相邻位置取极大值,view-pooling是跨通道取极大值。另外 ,作者还尝试了取平均值操作,但是效果不佳。View-pooling layer可以放在整个架构的任意一个位置。

Experiment

作者主要对比了SPH, Light Field,3D shapeNets和Fisher Vectors descriptor。具体结果见下表
Multi-view Convolutional Neural Networks for 3D Shape Recognition_第2张图片
Multi-view Convolutional Neural Networks for 3D Shape Recognition_第3张图片

最后给出作者vedio里面的三句话来评价本paper:
Generates compact shape descriptors
Leverages both image and 3D shape datasets
Can be fine-tuned end-to-end for improved performance

你可能感兴趣的:(深度学习)