当前位置: 首页 > news >正文

mmdetection:记录算法训练配置文件

本文记录了使用mmdetection进行训练模型的配置文件。以便以后复现使用。


文章目录

      • 一、faster-rcnn
      • 二、tood
      • 三、atss
      • 四、mask-rcnn


一、faster-rcnn

# 引用基础配置文件
_base_ = 'faster-rcnn_r50_fpn_1x_coco.py'# 修改模型的roi_head和bbox_head以适应我们的数据集
# 不这么写会报错TypeError: FasterRCNN.__init__() got an unexpected keyword argument 'bbox_he
model = dict(roi_head=dict(bbox_head=dict(type='Shared2FCBBoxHead',num_classes=1  # 只有一个类别class1))
)# 数据集根目录路径
data_root = '/path/to/your/dataset/'# 数据集的类别和调色板配置
metainfo = {'classes': ('class1', ),  # 类别名称'palette': [(220, 20, 60),  # 类别class1的颜色]
}# 训练配置
train_cfg = dict(max_epochs=500,  # 最大训练轮数val_interval=2  # 每隔多少轮进行一次验证
)# 训练数据加载器配置
train_dataloader = dict(batch_size=8,num_workers=8,dataset=dict(data_root=data_root,  # 数据集根目录metainfo=metainfo,  # 数据集类别和调色板信息ann_file='annotations/train.json',  # 训练集标注文件路径data_prefix=dict(img='images/')  # 图像文件路径前缀)
)# 验证数据加载器配置
val_dataloader = dict(batch_size=8,num_workers=8,dataset=dict(data_root=data_root,  # 数据集根目录metainfo=metainfo,  # 数据集类别和调色板信息ann_file='annotations/val.json',  # 验证集标注文件路径data_prefix=dict(img='images/')  # 图像文件路径前缀)
)# 评估配置
val_evaluator = dict(ann_file='/path/to/annotations/val.json')  # 验证集标注文件路径
test_evaluator = dict(ann_file='/path/to/annotations/val.json')  # 测试集标注文件路径# 保存模型检查点的配置
default_hooks = dict(checkpoint=dict(type='CheckpointHook',interval=1,  # 每轮保存一次模型save_best='coco/bbox_mAP',  # 根据bbox_mAP保存最佳模型max_keep_ckpts=1  # 最多保留一个检查点)
)# 加载预训练模型路径
load_from = '/path/to/pretrained/model.pth'  # 假路径# 训练命令(示例)
# nohup python tools/train.py configs/faster_rcnn/faster-rcnn_r50_fpn_ciou_1x_visdrone.py > faster-rcnn-visdrone.log 2>&1 & tail -f faster-rcnn-visdrone.log# 测试命令(示例)
# python tools/test.py configs/faster_rcnn/faster-rcnn_r50_fpn_ciou_1x_visdrone.py work_dirs/faster-rcnn_r50_fpn_ciou_1x_visdrone/epoch_12.pth --show --show-dir test_save

二、tood

# 引用基础配置文件
_base_ = './tood_r50_fpn_1x_coco.py'# 修改模型的 bbox_head 配置以适应我们的数据集
model = dict(bbox_head=dict(num_classes=1  # 我们的任务只有一个类别:class1)
)# 数据集相关配置
data_root = '/path/to/your/dataset/'  # 假数据集路径
metainfo = {'classes': ('class1',),  # 类别名称'palette': [(220, 20, 60),  # 类别class1的颜色]
}# 训练配置
train_cfg = dict(max_epochs=500,  # 最大训练轮数val_interval=2  # 每隔 2 轮进行一次验证
)# 数据加载器配置
train_dataloader = dict(batch_size=8,  # 每批次的样本数num_workers=8,  # 数据加载的线程数dataset=dict(data_root=data_root,  # 数据集根路径metainfo=metainfo,  # 数据集类别和调色板信息ann_file='annotations/train.json',  # 训练集标注文件data_prefix=dict(img='images/')  # 图像文件夹前缀)
)val_dataloader = dict(batch_size=8,  # 每批次的样本数num_workers=8,  # 数据加载的线程数dataset=dict(data_root=data_root,  # 数据集根路径metainfo=metainfo,  # 数据集类别和调色板信息ann_file='annotations/val.json',  # 验证集标注文件data_prefix=dict(img='images/')  # 图像文件夹前缀)
)# 评估配置(验证集和测试集)
val_evaluator = dict(ann_file='/path/to/annotations/val.json')  # 验证集标注文件路径
test_evaluator = dict(ann_file='/path/to/annotations/test.json')  # 测试集标注文件路径# 保存模型检查点的配置
default_hooks = dict(checkpoint=dict(type='CheckpointHook',interval=1,  # 每轮保存一次模型save_best='coco/bbox_mAP',  # 根据bbox_mAP保存最佳模型max_keep_ckpts=1  # 最多保留一个检查点)
)# 加载预训练模型路径(如果需要的话)
# load_from = '/path/to/pretrained/model.pth'  # 假路径# 训练命令(示例)
# nohup python tools/train.py configs/tood/tood_r50_fpn_1x_visdrone.py > tood-visdrone.log 2>&1 & tail -f tood-visdrone.log# 测试命令(示例)
# python tools/test.py configs/tood/tood_r50_fpn_1x_visdrone.py work_dirs/tood_r50_fpn_1x_visdrone/epoch_12.pth --show --show-dir test_save
# python tools/test.py configs/tood/tood_r50_fpn_1x_visdrone.py work_dirs/tood_r50_fpn_1x_visdrone/epoch_12.pth --tta

三、atss

# 引用基础配置文件
_base_ = 'atss_r50_fpn_1x_coco.py'# 修改模型的 bbox_head 配置以适应我们的数据集
model = dict(bbox_head=dict(num_classes=1  # 只有一个类别:class1)
)# 数据集相关配置
data_root = '/path/to/your/dataset/'  # 假数据集路径metainfo = {'classes': ('class1',),  # 类别名称'palette': [(220, 20, 60),  # 类别class1的颜色]
}# 训练配置
train_cfg = dict(max_epochs=500,  # 最大训练轮数val_interval=2  # 每隔 2 轮进行一次验证
)# 数据加载器配置
train_dataloader = dict(batch_size=8,  # 每批次的样本数num_workers=8,  # 数据加载的线程数dataset=dict(data_root=data_root,  # 数据集根路径metainfo=metainfo,  # 数据集类别和调色板信息ann_file='annotations/train.json',  # 训练集标注文件路径data_prefix=dict(img='images/')  # 图像文件夹前缀)
)val_dataloader = dict(batch_size=8,  # 每批次的样本数num_workers=8,  # 数据加载的线程数dataset=dict(data_root=data_root,  # 数据集根路径metainfo=metainfo,  # 数据集类别和调色板信息ann_file='annotations/val.json',  # 验证集标注文件路径data_prefix=dict(img='images/')  # 图像文件夹前缀)
)# 评估配置(验证集和测试集)
val_evaluator = dict(ann_file='/path/to/annotations/val.json')  # 验证集标注文件路径
test_evaluator = dict(ann_file='/path/to/annotations/test.json')  # 测试集标注文件路径# 保存模型检查点的配置
default_hooks = dict(checkpoint=dict(type='CheckpointHook',interval=2,  # 每 2 轮保存一次模型save_best='coco/bbox_mAP',  # 根据 bbox_mAP 保存最佳模型max_keep_ckpts=1  # 最多保留一个检查点)
)# 加载预训练模型路径(如果需要的话)
load_from = '/path/to/pretrained/model.pth'  # 假路径# 训练命令(示例)
# nohup python tools/train.py configs/dyhead/atss_r50_fpn_dyhead_1x_visdrone.py > atss-dyhead-visdrone.log 2>&1 & tail -f atss-dyhead-visdrone.log# 测试命令(示例)
# python tools/test.py configs/dyhead/atss_r50_fpn_dyhead_1x_visdrone.py work_dirs/tood_r50_fpn_1x_visdrone/epoch_12.pth --show --show-dir test_save
# python tools/test.py configs/dyhead/atss_r50_fpn_dyhead_1x_visdrone.py work_dirs/tood_r50_fpn_1x_visdrone/epoch_12.pth --tta

四、mask-rcnn

# 引用基础配置文件
_base_ = 'mask-rcnn_r50-caffe_fpn_1x_coco.py'# 修改模型的 bbox_head 配置以适应我们的数据集
model = dict(roi_head=dict(bbox_head=dict(type='Shared2FCBBoxHead',num_classes=1  # 只有一个类别class1))
)# 数据集相关配置
data_root = '/path/to/your/dataset/'  # 假数据集路径metainfo = {'classes': ('class1',),  # 类别名称'palette': [(220, 20, 60),  # 类别class1的颜色]
}# 训练配置
train_cfg = dict(max_epochs=500,  # 最大训练轮数val_interval=2  # 每隔 2 轮进行一次验证
)# 数据加载器配置
train_dataloader = dict(batch_size=8,  # 每批次的样本数num_workers=8,  # 数据加载的线程数dataset=dict(data_root=data_root,  # 数据集根路径metainfo=metainfo,  # 数据集类别和调色板信息ann_file='annotations/train.json',  # 训练集标注文件路径data_prefix=dict(img='images/')  # 图像文件夹前缀)
)val_dataloader = dict(batch_size=8,  # 每批次的样本数num_workers=8,  # 数据加载的线程数dataset=dict(data_root=data_root,  # 数据集根路径metainfo=metainfo,  # 数据集类别和调色板信息ann_file='annotations/val.json',  # 验证集标注文件路径data_prefix=dict(img='images/')  # 图像文件夹前缀)
)# 评估配置(验证集和测试集)
val_evaluator = dict(ann_file='/path/to/annotations/val.json')  # 验证集标注文件路径
test_evaluator = dict(ann_file='/path/to/annotations/test.json')  # 测试集标注文件路径# 保存模型检查点的配置
default_hooks = dict(checkpoint=dict(type='CheckpointHook',interval=1,  # 每 1 轮保存一次模型save_best='coco/bbox_mAP',  # 根据 bbox_mAP 保存最佳模型max_keep_ckpts=1  # 最多保留一个检查点)
)# 加载预训练模型路径(如果需要的话)
load_from = '/path/to/pretrained/model.pth'  # 假路径# 训练命令(示例)
# nohup python tools/train.py configs/faster_rcnn/faster-rcnn_r50_fpn_ciou_1x_visdrone.py > faster-rcnn-visdrone.log 2>&1 & tail -f faster-rcnn-visdrone.log# 测试命令(示例)
# python tools/test.py configs/faster_rcnn/faster-rcnn_r50_fpn_ciou_1x_visdrone.py work_dirs/faster-rcnn_r50_fpn_ciou_1x_visdrone/epoch_12.pth --show --show-dir test_save
# python tools/test.py configs/faster_rcnn/faster-rcnn_r50_fpn_ciou_1x_visdrone.py work_dirs/faster-rcnn_r50_fpn_ciou_1x_visdrone/epoch_12.pth --tta
http://www.dtcms.com/a/346514.html

相关文章:

  • 【Linux系统】进程信号:信号的处理
  • TypeReference 泛型的使用场景及具体使用流程
  • C语言宏用法
  • 单例模式与线程池
  • Ollama 本地部署 Qwen2.5-7b
  • 神经网络|(十一)概率论基础知识-贝叶斯公式和全概率公式
  • 概率论基础教程第六章 随机变量的联合分布(二)
  • C++哈希表:unordered_map与unordered_set全解析
  • day12(练习题)
  • Java微服务架构设计模式详解
  • Baumer高防护相机如何通过YoloV8深度学习模型实现社交距离的检测识别(python)
  • 【Protues仿真】基于AT89C52单片机的超声波测距
  • 关于微服务下的不同服务之间配置不能通用的问题
  • `strdup` 字符串复制函数
  • 自控笔记 控制框图简化+梅森公式复习
  • Spring Boot 实时广播消息
  • 分布式蜜罐系统的部署安装
  • TypeScript 类中提供的 public、private 和 protected 修饰符的作用理解
  • C++程序嵌入python脚本调试
  • 搜索算法在实际场景中的应用
  • 系统思考:突破复杂困境
  • Python 十进制转二进制
  • 使用隧道(Tunnel)连接PostgreSQL数据库(解决防火墙问题)(含Java实现代码)
  • GIS实现综合应急管理平台及应用
  • Linux系统 --- 指令
  • CMake link_directories()详细介绍与使用指南
  • 算法题(188):团伙
  • 【0基础PS】蒙版与剪贴蒙版详解
  • `strchr` 字符串查找函数
  • 信息结构统一论:物理世界与人类感知、认知及符号系统的桥梁