【转】Deep MANTA论文阅读笔记

转自:https://zhuanlan.zhihu.com/p/25996617

(注:阅读笔记有很多自己的主观判断和解释,会有错误与误解之处,也在持续修改中,希望大家能够共同讨论进步,加深理解。)

一、研究背景及思路:

在2D图像物体检测任务中,RCNN、Fast RCNN、Faster RCNN以及刚发布的mask-RCNN等算法,对于单张图像物体检测均取得了较好的效果,对自动驾驶场景分析有着重要的作用,但是对于3D真实世界场景依然描述不够。

在自动驾驶中,除了能够检测车辆、行人、障碍物以外,对于其物体速度、方向的检测与定位也是非常重要的。在这篇论文中,作者实现了仅通过单张图像进行:

(1)精确的车辆区域检测;(2)车辆部件(如车轮、车灯、车顶等)定位;(3)车辆部件可见性检测(车辆部件在图像中是否可见);(4)车辆3D模板匹配及3D定位。

为了实现上述多重任务,作者充分利用了车辆几何特征,将几何特征与语义特征(卷积神经网络中多层次特征)进行结合,下面将对从各方面进行解析:

二、算法流程及各环节基本原理:

下图是论文的流程示意图:

PhaseI : Deep MANTA Network

1、各符号含义解析:

论文第一个阶段是DeepMANTA Network,目标输出是:B、S、V、T。由于这篇论文采用了创新的研究思路,因此,有较多关于自定义变量的解释,如果不清晰界定各变量代表的物理含义,则无法理解网络的前后因果,所以,第一步,应该把作者对于相关符号的定义理解清楚。

(1)B :B 是box的首字母,表示物体边界框,在论文中有两种表示:2D物体区域表示、3D物体区域表示。

对于2D车辆边界框,使用四个变量进行表示:中心位置坐标(cx,cy),及边界框宽高(w,h),与Faster RCNN等物体检测方法定义边界框方式一致;

对于3D车辆边界框,使用五个变量进行表示:车辆中心位置3D坐标(cx,cy,cz),车辆方向θ,车辆实际长宽高t = (w,h,l)

(2)S :S 表示part coordinates,即物体关键部位(几何节点)的坐标,汽车的各部件节点如下图红色节点图所示:

我们可以通过这个节点图较为顺利的识别出车辆的基本形状与大小,能够较好地反映车辆信息

同上,S也有两种形式,2D与3D,分别描述车辆关键部位在2D图像与3D真实坐标系中的坐标位置

(3)V :V 表示车辆各部件的可见性,这里作者定义了4 classes of visibility,分别是:

a. 可见:visible ifthe part is observed in theimage

b.被其他物体遮挡:occluded if the part is occluded by another object

c.被自身遮挡:self-occluded if the part is occluded by the vehicle

d. 截断:truncatedif the part is out of the image

我们可有效利用V,确定摄像机拍摄位置及车辆的3D坐标,因为只有在特定的位置观测,才能与V相符合。

(4)T:T表示模板相似性向量,3Dtemplate similarity vector,用以衡量图像中车辆与每个车辆模板的相似性,用rm = (rx, ry,rz)表示,分别对应着三个坐标轴对应的缩放因子。

上图第一行是车辆3D model,第二行是3Dtemplate,第三行是3D shape

2、Level 1 阶段 : region proposal network

首先,输入单张RGB图像,经过卷积层,得到FeatureMaps,这个Feature Maps在Level 1、Level 2、Level 3阶段中共享

在Level 1阶段,将Feature Maps送入卷积层+RPN(使用Faster-RCNN论文中的方法),可生成系列物体区域坐标集,用B1表示,原理与Faster-RCNN方法一致。

2、Level 2 阶段: firstrefinement


将ROI对应区域的特征图,经过ROI Pooling(Fast-Rcnn),生成固定大小的regions,经过两步卷积(Levell卷积层+level2卷积层),再经过re-fined by offset transformations,生成系列物体区域坐标集,用B2表示。

3、Level 3 阶段:second refinement

重复Level2,生成系列物体区域坐标集,用B3表示。

论文作者分析了采用这种三层网络的原因:(1)克服大的物体大小变化,提供更高的准确度;(2)保持高分辨率,用于检测难以检测的车辆;

作者原话是:Thisprocedure differs than Faster-RCNN [33] in that our iterative refinement steps overcome the constraints of large object scale variations and providemore accurate detection. Furthermore,in our approach, ROI pooledregions are extracted on thefirst convolution feature maps for keeping high resolution to detect hard vehicles.

4、多任务预测/回归:Many-task prediction

对于B3中的每一个bounding box,同时输出其对应的:S,V,T,各符号含义在文章开头已经介绍。

这个环节比较神奇,作者也没有进行过多的描述,更是整篇论文的精髓所在。我在最初阅读论文的时候,无法理解网络为什么具有这么强大的功能,能够同时输出2D bounding box坐标B、2D 车辆部件坐标S、部件可见性V、车辆模型缩放因子T,那么它是如何实现的?这里给出我自己的初步理解,由于我缺乏网络训练实践,因此更多的形象感性的理解。

首先,回顾一下在Faster-RCNN中,如何输出boundingbox的,如何利用卷积层中的特征,回归出物体边界框?

我们都知道,物体边界框可由其中心点及边界框高宽唯一确定。那么,在得到conv feature map的基础上,对于featuremap中的一个像素点(如上图左边红色方框中蓝色中心点),选择某个anchor boxes(k个anchor boxes),如果我们回归出该anchor boxes与实际物体边界框的差别两框中心点之差,以及两框形状之差,具体计算如下图公式所示),而anchor boxes的中心点坐标(上图左边红色方框中蓝色中心点)位置是已知的,我们就能计算出边界框坐标。

因此,上述“关于如何利用卷积层中的特征,回归出物体边界框”的问题,可以变为“如何利用卷积层中的特征,回归出该anchor boxes与实际物体边界框的差别”,这个问题我个人认为是Faster RCNN论文中的妙笔,这里我是这样理解的:

为了一步步理解,我们先假设图像中车辆边界框大小固定,即图像中车辆scale固定。

对于车辆而言,有低层特征与高层特征,这里不妨认为低层特征如边缘,高层特征如车轮、车灯、车窗。在车辆边界框大小固定的情况下,这些车辆的小零部件与车辆整体的相对位置及距离一般是固定的,如人脸与人体的相对位置,所以这个参数变换是可学习的,能够根据特征的位置与种类进行确定。

当检测框检测到汽车的所有特征,256-d的所在特征层会全部响应,此时回归值例如(0,0,1,1),表示没有偏移,大小一致;当检测框检测到前车轮(车灯+车轮)特征(红色线框内为anchor box所在区域),回归值例如(-5,-5,3,3),表示应该向左上偏移,放大三倍;

因此,能够利用卷积层中的特征,回归出该anchor boxes与实际物体边界框的差别。思想感觉与DPM算法有一点点的联系。

4、Deep MANTA Training:

作者将refinement分为三个层次:l\in \left\{ 1,2,3 \right\} ,需要最小化五个损失函数,分别是:L_{rpn} ,L_{det} ,L_{parts} ,L_{vis} ,L_{temp} ,对于一张输入图像,网络联合最优最小化全局损失函数:L = L^{1} +  L^{2} + L^{3},其中:

L_{rpn}与Faster RCNN中的定义一致; L_{det}表示区别车辆与背景以及box回归的损失,一部分是类别损失,在属于车辆区域的情况下,加上检测框位置回归损失,用位置差(两框中心点之差,以及两框形状之差)进行计算。 还有其他三个损失函数,定义也进行了详细的描述,这里只展示截图:

PhaseII : Deep MANTA Inference

这部分实现了由2D坐标到3D空间确定的转换,用到了perspective-n-point-problem方面的计算机视觉基础知识,这方面还在继续学习,等深入理解以后再进行更新。

参考文献:

[1] Shaoqing Ren, Kaiming He, Ross B. Girshick, Jian Sun:Faster R-CNN: Towards Real-Time Object Detection with RegionProposal Networks. NIPS 2015: 91-99

[2] Florian Chabot, Mohamed Chaouch, Jaonary Rabarisoa, Céline Teulière,Thierry Chateau:DeepMANTA: A Coarse-to-fine Many-Task Network for joint 2D and 3D vehicle analysisfrom monocular image. CVPR 2017


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值