1、环境配置
1.1、本地环境配置
参考之前发的:YOLO本地环境配置
1.2、租用云服务器
例如:AutoDL等
2、数据集准备
数据集下载,格式转换。
3、源码下载
4、训练
4.1、myyolov7.yaml
复制/cfg/deploy/yolov7.yaml,修改其中的类别信息
4.2、xxdatasets.yaml
创建data/xxdatasets.yaml文件,里面的路径,种类,名称改为自己数据集对应的
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: E:\for_test_proj\yolov5_ncnn\datasets\fire # dataset root dir
train: images/train # train images (relative to 'path')
val: images/val # val images (relative to 'path')
test: # test images (optional)
# Classes
nc: 1 # number of classes
names: ['fire'] # class names
4.3、train.py参数修改
parser.add_argument('--weights', type=str, default='yolov7.pt', help='initial weights path')
parser.add_argument('--cfg', type=str, default='cfg/deploy/myyolov7.yaml', help='model.yaml path')
parser.add_argument('--data', type=str, default='data/xxdatasets.yaml', help='data.yaml path')
parser.add_argument('--epochs', type=int, default=300)
parser.add_argument('--batch-size', type=int, default=8, help='total batch size for all GPUs')
parser.add_argument('--resume', nargs='?', const=True, default=False, help='resume most recent training')
参数:
--weights:指定预训练权重路径;
--cfg:模型配置文件
--data:数据集对应的yaml参数文件,里面主要存放数据集的类别和路径信息
--epochs:轮数,默认300
--batch-size:每次输出给神经网络的图片数(报错cuda out of memory时,可以调小此参数)
--resume:断点续训,可参考resume用法