用 Facebook 的 Detectron 平臺該怎麼檢測物體呢?python
今年 1 月份,Facebook 對外開源了旗下物體檢測平臺 Detectron,其基於一個深度學習框架,目前支持大量的機器學習算法。它的開源意味着 Facebook 人工智能實驗室在物體檢測領域使用的軟件,像咱們這些普通開發者也能用了,也爲咱們提供了 TensorFlow 以外的另外一款強大工具。Detectron 的其中一個先進功能就是物體掩蔽(object masking),它比物體檢測更進一步,再也不是圍繞圖像畫出一個簡單的邊界框,而是畫出一個複雜的多邊形,好比下圖檢測「卡戴珊姐妹」的效果:git
下面就爲你們展現如何使用 Detectron 執行物體檢測任務。github
安裝 Caffe2算法
第一步就是先安裝Caffe2:api
git clone --recursive https://github.com/caffe2/caf... &&cdcaffe2make&&cdbuild && sudomakeinstallpython-c'from caffe2.python import core'2>/dev/null &&echo"Success"||echo"Failure"框架
注:要有英偉達 GPU 和 CUDA,才能使用 Detectron。dom
安裝 COCO API機器學習
git clone https://github.com/cocodatase...工具
克隆倉庫學習
成功安裝 Caffe2 後,須要克隆 Detectron 的倉庫 :
git clone https://github.com/facebookre... &&cdDetectron
安裝所需的依賴:
pip installnumpypyyamlmatplotlibopencv-python>=3.0setuptoolsCythonmockScipy
建立 Python 模塊:
cdlib &&make&&cd..
建立推斷(inference)
如今咱們只需使用以下命令,對倉庫中的 demo 照片進行物體檢測:
python tools/infer_simple.py \
--cfg configs/12_2017_baselines/e2e_mask_rcnn_R-101-FPN_2x.yaml \
--output-dir demo/output --image-ext jpg --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 \
demo
而後你就能在 Detectron/demo/output 目錄下發現一張 PDF 格式的照片輸出。
若是想測試你本身的照片,只需往 Detectron/demo 目錄中添加 JPG 文件。最好讓照片像素在 600-800px 之間,這樣效果最佳。
總的來看,Detectron 對通常物體無論是進行檢測仍是掩蔽,都有不錯的表現。若是你想玩轉除了 TensorFlow 以外的其它物體檢測平臺,不妨試試 Detectron。