发布时间:2023-11-02 08:00
项目地址:https://github.com/Fafa-DL/Awesome-Backbones
视频手把手教程:https://www.bilibili.com/video/BV1SY411P7Nd
AlexNet原论文:点我跳转
将项目代码下载到本地
本次演示以花卉数据集为例,目录结构如下:
├─flower_photos
│ ├─daisy
│ │ 100080576_f52e8ee070_n.jpg
│ │ 10140303196_b88d3d6cec.jpg
│ │ ...
│ ├─dandelion
│ │ 10043234166_e6dd915111_n.jpg
│ │ 10200780773_c6051a7d71_n.jpg
│ │ ...
│ ├─roses
│ │ 10090824183_d02c613f10_m.jpg
│ │ 102501987_3cdb8e5394_n.jpg
│ │ ...
│ ├─sunflowers
│ │ 1008566138_6927679c8a.jpg
│ │ 1022552002_2b93faf9e7_n.jpg
│ │ ...
│ └─tulips
│ │ 100930342_92e8746431_n.jpg
│ │ 10094729603_eeca3f2cb6.jpg
│ │ ...
Awesome-Backbones/datas/
中创建标签文件annotations.txt
,按行将类别名 索引
写入文件;daisy 0
dandelion 1
roses 2
sunflowers 3
tulips 4
Awesome-Backbones/tools/split_data.py
原始数据集路径
以及划分后的保存路径
,强烈建议划分后的保存路径datasets
不要改动,在下一步都是默认基于文件夹进行操作init_dataset = 'A:/flower_photos'
new_dataset = 'A:/Awesome-Backbones/datasets'
Awesome-Backbones/
下打开终端输入命令:python tools/split_data.py
├─...
├─datasets
│ ├─test
│ │ ├─daisy
│ │ ├─dandelion
│ │ ├─roses
│ │ ├─sunflowers
│ │ └─tulips
│ └─train
│ ├─daisy
│ ├─dandelion
│ ├─roses
│ ├─sunflowers
│ └─tulips
├─...
Awesome-Backbones/datasets
下,若不在则在get_annotation.py
下修改数据集路径;datasets_path = '你的数据集路径'
Awesome-Backbones/
下打开终端输入命令:python tools/get_annotation.py
Awesome-Backbones/datas
下得到生成的数据集信息文件train.txt
与test.txt
Awesome-Backbones/models
下backbone
、neck
、head
、head.loss
构成一个完整模型model_cfg
中修改num_classes
为自己数据集类别大小data_cfg
中修改batch_size
与num_workers
pretrained_weights
设置为True
并将预训练权重的路径赋值给pretrained_weights
freeze_flag
设置为True
,可选冻结的有backbone, neck, headoptimizer_cfg
中修改初始学习率,根据自己batch size
调试,若使用了预训练权重
,建议学习率调小
Awesome-Backbones/datas/annotations.txt
标签准备完毕Awesome-Backbones/datas/
下train.txt
与test.txt
与annotations.txt
对应Awesome-Backbones/models/
下找到对应配置文件配置文件解释
修改参数Awesome-Backbones
打开终端运行python tools/train.py models/alexnet/alexnet_.py
Awesome-Backbones/datas/annotations.txt
标签准备完毕Awesome-Backbones/datas/
下test.txt
与annotations.txt
对应Awesome-Backbones/models/
下找到对应配置文件ckpt = '你的训练权重路径'
Awesome-Backbones
打开终端运行python tools/evaluation.py models/alexnet/alexnet_.py
Awesome-Backbones
打开终端运行python tools/single_test.py datasets/test/dandelion/14283011_3e7452c5b2_n.jpg models/mobilenet/mobilenet_v3_small.py