1.在自定义数据集用训练出的权重进行可视化推理
input(jpg文件) + model_config 这两个可以不用加前面的形参
然后用 \ 隔开 写上 --weight= 'xx.pth'
python demo/image_demo.py data/coco_duck/train2017/10640.jpg work_dirs/solov2_r50_fpn_1x_coco/solov2_r50_fpn_1x_coco.py \--weight=work_dirs/solov2_r50_fpn_1x_coco/best_coco_segm_mAP_epoch_20.pth
2.训练自定义数据集
以coco格式数据集为例
2.1首先组织数据集:
train2017和val2017放图片,根据标签放,用脚本一键生成的
2.2修改对应的datasets
找到configs/_base_/datasets/coco_instance.py(这个做的是实例分割,修改这个文件)
如果做目标检测就修改configs/_base_/datasets/coco_detection.py
其他情况类似,也可忽略这一步,在后面生成的综合config中修改
主要是修改数据集路径
2.3修改mmdet/evaluation/functional/class_names.py
找到里面的coco_classes进行修改,把标签名字换成自定义的数据集标签
2.4设置自动保存最佳权重和验证间隔,以及默认训练epoch
找到configs/_base_/default_runtime.py
我现在是单卡3090,只能用1x,修改configs/_base_/schedules/schedule_1x.py
2.5换主干(可选)
2.6生成work_dir和config
在config中找到需要的模型,然后直接run
python +tools/train.py + 你选择的模型config
以solov2为例
注意这里的_base_,分别代表数据集,训练用的卡(单/分布式),训练策略
根据任务来,如果是目标检测,那
../_base_/datasets/coco_instance.py应该换成../_base_/datasets/coco_detection.py
另外两个类似
运行
python tools/train.py configs/solov2/solov2_r50_fpn_1x_coco.py
在根目录会生成一个work_dir文件夹
里面会有一个集成了所有配置的模型config
修改这个config的num_class以及其他你想修改的train/val设置
2.7正式训练
python tools/train.py work_dirs/solov2_r50_fpn_1x_coco/solov2_r50_fpn_1x_coco.py