姓名:闫伟 学号:15020150038
转载自:https://zhuanlan.zhihu.com/p/27847470,有删节。
【嵌牛导读】:Detectron是Facebook FAIR开源了的一个目标检测(Object Detection)平台。
【嵌牛鼻子】:Facebook Detectron
【嵌牛提问】:那么用 Facebook 的 Detectron 平台该怎么检测物体呢?
【嵌牛正文】:
今年 1 月份,Facebook 对外开源了旗下物体检测平台 Detectron,其基于一个深度学习框架,目前支持大量的机器学习算法。它的开源意味着 Facebook 人工智能实验室在物体检测领域使用的软件,像我们这些普通开发者也能用了,也为我们提供了 TensorFlow 之外的另一款强大工具。Detectron 的其中一个先进功能就是物体掩蔽(object masking),它比物体检测更进一步,不再是围绕图像画出一个简单的边界框,而是画出一个复杂的多边形,比如下图检测“卡戴珊姐妹”的效果:
下面就为大家展示如何使用 Detectron 执行物体检测任务。
安装 Caffe2
第一步就是先安装Caffe2:
git clone --recursive https://github.com/caffe2/caffe2.git && cd caffe2make && cd build && sudo make installpython -c 'from caffe2.python import core' 2>/dev/null && echo "Success" || echo "Failure"
注:要有英伟达 GPU 和 CUDA,才能使用 Detectron。
安装 COCO API
git clone https://github.com/cocodataset/cocoapi.gitcd cocoapi/PythonAPImake install
克隆仓库
成功安装 Caffe2 后,需要克隆Detectron 的仓库:
git clone https://github.com/facebookresearch/Detectron.git && cd Detectron
安装所需的依赖:
pip install \numpy \pyyaml \matplotlib \opencv-python>=3.0 \setuptools \Cython \mock \Scipy
创建 Python 模块:
cd lib && 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。
网友评论