mmdetection环境搭建以及使用自己的数据集测试

一、环境
ubuntu 18.04
cuda 10.1
pytorch 1.6

二、安装mmcv
安装mmcv-full。mmdetection依赖于mmcv,并且要安装pytorch对应的版本,就像torchvision一样,各版本下载链接在https://openmmlab.oss-accelerate.aliyuncs.com/mmcv/dist/index.html

注意:一定要选择适合自己的版本否则会报错:Not compiled with GPU support
亲身尝试过。。。。

三、安装mmdetection
本人安装的是目前最新的版本ersion= 2.7
我在这里就不赘述安装虚拟环境以及torch和torchvision的步骤了。
1、克隆mmdetection到本地

git clone https://github.com/open-mmlab/mmdetection.git

如果git clone下载的速度太慢,可以使用github的镜像进行下载,如下:

或 :git clone https://github.com.cnpmjs.org/open-mmlab/mmdetection.git

2、进入到项目目录中

cd mmdetection

3、 安装mmdetection依赖

安装依赖的库,同时会检查一些库包的版本是否符合

pip install -r requirements/build.txt

4、编译mmdetection环境

python setup.py develop或pip install -v -e .

四、训练自己的数据
1、使用数据集为:https://github.com/EdjeElectronics/TensorFlow-Object-Detection-API-Tutorial-Train-Multiple-Objects-Windows-10/tree/master/images
文件目录如下:

├── poker
│   ├── VOC2007
│   │   ├── Annotations
│   │   ├── JPEGImages
│   │   ├── ImageSets
│   │   │   ├── Main
│   │   │   │   ├── val.txt
│   │   │   │   ├── train.txt

2、修改文件代码
1):
使用cascade_rcnn_r50_fpn_1x进行训练
在config文件中的cascade_rcnn文件中找到该文件并复制出来一份,改名为cascade_rcnn_r50_fpn_1x_poker.py
进入该文件,文件代码修改为:

_base_ = [
    '../configs/_base_/models/cascade_rcnn_r50_fpn.py',
    '../configs/_base_/datasets/voc0712.py',
    '../configs/_base_/schedules/schedule_1x.py', '../configs/_base_/default_runtime.py'
]

2、进入到_base_文件中
对上面的几个文件进行修改,以此为:
1)cascade_rcnn_r50_fpn.py
mmdetection环境搭建以及使用自己的数据集测试_第1张图片
将num_classes 改为你实际识别的类别数目,记住这里不需要加1,即加上背景这一类别,在先前的版本中是需要进行添加的。

2):schedule_1x.py
mmdetection环境搭建以及使用自己的数据集测试_第2张图片
在最后一行修改你epochs

3):default_runtime.pymmdetection环境搭建以及使用自己的数据集测试_第3张图片

4):修改类别
a:在这里插入图片描述
在上述目录中修改class_names.py
mmdetection环境搭建以及使用自己的数据集测试_第4张图片
b:
在这里插入图片描述

在上述目录修改voc.py
mmdetection环境搭建以及使用自己的数据集测试_第5张图片

五、运行测试代码

python tools/train.py configs/cascade_rcnn_r50_fpn_1x_poker.py

六、运行结果在work_dirs文件中
具体为:
mmdetection环境搭建以及使用自己的数据集测试_第6张图片

你可能感兴趣的:(环境搭建,cv,Object,Detection,linux,mmdetection)