FAIR開源Detectron:整合全部頂尖目標檢測演算法

思源發表於2018-01-23

昨天,Facebook AI 研究院(FAIR)開源了 Detectron,業內最佳水平的目標檢測平臺。據介紹,該專案自 2016 年 7 月啟動,構建於 Caffe2 之上,目前支援大量機器學習演算法,其中包括 Mask R-CNN(何愷明的研究,ICCV 2017 最佳論文)和 Focal Loss for Dense Object Detection,(ICCV 2017 最佳學生論文)。Facebook 稱,該工具包已被應用與公司內部很多團隊應用於各類應用中,一旦訓練完成,這些計算機視覺模型可被部署在雲端或移動裝置上。


專案地址:https://github.com/facebookresearch/Detectron


Detectron 


Detectron 是 Facebook AI Research 實現頂尖目標檢測演算法(包括 Mask R-CNN)的軟體系統。該系統是基於 Python 和深度學習框架 Caffe 2 而構建的。


在 FAIR 實驗室,Detectron 目前已經支援很多研究專案的實現,包括:


  • Feature Pyramid Networks for Object Detection (https://arxiv.org/abs/1612.03144)

  • Mask R-CNN (https://arxiv.org/abs/1703.06870)

  • Detecting and Recognizing Human-Object Interactions (https://arxiv.org/abs/1704.07333)

  • Focal Loss for Dense Object Detection (https://arxiv.org/abs/1708.02002)

  • Non-local Neural Networks (https://arxiv.org/abs/1711.07971)

  • Learning to Segment Every Thing (https://arxiv.org/abs/1711.10370)

  • Data Distillation: Towards Omni-Supervised Learning (https://arxiv.org/abs/1712.04440)

FAIR開源Detectron:整合全部頂尖目標檢測演算法

Mask R-CNN 輸出示例


簡介


Detectron 的目標是為目標檢測研究提供高質量、高效能的程式碼庫,它靈活的特性可以支援快速實現和驗證新研究。Detectron 目前包含以下目標檢測演算法的實現:


  • Mask R-CNN (https://arxiv.org/abs/1703.06870)—Marr Prize at ICCV 2017

  • RetinaNet (https://arxiv.org/abs/1708.02002)—Best Student Paper Award at ICCV 2017

  • Faster R-CNN (https://arxiv.org/abs/1506.01497)

  • RPN (https://arxiv.org/abs/1506.01497)

  • Fast R-CNN (https://arxiv.org/abs/1504.08083)

  • R-FCN (https://arxiv.org/abs/1605.06409)


這些目標檢測演算法主要使用以下卷積網路架構:


  • ResNeXt{50,101,152} (https://arxiv.org/abs/1611.05431)

  • ResNet{50,101,152} (https://arxiv.org/abs/1512.03385)

  • Feature Pyramid Networks (https://arxiv.org/abs/1612.03144) (with ResNet/ResNeXt)

  • VGG16 (https://arxiv.org/abs/1409.1556)


在這些目標檢測演算法中,我們比較熟悉的就是 Mask R-CNN,它是在 Faster R-CNN 上的擴充套件,即在用於邊界框識別的分支上新增了一個並行的分支以預測目標掩碼。該方法能夠有效地檢測影象中的目標,同時還能為每個例項生成一個高質量的分割掩碼。而在 RetinaNet 中,研究者提出了全新的 Focal Loss 方法,並集中於稀疏、困難樣本中的訓練,避免了訓練過程中可能出現的大量負面因素。該論文的研究者表示,當使用 Focal Loss 進行訓練時,RetinaNet 可以達到此前一步檢測器的速度,同時準確性高於業內最佳的兩步檢測器。除了這兩個在 ICCV 2017 大為出彩的目標檢測演算法外,其它如 Fast R-CNN 和 R-FCN 等都是十分優秀和經典的目標檢測方案。


在卷積網路架構中,值得注意的是特徵金字塔型網路(FPN),它主要融合了多層特徵而改進了 CNN 的特徵提取方式。它利用了 CNN 固有的多尺度、多層級的金字塔結構去構建特徵金字塔網路,並使用一種自上而下的 Skip Connector 在所有尺度上構建高階語義特徵圖。


上述的檢測演算法和 CNN 架構在目標檢測任務上都有非常好的效果,他們基本上展現了該領域最優的水平。而 Detectron 包含了這些演算法和架構的一大組基線結果和已訓練模型,我們可以直接下載它們。例如下圖是 RetinaNet 的基線結果與對應的模型下載地址,它同時還提供了訓練和推斷過程中的有用資料。

FAIR開源Detectron:整合全部頂尖目標檢測演算法

我們粗略統計了一下,該專案有 70 多個不同設定的預訓練模型。因此 Detectron 基本上已經是最目前包含最全與最多目標檢測演算法的程式碼庫了。此外,該專案也提供了安裝指南,包括 Caffe 2 和 COCO 資料集。值得注意的是,該程式碼庫用的是 Python 2,它還需要 NVIDIA GPU、Linux 系統和其它一些標準的 Python 數值計算包。


  • 模型庫與基線結果:https://github.com/facebookresearch/Detectron/blob/master/MODEL_ZOO.md

  • 安裝指導:https://github.com/facebookresearch/Detectron/blob/master/INSTALL.md


最後,Detectron 還提供了一個文件以展示如何使用該研究工具。例如我們在影象檔案目錄執行推斷,我們可以直接使用 infer.simple.py 工具。在下面的案例中,我們使用了一個端到端已訓練的 Mask R-CNN 模型(以 ResNet-101-FPN 為基本卷積架構)執行推斷:

  1. python2 tools/infer_simple.py \

  2.    --cfg configs/12_2017_baselines/e2e_mask_rcnn_R-101-FPN_2x.yaml \

  3.    --output-dir /tmp/detectron-visualizations \

  4.    --image-ext jpg \

  5.    --wts https://s3-us-west-2.amazonaws.com/detectron/35861858/12_2017_baselines/e2e_mask_rcnn_R-101-FPN_2x.yaml.02_32_51.SgT4y1cO/output/train/coco_2014_train:coco_2014_valminusminival/generalized_rcnn/model_final.pkl \

  6.    demo


更多詳細的使用文件請檢視:https://github.com/facebookresearch/Detectron/blob/master/GETTING_STARTED.md。


參考文獻


  • Data Distillation: Towards Omni-Supervised Learning. Ilija Radosavovic, Piotr Dollár, Ross Girshick, Georgia Gkioxari, and Kaiming He. Tech report, arXiv, Dec. 2017.

  • Learning to Segment Every Thing. Ronghang Hu, Piotr Dollár, Kaiming He, Trevor Darrell, and Ross Girshick. Tech report, arXiv, Nov. 2017.

  • Non-Local Neural Networks. Xiaolong Wang, Ross Girshick, Abhinav Gupta, and Kaiming He. Tech report, arXiv, Nov. 2017.

  • Mask R-CNN. Kaiming He, Georgia Gkioxari, Piotr Dollár, and Ross Girshick. IEEE International Conference on Computer Vision (ICCV), 2017.

  • Focal Loss for Dense Object Detection. Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, and Piotr Dollár. IEEE International Conference on Computer Vision (ICCV), 2017.

  • Accurate, Large Minibatch SGD: Training ImageNet in 1 Hour. Priya Goyal, Piotr Dollár, Ross Girshick, Pieter Noordhuis, Lukasz Wesolowski, Aapo Kyrola, Andrew Tulloch, Yangqing Jia, and Kaiming He. Tech report, arXiv, June 2017.

  • Detecting and Recognizing Human-Object Interactions. Georgia Gkioxari, Ross Girshick, Piotr Dollár, and Kaiming He. Tech report, arXiv, Apr. 2017.

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

  • Aggregated Residual Transformations for Deep Neural Networks. Saining Xie, Ross Girshick, Piotr Dollár, Zhuowen Tu, and Kaiming He. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017.

  • R-FCN: Object Detection via Region-based Fully Convolutional Networks. Jifeng Dai, Yi Li, Kaiming He, and Jian Sun. Conference on Neural Information Processing Systems (NIPS), 2016.

  • Deep Residual Learning for Image Recognition. Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016.

  • Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun. Conference on Neural Information Processing Systems (NIPS), 2015.

  • Fast R-CNN. Ross Girshick. IEEE International Conference on Computer Vision (ICCV), 2015. 

相關文章