回顾·Recent Advances on Object Detection in MSRA


回顾·Recent Advances on Object Detection in MSRA


本文由DataFun社区根据微软亚洲研究院视觉组Lead Researcher Jifeng Dai老师在2018 AI先行者大会中分享的《Recent Advances on Object Detection in MSRA》编辑整理而成。

回顾·Recent Advances on Object Detection in MSRA


今天分享的内容会从以下几个方面进行,首先是R-FCN and its extensions,然后是Deformable Conv Nets and its extensions,接着是我们在Video object detection方面所做的工作,最后是一个简单的Summary。

回顾·Recent Advances on Object Detection in MSRA


1.R-FCN and its extensions

首先介绍下R-FCN,它的highlights是Region-based, fully-convolutional networks for object detection非常快、非常准确。在后续也起到了很多extensions的工作。Region-based Object Detectors在不同方法上的比较,给定一些事先决定好的region processor,put工作在R-CNN里面,是将整个网络挂到每个region的ROI上面,这样会导致很多向量。其后续工作SPP-Net&Faster放到R-CNN里面,将Rol convert部分一个子网络applied到Linux上提取一个feature map,然后在shared feature map上做input,分别对不同区域做ROI inputing产生每个部分特定的特征。我们也会保留一些层FC层、conv层等,通过一个ROI specific网络apply到每个抽取的特定区域上,继续对某个区域进行识别。在R-FCN里所有可以学习的layer都是apply到主栈image上,且是一个Pooling convolution方式,能够直接产生一种share在全图上的一个Score map,这个Score map上只需要用非常少的计算量就可以做一些putting操作拿到ROI得分,然后进行识别和检测。

回顾·Recent Advances on Object Detection in MSRA


接下来介绍下为什么之前设计需要把ROI层不自然的插到所有的层之间,这是由于Increasing translation invariance for image classification和Respecting translation variance for object detection联码困境。一方面在feature网络时喜欢translation invariance,如图一群鸟在图中位置不变也可以判断图中是有鸟的类别,所以设计的image convolution尽量让其translation invariance,这样的网络在image classification取得更好地效果。另一方面对于object detection任务需要translation invariance,如图中红色区域框在鸟上可以判断是一只鸟,但是稍微有点translation变化就会出现不是鸟的框;所以把依赖的per-trian网络单独放到object detection任务上需要在每个ROI保留一部分到ROI计算上,这样才能translation invariance feature map上经过多层layer处理达到一个translation invariance效果。

回顾·Recent Advances on Object Detection in MSRA


在R-FCN paper里面尝试用连耦方式解决反联码,网络是shared fully convolutional architectures,是以IPN方式,为了使IPN能够产生translation invariance这样一个output。我们利用是Position-sensitive技术,respond for map不止是由C+1个channel来对每个class产生一个output,而是进行一个分广,增加的evention是来encode Position-sensitive信息,不同的key代表的是不同物体的相对位置。通过Position-sensitive ROI pooling方式基于不同的位置选择不同组的C+1维channel组合成一个output。

回顾·Recent Advances on Object Detection in MSRA


图中是一个婴儿的图,经过R-FCN产生position-sensitive score maps,如第一组respond在婴儿的左上方,会有一个比较强的响应,第三组会在右下方有个比较强的响应,下面一组是对空间位置有个比较强的响应。在做ROI pooling时采用Position-sensitive策略,将其responds取出做一个计算作为框的score,偏一点的框其overlap就没有那么大,其得分较低。

R-FCN有两个比较关键的性质,第一个就是ROI的计算量变成可以忽略的。在之前的RCN其ROI计算量是不可以忽略的,尤其是处理很大的服务,有很多图片时,就会占整个网络计算量很大的一部分。还有一个优点是整个网络结构是端到端。Fast R-CNN与R-FCN比较,基本能获得一样的正确率,速度在训练时也快很多。

回顾·Recent Advances on Object Detection in MSRA


接下来讲一下R-FCN extensions,第一个是我们自己做的,将fully convolutional方式从pure fully convolutional solution 到 instance segmentation。就是要在图像中标出哪些是第一个instance,哪些是第二个instance。好处是非常准确,并没有对feature做working操作,feature在过程中没有丢失任何空间信息,同时速度也是非常快的,region的计算量也是可以忽略。


回顾·Recent Advances on Object Detection in MSRA


第二个R-FCN extensions是Light-head R-CNN,第一行是fast R-CNN,计算量会在每个ROI上有很多,需要有很多层对ROI做计算。第二行是R-FCN,当类别数很多时,会产生一个position-sensitive for map,这部分计算量也是很大。其将position-sensitive推广到feature map上,这样的好处就是在类别很多时,无论是在权属的shared fully convolutional或者ROI都很小,速度很快,在很多公司产品中得到应用。还有一个extensions是R-FCN-3000 at 30fps,Decoupled classification and localization for scaling up,基于这个对R-FCN进行改动。


回顾·Recent Advances on Object Detection in MSRA


2. Deformable Conv Nets and its extensions


回顾·Recent Advances on Object Detection in MSRA


接下来介绍下我们做的第二个技术和所做的改进Deformable Conv Nets,实现了对spatial transformation几何变形进行建模,并不需要额外的supervision。在比较复杂的视觉任务上,实现了Significant accuracy improvements on sophisticated vision tasks。


回顾·Recent Advances on Object Detection in MSRA


几何变形建模是在long standing中的一个挑战,可能来源于人的同时态、同尺度,以及同一变化、同一类别,还有视角的变化。这些有很多经典的算法解决这些问题,第一种就是在建训练数据的时候将这些desired variations建立到训练数据中。建设一组transformation都符合一种规律,如仿射变换,确定仿射变换参数,进行information,将其样本放入训练数据中,这种条件是算法足够强大。第二种方式是设计一些变换算法,不是一个黑箱模式给定什么数据都进行处理,而是尝试显示transformation在算法内进行处理和建模。如cale Invariant Feature Transform利用no-label的feature找到正确的变换,还有Deformable Part-based Model尝试对物体状态进行建模。上述两种方法都需要假定变形属于某一特定类别,都是刻画的简单类别,但是实际中几何形变都是很复杂,只能从数据中进行学习。

回顾·Recent Advances on Object Detection in MSRA


在CNN时代,先前研究主要集中在如何获得更加强大representation能力,将网络变得更深、更加宽大。但是通常忽略了basic model,都是源于inherently limited to model large unknown transformations。比如我们常见的模块如convolutional模块和regular convolutional模块,我们只是fix apply 3X3的convolutional产生一种新的feature map。将regular convolutional模块处理后,在一些特定的feature map layer看到的信息也是fix的,不会随着comment的变化而变化。还有ROI pooling模块也是一个bread structure,如图左上角对应一个人的手,但是第二幅对应一个人的肩膀,这是有很大差异的,我们直接转化为bread structure上旋。


回顾·Recent Advances on Object Detection in MSRA


先前用Spatial Transformer Networks来解决这项工作,是第一篇去学习Spatial Transformation的工作。原理是将feature map用global parametric transformation进行几何变换,还是用fire Transformation,旁边会有一个网络依据input feature map去预测当前图片的几何形态是怎样的。但是complex vision tasks不能很好地工作。

回顾·Recent Advances on Object Detection in MSRA


基于这种情况我们提出了Deformable Convolution和Deformable Ro I Pooling两个模块,能够有效的增强CNN对几何形变的建模能力。基本的想法是尝试去学习deform the sampling locations in the convolution/RoI Pooling modules,改变采样的位置,然后deformation offset可以自适应进行调整。跟Transformation network比较,学习到的是local sense和no-parametric transformation,有很大的对information建模的能力。

设计的模块第一个是Deformable Convolution,是在Regular convolution上加了一个二维offset,能够对非常复杂的free form的information进行建模,设计如上图所示。Offset是从其input feature map 上预测出来,做法是加了一层额外的convolution,每一个位置预测其x、y的变化,一共是18为的output。然后将2X9的convolution进行apply到convolution的Corner上指导采样。

回顾·Recent Advances on Object Detection in MSRA


相似的设计就是Deformable ROI Pooling,就是在ROI的每个bin里面加了offset。同样也是从input feature map上获取,获取方式是在feature map上给定一个input ROI预测一个2X9的offset,只需要依据很少的参数和计算量就可以对几何形变进行建模。

好处是与regular convolution和regular ROI pooling相比有同样的input和output,因此可以直接将Regular convolution -> deformable convolution, Regular Ro I pooling -> deformable Ro I pooling。同时也不需要额外的supervision,对于产生offset的一路是有梯度,可以回传,并不需要对训练数据进行额外的标注。

回顾·Recent Advances on Object Detection in MSRA


当把Deformable convolution运行起来后,对information的建模能力得到进一步的放大。上图中绿点是在deep feature map上的一个点,红点可以将其project back,在三层或四层之前的形态是怎样的,当看的点是在background上,网络自动会将阈值点放的比较大,当绿点在foreground上,可以自适应。通过网络优化给定一个自由度,最后选择一个最好的方案,其他的更依赖于上下文信息。

3. Video object detection

回顾·Recent Advances on Object Detection in MSRA


接下来我们做了一系列工作,取得的效果算法Powering the winner of Image Net VID 2017。进一步的发展是基于High Performance做的更快和更好,最新的文章将其推广到Video Object Detection for Mobiles。在计算量很小,在嵌入型设备或者手机上做核心算法,实现更好的工作。

4.Summary


回顾·Recent Advances on Object Detection in MSRA


最后总结下General object detection 仍然是一个open unsolved fundamental vision problem,如何对不同的objects有很大的large appearance variations进行识别,在mobile devices上如何识别,以及如何对全景进行识别而不是部分识别,以及对每个像素进行识别都是很有挑战的问题。再者对产品的应用不是那么乐观,如对人和车的识别技术还差很远。

Jifeng Dai is currently a Lead Researcher in Visual Computing Group at Microsoft Research Asia (MSRA). Before he joined MSRA in 2014, he received the B.S. degree and the Ph.D. degree from Tsinghua University with honor in 2009 and 2014 respectively. He was also a visiting student to University of California, Los Angeles (UCLA) from 2012 to 2013. His current research focus is on deep learning for high-level vision, especially for instance recognition. He is the first author of R-FCN for object detection and Deformable ConvNets. He and his team members has won the 1st place in COCO challenge in 2015 and 2016. He published around 20 papers in top conferences and journals in the field, receiving more than 2000 citations on Google Scholar. He served as a senior program Committee member of AAAI 2018.


分享到:


相關文章: