美文网首页
mmdetection训练测试voc格数数据

mmdetection训练测试voc格数数据

作者: 赵小闹闹 | 来源:发表于2021-06-11 14:37 被阅读0次

    1 mmdetection 安装及测试

    1.1可以通过docker直接安装

    在docker hub上搜索mmdetection,选择下载量最高的docker
    docker pull vistart/mmdetection
    经验证该docker内,mmdetection版本为2.2.0,mmcv版本为0.62
    编译
    安装后直接跑程序会报编译错误,查找后,应对mmdetection进行重现编译,否则无法使用GPU。
    先进入mmdetection文件夹
    cd mmdetection
    删除该路径下的build文件夹
    rm -rf ./build
    重新编译mmdetection
    pip install -v -e .
    如果docker 内pip命令有问题,使用pip3命令或其他方式解决。
    等待编译完成。

    1.2dockerfile安装

    下载mmdetection项目后
    docker build -t mmdetection docker/
    开启docker时建议加上--shm-size,否则训练时会报错说内存过小。
    sudo docker run -it --gpus all -p 7775:8888 --shm-size 8G -v /home/zhaobing:/workspace mmdetection:latest
    测试安装是否成功可以使用如下语句简单测试

    from mmdet.apis import init_detector, inference_detector
    
    config_file = 'configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py'
    # download the checkpoint from model zoo and put it in `checkpoints/`
    # url: https://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_1x_coco/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth
    checkpoint_file = 'checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth'
    device = 'cuda:0'
    # init a detector
    model = init_detector(config_file, checkpoint_file, device=device)
    # inference the demo image
    inference_detector(model, 'demo/demo.jpg')
    

    2voc数据集处理

    mmdetection默认使用coco格式,使用voc格式数据集可以转换为coco格式,或者按照本文的方式

    2.2数据集位置

    将数据集放到如下位置/mmdetection/data/VOCdevkit/VOC2007 文件夹下为VOC格式的三个文件夹,Annotations JPEGImages ImageSets

    image.png

    2.3修改算法对应的config

    如,configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py


    image.png

    将数据集由coco换为voc0712.py

    退到上级目录找到base,找到faster_rcnn_r50_fpn.py,修改原VOC类的数目为自己数据集的类别,不用+1

    image.png
    修改'../base/datasets/voc0712.py',注释掉voc2012的内容,根据自己的需要对应训练验证的train.txt.val.txt
    image.png

    2.4修改mmdetection/mmdet/datasets目录下voc.py类别

    将class内容换为自己数据集的内容


    image.png

    2.5修改mmdetection/mmdet/core/evaluation目录下class_names.py

    将class内容换为自己数据集的内容


    image.png

    3编译

    每次针对不同算法完成上述操作,运行python setup.py install,重新编译

    4训练

    建立work_dirs文件夹
    将下载的权重文件放到checkpoints文件夹

    python tools/train.py configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py
    
    

    测试

     python ./tools/test.py  configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py work_dirs/faster_rcnn_r50_fpn_1x_coco/latest.pth  --eval mAP
    
    

    相关文章

      网友评论

          本文标题:mmdetection训练测试voc格数数据

          本文链接:https://www.haomeiwen.com/subject/qxfveltx.html