论文阅读笔记《IM2CAD》

核心思想

  本文提出一种从二维图像中还原房间布置并重建家具模型的方法。首先,采用逐像素的分类的方法,识别图像中的墙壁、地板和天花板等元素,并将其拟合成盒型形状,得到房间的基础几何形状。然后,使用目标检测算法识别出图像中桌子、椅子、床、书柜等家具目标,利用检测结果从CAD模型数据库中检索得到最接近的三维模型,并预测一个粗略的3D位姿。最后对所有目标的位姿和形状进行迭代优化,得到最佳的位姿和放缩尺度。

实现过程

在这里插入图片描述
  首先,输入二维场景图像,本文采用FCN网络(全卷积神经网络VGG)对每个像素进行分类,将场景内的像素划分为天花板,地板,左侧、中间和右侧墙壁等类别(关于如何对房间布置进行估计,文中并没有详说)。然后,利用Faster RCNN对图像中的家具目标进行检测,得到目标物体的边界框和标签。接下来从ShapeNet提供的3D模型数据集(共包含9193个物体的模型,每个模型提供32个视角下的渲染图)中,检索与目标物体最相似的3D模型。具体而言,就是利用卷积神经网络分别提取目标物体图像和模型渲染图像的深度特征,计算特征之间的余弦相似度,选择其中相似程度最高的作为目标物体最佳匹配的3D模型,并根据该模型对应的视角初步估计目标物体的3DOF姿态。
  通过检索获得目标物体的模型后,要将目标模型放置到场景当中。首先,根据房间空间的三个正交的消失点来估计相机的内部参数 K K K和旋转矩阵 R R R,并选择房间可视的角点作为世界坐标系的原点。将3D模型的边界箱全部归一化为单位立方体,进而可以计算该立方体的八个顶点在图像中的坐标。根据从相机光心发出并穿过立方体底面的四个顶点的光线与地面的交点,可以确定目标物体的位置和x与y方向(平行于地面)上的放缩比例。为了计算z方向上的放缩比例,本文计算了立方体四个垂直边缘的长度和从地面到与消失线平行的直线相交的边缘长度之间的比例,消失线的高度等于相机的高度。对于窗户这一对象,本文进行特殊处理,因为他们不与地面接触,而是与墙面接触。计算窗户的边界框与各个墙面之间的交集,并选择重叠程度最大的作为窗户所在的墙面。然后将窗户的边界框重投影到墙面上得到一个四边形,则窗户的位置和姿态取决于该四边形内部最大的轴向矩形。
  最后通过渲染和匹配对场景估计结果作进一步的优化。上一步得到的位置信息容易受到遮挡,物体姿态估计误差等问题的影响,导致目标的位姿和放缩比例估计存在较大误差。因此采用优化的方式,来进一步得到更加精确的姿态和放缩比例结果。假设在场景中检测到 N N N个物体,每个物体都包含位置 ( x , y , z ) (x, y, z) (x,y,z)和沿三个轴的旋转角度及放缩比例共7个参数,因此可得到一个长度为 7 N 7N 7N的特征向量,给定该向量可以渲染出一个场景并得到场景图象 I ∗ I^* I,优化的目标就是最小化场景图像 I ∗ I^* I和原始输入图像 I I I之间的余弦距离:
在这里插入图片描述
C \mathcal{C} C表示卷积神经网络的网络层集合, C i C_i Ci表示卷积神经网络的第 i i i层。高层的网络提供抽象的形状特征,而底层网络提供类似边缘和角点这样的图像细节特征,随着算法的迭代,底层的网络会发挥更大的作用,来帮助目标位姿收敛得更加精确。由于目标函数是不可微分的,因此本文采用COBYLA算法进行迭代优化。

创新点

  • 提出一种通过模型检索和匹配,来进行室内场景3D估计的方法
  • 通过迭代优化的方式,提高位姿和形状估计的精度

算法评价

  作者首先声明了由于实际生活中物体的种类形式太多,不可能对每个目标都准确的进行估计,因此作者利用现有的模型数据库,从中寻找到与待匹配的目标最接近的模型来表示该目标,从而对三维场景中的主要元素进行估计。但本文主要是针对室内场景,一方面是目标检测主要针对于椅子、桌子、床等家具,另一方面是在位姿估计过程中用到了消失点、消失线的信息,而这需要利用空间中的平行线在图像中的交点(由于透视变换的原因空间中的平行线在图像中不平行),而自然场景中往往难以确定两条平行线,室内空间相对容易寻找(如墙壁的两个边缘)。除此之外,本文对物体的位姿估计基于物体都放置在地面上这一假设(窗户作为特例单独处理),而这对于许多场景而言也是很难满足的。

如果大家对于深度学习与计算机视觉领域感兴趣,希望获得更多的知识分享与最新的论文解读,欢迎关注我的个人公众号“深视”。在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深视

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值