Reading Note「1」 3D-RCNN: instance-level 3D Object Reconstruction via Render-and-Compare

文章链接


这篇文章主要介绍的就是如何利用单幅二维图像对物体进行三维重建。从最传统的计算机视觉算法中可以了解到通过对同一物体多个角度的拍摄图像可以进行深度的计算,并进行三维重建。但是随着深度学习的发展已经有大量的工作在做关于单幅图像的三维重建,这次提出的3D-RCNN模型就是基于Fast-RCNN开发出来的实现单幅图像的三维重建的模型。

Network Architecture

这个模型中提出了一种表征三维物体的shape和pose的方式。将抽象的这两个特征转化为可以用参数表示。

1. 物体形状表征

作者利用了CAD中提供的大量3D模型,将每一个模型都用volumetric form表示,然后利用PCA提取出了每一类模型shape的十个基向量,利用这十个基向量构成的特征空间来表征每一类模型的shape。所以对于任意一个3D模型,其shape可以用对应类别的十个基向量的线性组合来表示,从而使3D模型的shape representation变得简单。

2. 物体姿态表征

首先作者认为物体的姿态可以有两种表示方法,一种是egocentric(以自我为中心),另一种是allocentric(以异我为中心)。从下图中可以看到在allocentric情况下,只要是allocentric的角度相同那么所获得的图像就是相同的,同时考虑到我们的重建是以图像feature为基础的,所以为了保证在面对相同的feature时得到结果的唯一性,故采用了allocentric pose。在allocenric下每个pose的表示方法为v=[\theta, \phi, \psi]. \theta, \phi, \psi代表azimuth, elevation, and tilt angles.

Egocentric vs. Allocentric

为了实现姿态估计,直接从单幅图像直接利用深度神经网络进行估计是ill-posed problem,原理上证明只能在很局限的条件下实现这个目的。所以作者利用神经网络预测出2D projection of the canonical object center and 2D amodal bounding box. 然后利用基础的变换就可以恢复成需要的object pose.

接下来整个网络中还有几个重要的点。

首先由于网络模型采用的是Fast-RCNN的结构,里面使用了ROI pooling的技术,目的是为了让不同size的ROI能够被normalize到一个固定的大小,从而保证之后的全联接层能够使用(因为全联接层的输入是固定的,而ROI的大小是不一样的)。也正是因为这个ROI pooling的技术,使得feature map变化了之后,对应的amodal bounding box和center projection都需要做对应的normalize,不然在原feature上的位置(box的大小)可能会与pooling后feature上的位置(大小)出现不符,例如原来的box中只有一个人,pooling之后,用同样的box可能会导致选中了多个人。而这样的normalize,可以在最后的输出阶段进行恢复。

其次,上述的normalize仅仅适用在预测amodal bounding box和center projection的时候,而对于三维空间中的shape和pose的预测则无法使用。但是在预测中同样也需要考虑进这个ROI pooling的操作带来的影响,即原文中提到的underlying 2D transformation.作者的做法就是将POI pooling看作是一种齐次变换,通过capture这个变换,用一个矩阵表示,将矩阵的参数放入feature中进行联合训练,从而提供underlying 2D transformation的信息。

Underlying 2D transformation

同时作者还提到了,在预测pose和shape参数的时候,虽然可以直接使用回归的方法来进行预测,但是如果利用分类来做会有更好的效果,所以作者提出的预测pose和shape的loss就综合了分类以及回归。利用分类来做回归的方法就是将整个range分为多个bin,然后将输出分类到对应的bin上去,可以考虑用每个bin的中值来作为回归的结果。这一步如果采用的是最简单的做法 应该是通过argmax选择概率最大的那一个bin,然后这个bin的中值就是对应的输出值,但是由于argmax是不可微的,所以会造成求梯度时的问题,所以才用了softargmax的方法。所以采用softargmax的方法计算每个shape参数的公式如下。

其中FC层输出的应该是类似于分类网络中的logits,需要再加一层softmax来表示概率,否则会导致和不为1。

最后作者还提出了一个Render-and-Compare Loss,我认为具体的做法就是通过将上述方法得到的object的3D模型加工(Render也有加工的意思)成2D Segmentation mask/2D Depth map,然后与ground truth的2D Segmentation mask/2D Depth map计算loss,用来进一步精细化输出的结果。同时ground truth的2D Segmentation mask/2D Depth map是比较容易获得的annotation。


这篇文章主要是学姐给的科普文,读的不是很认真,上述观点也只是浅显之见。

还是要祝我的小女朋友论文越看越顺利:)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,686评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,668评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,160评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,736评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,847评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,043评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,129评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,872评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,318评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,645评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,777评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,470评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,126评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,861评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,095评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,589评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,687评论 2 351

推荐阅读更多精彩内容