detectron2使用教程20200824_3

训练VOC数据(liuhao_voc_kouzhao)

1.准备数据集

#1.创建软链接
ln -s ../../../datasets/kouzhao/liuhao_voc_kouzhao/ ./

/detectron2-master/detectron2/data/datasets/builtin.py第206行

    SPLITS = [
        ("voc_2007_trainval", "VOC2007", "trainval"),
        ("voc_2007_train", "VOC2007", "train"),
        ("voc_2007_val", "VOC2007", "val"),
        ("voc_2007_test", "VOC2007", "test"),
        ("voc_2012_trainval", "VOC2012", "trainval"),
        ("voc_2012_train", "VOC2012", "train"),
        ("voc_2012_val", "VOC2012", "val"),
        
        ("liuhao_voc_kouzhao_train", "liuhao_voc_kouzhao/train", "train"), #自定义数据集
        ("liuhao_voc_kouzhao_val", "liuhao_voc_kouzhao/val", "val"),     #自定义数据集
    ]

#修改/detectron2-master/detectron2/data/datasets/pascal_voc.py 第17行和第46行如下

#修改/detectron2-master/detectron2/data/datasets/pascal_voc.py 第17行

# fmt: off
#CLASS_NAMES = (
#    "aeroplane", "bicycle", "bird", "boat", "bottle", "bus", "car", "cat",
#    "chair", "cow", "diningtable", "dog", "horse", "motorbike", "person",
#    "pottedplant", "sheep", "sofa", "train", "tvmonitor"
#)
CLASS_NAMES = ("no_mask", "have_mask")
# fmt: on

jpeg_file = os.path.join(dirname, "JPEGImages", fileid + ".jpg") ####################### 这里需要根据需求具体来修改.jpg .bmp

2.修改配置文件PascalVOC-Detection/faster_rcnn_R_50_FPN_liuhao_voc_kouzhao.yaml

#2.修改如下

_BASE_: "../Base-RCNN-FPN.yaml"
MODEL:
  WEIGHTS: "detectron2://ImageNetPretrained/MSRA/R-50.pkl"
  MASK_ON: False
  RESNETS:
    DEPTH: 50
  ROI_HEADS:
    NUM_CLASSES: 2 ######################################## 数据集类别数
INPUT:
  MIN_SIZE_TRAIN: (480, 512, 544, 576, 608, 640, 672, 704, 736, 768, 800)
  MIN_SIZE_TEST: 800
DATASETS:
  TRAIN: ('liuhao_voc_kouzhao_train', 'liuhao_voc_kouzhao_val')  ###在builtin.py注册数据集的名称
  TEST: () ################################################# 去掉测试集('voc_2007_test',)
SOLVER:
  STEPS: (600, 700)
  MAX_ITER: 800  ############# 自定义最大迭代次数=(训练集400张图片/batch_size2) * 4epochs
  WARMUP_ITERS: 100

3.训练

#在/detectron2-master文件夹下面打开终端

source ~/anaconda3/bin/activate mydetection_python3.7.3

python3 ./tools/train_net.py --config-file=./configs/PascalVOC-Detection/faster_rcnn_R_50_FPN_liuhao_voc_kouzhao.yaml --num-gpus=1 SOLVER.IMS_PER_BATCH 2 SOLVER.BASE_LR 0.01
#查看/detectron2-master/output/


4训练成功,部分日志

[04/28 22:32:45 d2.data.build]: Removed 98 images with no usable annotations. 479 images left.
[04/28 22:32:45 d2.data.build]: Distribution of instances among all 2 categories:
|  category  | #instances   |  category  | #instances   |
|:----------:|:-------------|:----------:|:-------------|
|  no_mask   | 529          | have_mask  | 730          |
|            |              |            |              |
|   total    | 1259         |            |              |
修改./output/为./output_liuhao_voc_kouzhao/

5可视化

/home/liuhao/anaconda3/envs/mybase_python3.7.3/bin/tensorboard --logdir ./output_liuhao_voc_kouzhao/

6预测


python3 ./demo/demo.py --config-file=./configs/PascalVOC-Detection/faster_rcnn_R_50_FPN_liuhao_voc_kouzhao.yaml --input=./datasets/liuhao_voc_kouzhao/val/JPEGImages/402.jpg --opts MODEL.WEIGHTS ./output_liuhao_voc_kouzhao/model_final.pth


python3 ./demo/demo.py --config-file=./configs/PascalVOC-Detection/faster_rcnn_R_50_FPN_liuhao_voc_kouzhao.yaml --input=./datasets/liuhao_voc_kouzhao/val/JPEGImages/569.jpg --opts MODEL.WEIGHTS ./output_liuhao_voc_kouzhao/model_final.pth


#可以预测,效果不错

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值