MMdetection

主要实现如下的功能:

  • 使用现有的模型对给定的图像进行推理
  • 在标准数据集上测试已有的模型
  • 在标准数据集上训练预定义的模型

使用现有的模型对给定的图像进行推理

configs文件夹集成各种算法,模型在config文件中定义,设置所有东西:backbone,深度,训练策略,选取的优化器,数据处理参数…….
而模型的参数存在于checkpoint文件中。
config文件命名规则:

{model}_[model setting]_{backbone}_{neck}_[norm setting]_[misc]_[gpu x batch_per_gpu]_{schedule}_{dataset}

在这里插入图片描述
demo文件夹
Image Demo:有三个必要的参数,依次为测试图像的路径, config文件的路径, checkpoint文件的路径。还可以指定cpu还是gpu运行, 默认值为gpu, 保留bbox的分数阈值,默认为0.3

python demo/image_demo.py \
    ${IMAGE_FILE} \
    ${CONFIG_FILE} \
    ${CHECKPOINT_FILE} \
    [--device ${GPU_ID}] \
    [--score-thr ${SCORE_THR}]

例如

python demo/image_demo.py demo/demo.jpg \
    configs/faster_rcnn_r50_fpn_1x_coco.py \
    checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth \
    --device cpu

webcam demo(测试摄像头):基本的参数同上,必须指定的参数为config文件的路径,checkpoint文件的路径,其他的gpu或者cpu设备, 摄像头id号, 得分阈值可以选择指定。

python demo/webcam_demo.py \
    ${CONFIG_FILE} \
    ${CHECKPOINT_FILE} \
    [--device ${GPU_ID}] \
    [--camera-id ${CAMERA-ID}] \
    [--score-thr ${SCORE_THR}]

例如

python demo/webcam_demo.py \
    configs/faster_rcnn_r50_fpn_1x_coco.py \
    checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth

tools/misc/print_config.py configs/.py 查看完整参数
tools/misc/print_config.py configs/
.py >*.tixt 保存
python ./tools/train.py 直接train

在标准数据集上测试已经存在的模型

mmdetection支持coco,voc,cityscapes等一些其他的标准数据集,在目标检测中最常用的数据集格式就是coco数据集,可以将自己的数据集转换为这种标准格式,进行后续的训练验证测试。
测试现有的模型
mmdetection提供了测试现有模型的测试脚本:

  • 单GPU
  • 多GPU的单节点
  • 多节点

对于不同的环境选择合适的测试脚本:

# single-gpu testing
python tools/test.py \
    ${CONFIG_FILE} \
    ${CHECKPOINT_FILE} \
    [--out ${RESULT_FILE}] \
    [--eval ${EVAL_METRICS}] \
    [--show]

# multi-gpu testing
bash tools/dist_test.sh \
    ${CONFIG_FILE} \
    ${CHECKPOINT_FILE} \
    ${GPU_NUM} \
    [--out ${RESULT_FILE}] \
    [--eval ${EVAL_METRICS}]

tools/dist_test.sh支持多节点的测试
其中除了必要的cofig文件与checkpoint文件,还有其他可选择的参数:
在这里插入图片描述
例如:

  • 测试faster rcnn并可视化结果,按任意建来查看下一张图像 python tools/test.py \configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py
    checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth
    –show
  • 测试Faster R-CNN,并保存绘制的图像以供将来可视化。 python tools/test.py
    configs/faster_rcnn/faster_rcnn_r50_fpn_1x.py
    checkpoints/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth
    –show-dir faster_rcnn_r50_fpn_1x_results
  • 在PASCAL VOC上测试Faster R-CNN(不保存测试结果)并评估mAP。、 python tools/test.py
    configs/pascal_voc/faster_rcnn_r50_fpn_1x_voc.py
    checkpoints/faster_rcnn_r50_fpn_1x_voc0712_20200624-c9895d40.pth
    –eval mAP
  • 使用8个GPU测试Mask R-CNN,并评估bbox和mask AP。 ./tools/dist_test.sh
    configs/mask_rcnn_r50_fpn_1x_coco.py
    checkpoints/mask_rcnn_r50_fpn_1x_coco_20200205-d4b0c5d6.pth \ 8
    –out results.pkl \ --eval bbox segm
  • 使用8个GPU测试Mask R-CNN,并评估分类bbox和mask AP。 ./tools/dist_test.sh
    configs/mask_rcnn/mask_rcnn_r50_fpn_1x_coco.py
    checkpoints/mask_rcnn_r50_fpn_1x_coco_20200205-d4b0c5d6.pth \ 8
    –out results.pkl \ --eval bbox segm \ --options “classwise=True”
  • 在具有8个GPU的COCO test-dev上测试Mask R-CNN,并生成JSON文件以提交给官方评估服务器。
    ./tools/dist_test.sh \ configs/mask_rcnn/mask_rcnn_r50_fpn_1x_coco.py
    \ checkpoints/mask_rcnn_r50_fpn_1x_coco_20200205-d4b0c5d6.pth \ 8
    -format-only \ --options “jsonfile_prefix=./mask_rcnn_test-dev_results”
    此命令生成两个JSON文件mask_rcnn_test-dev_results.bbox.json和mask_rcnn_test-dev_results.segm.json。
  • 在Cityscapes上使用8个GPU测试 Mask R-CNN,并生成txt和png文件提交给官方评估服务器。
    ./tools/dist_test.sh
    configs/cityscapes/mask_rcnn_r50_fpn_1x_cityscapes.py
    checkpoints/mask_rcnn_r50_fpn_1x_cityscapes_20200227-afe51d5a.pth \ 8
    \ --format-only \ --options
    “txtfile_prefix=./mask_rcnn_cityscapes_test_results”
    生成的png和txt将在./mask_rcnn_cityscapes_test_results目录下。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值