比如我要使用yolox这个模型

新建一个py文件,然后我们直接继承即可

_base_='./yolox_s_8xb8-300e_coco.py'#这个就是你继承的父类模型配置
model = dict(
bbox_head=dict(
num_classes=1,
),
)
data_root = r'',
metainfo = {
'classes': ('0',),
'palette': [
(220, 20, 60),
]
}
我是单目标识别,num_classes=1,这个一定要搞对!几个目标就写几个!不然无法识别!然后我的标签是:0, 配色盘随意啦我写的 (220, 20, 60)
以下是我的完整代码:
_base_='./yolox_s_8xb8-300e_coco.py'
model = dict(
bbox_head=dict(
num_classes=1,
),
)
data_root = r'',
metainfo = {
'classes': ('0',),
'palette': [
(220, 20, 60),
]
}
train_dataloader = dict(
batch_size=16,
dataset=dict(
data_root=data_root,
metainfo=metainfo,
ann_file=r'C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\train.json',
data_prefix=dict(img=r'C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\images\train')))
val_dataloader = dict(
dataset=dict(
data_root=data_root,
metainfo=metainfo,
ann_file=r'C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\val.json',
data_prefix=dict(img=r'C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\images\val')))
test_dataloader = dict(
dataset=dict(
data_root=data_root,
metainfo=metainfo,
ann_file=r'C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\test.json',
data_prefix=dict(img=r'C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\images\test')))
# 修改评价指标相关配置
val_evaluator = dict(ann_file=data_root + r'C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\val.json')
test_evaluator = dict(ann_file=data_root + r'C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\test.json')
load_from=r'C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\configs\loadfrom权重文件\yolox_s_8x8_300e_coco_20211121_095711-4592a793.pth'
# 训练配置
train_dataloader = dict(batch_size=4) # 训练 Batch Size
default_hooks = dict(
timer=dict(type='IterTimerHook'),
logger=dict(type='LoggerHook', interval=50),
param_scheduler=dict(type='ParamSchedulerHook'),
# checkpoint=dict(type='CheckpointHook', interval=200),
checkpoint=dict(
type='CheckpointHook',
interval=200, # 每200个迭代保存一次检查点
save_last=True, # 保存训练过程中的最后一个检查点
save_best='coco/bbox_mAP_s', # 保存验证指标最好的检查点
# max_keep=2 # 最多保留2个检查点文件
),
sampler_seed=dict(type='DistSamplerSeedHook'),
visualization=dict(type='DetVisualizationHook')
)
这里ann_file=r’C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\val.json’,
data_prefix=dict(img=r’C:\Users\hp\Desktop\mmdetection-main\mmdetection-main\co\images\val’)))
对应的是你的数据集的val。 要指定一下自己的数据集地址!

改一下形参就行了,然后会自动在mmdetection-main/tools/work_dirs/WHLyolox/WHLyolox.py这里生成一个py文件,这个就是和父类融合后生成的config文件,
我们最终要改这个work_dirs/WHLyolox/WHLyolox.py里的文件。这里可能会出现一些没有继承好的情况(比如我的训练集路径没有复写成功,那就要咱们自己在这里重写一下就行啦)

最后把config调好了,直接在train.py里形参一调就可以运行了!
注意模型,这个是detect模型,用的是coco格式的,比如这里边有maskrcnn之类的,不可以用的,我记得maskrcnn是分割用的哈。今天就这样
7901

被折叠的 条评论
为什么被折叠?



