资源 | 图森未来开源:Mask R-CNN的完整MXNet复现

当地时间 10 月 22 日,计算机视觉国际顶级会议 ICCV 2017 公布了获奖论文。Facebook AI 研究员何恺明获得最佳论文奖,同时他也是最佳学生论文的作者之一。这篇文章是国内自动驾驶创业公司图森未来对最佳论文《Mask R-CNN》的完整复现,并将其开源到了Github 上。

对于 CV 圈的小伙伴们来说,这两天最大的新闻一定是何恺明大神在 ICCV 上拿下了双 best paper 啦!在各种社交平台上,大家纷纷表示「神就是神,非吾等凡人能比」,还有小伙伴直言「人家的 best paper 都快比我的 paper 多了」……

当然,大家的种种「自愧不如」,其实更多的是在表达对恺明大神的崇拜以及对最优秀的学术研究人员表达敬意。与此同时,很多从业者更关心的问题是:什么时候能看到开源代码?

图森未来也由衷地恭喜恺明大神,并且为他所取得的成就而感到振奋。而且这一次,除了通过社交媒体平台为恺明大神打 call 之外,图森未来还做了一件实实在在的事情——完整复现何恺明大神的论文结果(Mask R-CNN 和 Feature Pyramid Network),并将对应代码开源给大家!这也是第一份能够完整复现何恺明大神论文结果的开源代码。

论文中用于实例分割的 Mask R-CNN 框架

Github 项目地址:https://github.com/TuSimple/mx-maskrcnn

MX Mask R-CNN

这是一份对 Mask R-CNN 的实现。该实现的 repository 主要是基于 Faster RCNN 的 mx-rcnn 实现。

主要结果

Cityscapes

主干: Resnet-50-FPN

COCO

马上放出,请保持关注。

系统要求

我们是在以下配置上测试的代码:

Ubuntu 16.04, Python 2.7

numpy(1.12.1), cv2(2.4.9), PIL(4.3), matplotlib(2.1.0), cython(0.26.1), easydict

训练准备

1. 下载 Cityscapes 数据 (gtFine_trainvaltest.zip, leftImg8bit_trainvaltest.zip). 提取到 ‘data/cityscape/’。文件夹如下:

2. 下载 Resnet-50 预训练模型

bash scripts/download_res50.sh

3. 使用 ROIAlign 运算符构建MXNet

cp rcnn/CXX_OP/* incubator-mxnet/src/operator/

从源代码建立 MXNet 请参考教程:https://mxnet.incubator.apache.org/get_started/build_from_source.html

4. 构建相关 cython 代码

make

5. 开始训练

bash scripts/train_alternate.sh

评估准备

1. 准备 Cityscapes 评估脚本

bash scripts/download_cityscapescripts.sh

2. Eval

bash scripts/eval.sh

Demo

1. 模型可以从以下链接中下载,请将其放置在 model 文件夹内。

Dropbox 链接:https://www.dropbox.com/s/zidcbbt7apwg3z6/final-0000.params?dl=0

百度云链接:https://pan.baidu.com/s/1o8n4VMU

2. 请确认你已经把 cityscapes 数据放置在「data/cityscapes」文件夹中。

bash scripts/demo.sh

参考

Tianqi Chen, Mu Li, Yutian Li, Min Lin, Naiyan Wang, Minjie Wang, Tianjun Xiao, Bing Xu, Chiyuan Zhang, and Zheng Zhang. MXNet: A Flexible and Efficient Machine Learning Library for Heterogeneous Distributed Systems. In Neural Information Processing Systems, Workshop on Machine Learning Systems, 2015

Ross Girshick. “Fast R-CNN.” In Proceedings of the IEEE International Conference on Computer Vision, 2015.

Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun. “Faster R-CNN: Towards real-time object detection with region proposal networks.” In IEEE Transactions on Pattern Analysis and Machine Intelligence, 2016.

Tsung-Yi Lin, Piotr Dollár, Ross Girshick, Kaiming He, Bharath Hariharan, Serge Belongie. “Feature Pyramid Networks for Object Detection.” In Computer Vision and Pattern Recognition, IEEE Conference on, 2017.

Kaiming He, Georgia Gkioxari, Piotr Dollár, Ross Girshick. “Mask R-CNN.” In Proceedings of the IEEE International Conference on Computer Vision, 2017.

Yangqing Jia, Evan Shelhamer, Jeff Donahue, Sergey Karayev, Jonathan Long, Ross Girshick, Sergio Guadarrama, and Trevor Darrell. “Caffe: Convolutional architecture for fast feature embedding.” In Proceedings of the ACM International Conference on Multimedia, 2014.

Jia Deng, Wei Dong, Richard Socher, Li-Jia Li, Kai Li, and Li Fei-Fei. “ImageNet: A large-scale hierarchical image database.” In Computer Vision and Pattern Recognition, IEEE Conference on, 2009.

Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun. “Deep Residual Learning for Image Recognition”. In Computer Vision and Pattern Recognition, IEEE Conference on, 2016.

Marius Cordts, Mohamed Omran, Sebastian Ramos, Timo Rehfeld, Markus Enzweiler, Rodrigo Benenson, Uwe Franke, Stefan Roth, Bernt Schiele. “The Cityscapes Dataset for Semantic Urban Scene Understanding.” In Computer Vision and Pattern Recognition, IEEE Conference on, 2016.