tiny-yoloV3消化之旅(二)
程序员文章站
2024-03-25 08:13:40
...
参考博客https://blog.csdn.net/qq_27871973/article/details/85009026
消化第4步中
代码test.py
该步骤主要是将你所有标注的数据集分为训练集、测试集,一共有4个文件夹,又将测试集分为两个,目前不知为何用。
# -*- coding: utf-8 -*-
"""
Created on Sat Oct 27 12:59:20 2018
@author: Administrator
"""
import os
import random
trainval_percent = 0.1
train_percent = 0.9
xmlfilepath = 'Annotations' //放xml文件夹
txtsavepath = 'ImageSets\Main'
total_xml = os.listdir(xmlfilepath) //获得该文件夹下所有文件名,并输出为列表
num = len(total_xml) //总文件数
list = range(num)
tv = int(num * trainval_percent) //测试集比例
tr = int(tv * train_percent) //测试集中用于训练的
trainval = random.sample(list, tv) //随机测试集列表
train = random.sample(trainval, tr) //从测试集列表中随机选出tr个,作为训练时用
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 = total_xml[i][:-4] + '\n' //除去.xml,只要文件名
if i in trainval: //测试集,占总数的0.1
ftrainval.write(name)
if i in train:
ftest.write(name) //占测试集的0.9
else:
fval.write(name) //占测试集的0.1
else:
ftrain.write(name) //训练集,占总数的0.9
ftrainval.close()
ftrain.close()
fval.close()
ftest.close()
上一篇: 图像分割
下一篇: evo工具评测slam系统
推荐阅读
-
tiny-yoloV3消化之旅(二)
-
二、Spring Cloud 之旅 -- Eureka 微服务的发布与调用
-
程序员成长之旅——二分查找时间与空间复杂度
-
我的CUDA学习之旅5——OTSU二值算法(最大类间方差法、大津法)CUDA实现
-
我的CUDA学习之旅5——OTSU二值算法(最大类间方差法、大津法)CUDA实现
-
MongoDB之旅(二)基本操作(MongoDB Javascript Shell)
-
spring之旅第二篇-spring IOC概念及原理分析
-
Spring 5.x 源码之旅三十六getBean处理器扩展点二
-
python学习之旅(二)
-
【技术君啃书之旅】web安全之机器学习入门 第二章笔记