darknet训练自己的数据集
1,labelimg标注图片生成.xml文件
2,将数据集分为训练集和验证集
- train.txt – 该文件内容为所有训练图片名
- val.txt – 该文件内容为所有验证集图片名
3,voc_label.py生成绝对路径的txt
- object_train.txt – 该文件内容为所有训练集的 绝对路径
- object_val.txt – 该文件内容为所有验证集的 绝对路径
- 打开notepad++软件,将voc_train.txt和voc_test.txt文件转换为Unix文件,操作如下:
打开文件后,选择编辑——文档格式转换——转换为Unix,然后点击视图——显示符号——显示所有字符,确保每一行结尾都是只有一个LF即可。
第2,3步要看自己标注的xml文件格式,反正这两步最后生成的文件就训练集,验证集图片的绝对路径。
4,聚类生成anchor
detector.exe detector calc_anchors ./train_plate_number/voc.data -num_of_clusters 9 -width 640 -height 640
5,修改.names和.cfg文件
要修改上一步中生成的anchor
6,修改.data文件
classes= [类别数]
train = [object_train.txt 文件的绝对路径]
valid = [object_val.txt 文件的绝对路径]
names = [train.names 文件的绝对路径]
backup = backup/ #训练后权重存储的文件夹
7,训练
detector.exe detector train ./train_plate_number/voc.data ./train_plate_number/yolov4-csp-x-swish-plate.cfg ./train_plate_number/yolov4-csp-x-swish.conv.192 -map