1.先制作数据集
(1)在darknet/scripts文件夹下,创建如下格式文件夹,并用下面的脚本分割出训练集和验证集,并把图片名称train.txt和test.txt下,注意的是不要有文件后缀名
"""
制作voc数据集的train.txt和test.txt
"""
import os
from os import listdir, getcwd
from os.path import join
import random
if __name__ == '__main__':
source_folder = '/home/lee/Desktop/myfiles/yolov4-2/darknet/scripts/VOCdevkit/VOC2007/JPEGImages'
dest = '/home/lee/Desktop/myfiles/yolov4-2/darknet/scripts/VOCdevkit/VOC2007/ImageSets/Main/train.txt' # train.txt文件路径
dest2 = '/home/lee/Desktop/myfiles/yolov4-2/darknet/scripts/VOCdevkit/VOC2007/ImageSets/Main/val.txt' # val.txt文件路径
file_list = os.listdir(source_folder)
train_file = open(dest, 'a')
val_file = open(dest2, 'a')
split_rate = 0.1
file_num = len(file_list)
random.shuffle(file_list)
val_name = random.sample(file_list, int(split_rate*file_num))
for file_obj in file_list:
file_path = os.path.join(source_folder, file_obj)
file_name, file_extend = os.path.splitext(file_obj)
if file_obj in val_name:
val_file.write(file_name +