1、下载YOLOV5
git clone https://github.com/ultralytics/yolov5.git
2、安装依赖包
cd yolov5
pip install -r requirements.txt
3、准备数据集(VOC)
1)在yolov5目录下创建face_dataset文件夹,将labelImage标注好的xml文件(face_dataset/Annotations)和原始图片(face_dataset/images)放到对应的目录下,目录结构如下:

Annotations文件夹下面为xml文件(标注工具labelImage生成的标注文件),内容如下:

images文件夹下面为VOC数据集格式中的JPEGImages,内容如下:

2)在face_dataset目录下创建split_train_val.py脚本,通过该脚本划分数据集,划分为:训练集、验证集和测试集,代码如下:
import os
import random
trainval_percent = 1.0
train_percent = 0.9
xmlfilepath = 'Annotations'
total_xml = os.listdir(xmlfilepath)
num = len(total_xml)
list = range(num)
tv = int(num * trainval_percent)
tr = int(num * train_percent)
trainval = random.sample(list, tv)
train = random.sample(trainval, tr)
# ImageSets目录不存在,就创建
if not os.path.exists('ImageSets/'):
os.makedirs('ImageSets/')
# ImageSets/Main目录不存在,就创建
if not os.path.exists('ImageSets/Main/'):
os.makedirs('ImageSets/Main/')
ftrainval = open('ImageSets/Main/trainval.txt', 'w')
ftest = open('ImageSets/Main/test.txt', 'w')
ftrain = open('ImageSets/Main/train.txt', 'w')
fval = open('ImageSets/Main/val.txt', 'w')
for i in list:
name = '/opt/PycharmProjects/yolov5/face_dataset/images/' + total_xml[i][:-4] + '.jpg' + '\n'
if i in trainval:
ftrainval.write(name)
if i in train:
ftrain.write(name)
else:


8289

被折叠的 条评论
为什么被折叠?



