关于YOLOV5训练YOLO格式数据集在上篇提到过【yolov5+deepsort运行和训练自数据集(自看)】
VOC数据集最终格式(此处是最终的实现效果,初始格式在下面):
其中JPEGImages中是所需要的所有图片,Annotations是所有图片标记之后生成的.xml文档,ImageSets中有名为Main的文件夹,文件夹下有test.py、train.txt、val.txt、trainval.txt四个文档(ImageSets文件夹和Main文件夹需要自己建立,Main中四个文档后续用代码生成),labels放的VOC转化为YOLO之后的.txt标签(后续代码生成),最后三个.txt文件是训练指定的路径文件(后续代码生成)
1.VOC数据集初始格式:
JPEGImages中是所需要的所有图片,Annotations是所有图片标记之后生成的.xml文档
2.新建ImageSets文件夹,在文件夹中再新建一个Main空文件夹,然后使用Main.py生成Main文件夹和其中的四个.txt文档,代码如下:
import os
import random
trainval_percent = 0.9 # 训练和验证集所占比例,剩下的0.1就是测试集的比例
train_percent = 0.8 # 训练集所占比例,可自己进行调整
xmlfilepath = 'VOCdevkit/VOC2007/Annotations'
txtsavepath = 'VOCdevkit/VOC2007/ImageSets/Main'
total_xml = os.listdir(xmlfilepath)
# print(total_xml)
num = len(total_xml)
list = range(num)
# print(list)
tv = int(num * trainval_percent)
tr = int(tv * train_percent)
trainval = ra