参考链接:https://blog.youkuaiyun.com/limingkaoyan/article/details/97246165
https://zhuanlan.zhihu.com/p/102390034
1. mmdetection是商汤提出的一个目标检测工具箱,大大降低了目标检测的环境配置。
Mmdetection是商汤科技和香港中文大学开源的一个目标检测工具箱,目前支持了常见的目标检测网络Faster-RCNN、Mask-RCNN、Fast-RCNN、SSD、Cascade-RCNN等;
该工具箱具有以下三点优势:performance稍高、训练速度稍快、所需显存稍小
我的电脑一开始是cuda9.0,我又重新安装来cuda10.1,具体的过程如https://blog.youkuaiyun.com/zxmyoung/article/details/116156690
【版本】
- python3.7
- mmcv-1.3.1
- mmdet-2.11.0
- pycocotools-2.0
- torch1.6.0
- torchvision0.7.0
- cuda10.1
文章地址:https://arxiv.org/pdf/1906.07155.pdf
首先下载地址为:https://github.com/open-mmlab/mmdetection
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
下载好后,解压缩,放到自己合适的文件位置中。
以上就是初始的解压缩后的mmdetection文件夾。
在docs/get_started.md中有配置教程,环境介绍等,可以仔细看看。
由于我是使用conda安装,所以安装成功后会在anaconda下创建mmdetection如图1,我们所需要的东西在mmcv下的mmdetection下.
----------------------------------------------------------------------------------------------------------------
以上先删除
创建虚拟环境
根据docs/get_started.md的教程
conda create -n open-mmlab python=3.7 -y
虚拟环境创建好,进入虚拟环境
conda activate open-mmlab
安装pytorch
由于我已经安装了cuda10.1,所以按照官方的说法是安装pytorch1.6,使用文档中提供的命令进行pytorch安装
conda install pytorch==1.6.0 torchvision==0.7.0 cudatoolkit=10.1 -c pytorch -y
以上环境配置好了
(需要注意到是,如果安装是mmdetection-master版本,则需要安装的mmcv是mmcv-full,先不看这的内容)
安装mmdetection
git clone https://github.com/open-mmlab/mmdetection.git cd mmdetection pip install mmcv python setup.py develop # or "pip install -v -e ."
安装编译
pip install -r requirements/build.txt
pip install "git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI"
pip install -v -e . # or "python setup.py develop"
_
2、运行demo测试环境是否安装成功
测试的demo代码地址为:https://github.com/open-mmlab/mmdetection/blob/master/GETTING_STARTED.md#high-level-apis-for-testing-images 。将代码写入py文件,并存放到mmdetection文件夹目录下,然后运行。但是运行官方代码的前提是你已经下载了相关模型的checkpoint的pth文件,并放在mmdetection文件夹目录下的checkpoints文件夹下。官方提供的所有训练好的pth模型文件下载地址如在configs/mask_rcnn/中。另外随便照一张图片重命名为test.jpg放到mmdetection目录下就可以了。
python demo/image_demo.py demo/demo.jpg configs/mask_rcnn/mask_rcnn_r50_fpn_1x_coco.py checkpoint/mask_rcnn_r50_fpn_1x_coco_20200205-d4b0c5d6.pth
问题来了:
ModuleNotFoundError: No module named 'mmcv._ext'
可见mmcv下载的有问题,还是回到上面的问题,要安装mmcv-full
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cu101/torch1.6.0/index.html
再次运行demo命令
python demo/image_demo.py demo/demo.jpg configs/mask_rcnn/mask_rcnn_r50_fpn_1x_coco.py checkpoint/mask_rcnn_r50_fpn_1x_coco_20200205-d4b0c5d6.pth
换一个demo
python demo/image_demo.py demo/demo.jpg configs/mask_rcnn/mask_rcnn_r50_fpn_2x_coco.py checkpoint/mask_rcnn_r50_fpn_2x_coco_bbox_mAP-0.392__segm_mAP-0.354_20200505_003907-3e542a40.pth
结果为
以上表明mmdection环境配置完成。