参考  PASCAL VOC数据集训练集、验证集、测试集的划分和提取 - 云+社区 - 腾讯云

1、训练集、验证集、测试集按比例精确划分

#数据集划分
import os
import randomroot_dir='./park_voc/VOC2007/'## 0.7train 0.1val 0.2test
trainval_percent = 0.8
train_percent = 0.7
xmlfilepath = root_dir+'Annotations'
txtsavepath = root_dir+'ImageSets/Main'
total_xml = os.listdir(xmlfilepath)num = len(total_xml)  # 100
list = range(num)
tv = int(num*trainval_percent)  # 80
tr = int(tv*train_percent)  # 80*0.7=56
trainval = random.sample(list, tv)
train = random.sample(trainval, tr)ftrainval = open(root_dir+'ImageSets/Main/trainval.txt', 'w')
ftest = open(root_dir+'ImageSets/Main/test.txt', 'w')
ftrain = open(root_dir+'ImageSets/Main/train.txt', 'w')
fval = open(root_dir+'ImageSets/Main/val.txt', 'w')for i in list:name = total_xml[i][:-4]+'\n'if i in trainval:ftrainval.write(name)if i in train:ftrain.write(name)else:fval.write(name)else:ftest.write(name)ftrainval.close()
ftrain.close()
fval.close()
ftest .close()

2、训练集、验证集和测试集提取(只给出trian文件的提取方法)

# -*- coding:UTF-8 -*-
import shutilf_txt = open('D:\dataset\VOCdevkit\split\VOC2007\ImageSets\Main\\trainval.txt', 'r')
f_train = 'D:\dataset\VOCdevkit\VOC2007\\train'context = list(f_txt)
for imagename in context:imagename = imagename[0:6]imagename = imagename + '.jpg'imagepath = 'D:\dataset\VOCdevkit\VOC2007\JPEGImages\\'+ imagenameshutil.copy(imagepath,f_train)# 删除训练集和验证集,剩余图片为测试集# os.remove(imagepath)#处理Annotations同理只需将.jpg改为.xml

PASCAL VOC数据集训练集、验证集、测试集的划分和提取相关推荐

  1. 【小白学PyTorch】 2.浅谈训练集验证集和测试集

    文章目录: 经验误差与过拟合 评估方法 经验误差与过拟合 关键词:错误率(error rate),精度(accuracy). 错误率好理解,就是m个样本中,a个样本分类错误,则错误率E = a/m . ...

  2. 训练集 验证集_训练与验证、测试集数据分布不同的情况

    在不同分布的数据集上进行训练与验证.测试 深度学习需要大量的数据,但是有时我们可获得的满足我们真实需求分布的数据并不是那么多,不足以对我们的模型进行训练.这时我们就会收集大量相关的数据加入到训练集中, ...

  3. PASCAL VOC数据集训练集、验证集、测试集的划分和提取,得到test.txt、train.txt、trainval.txt、val.txt文件代码

    训练集.验证集.测试集按比例精确划分 创建py文件,将下属代码放入所创建的文件里,VOC2007数据集与py文件在同一目录下 # 数据集划分 import os import randomroot_d ...

  4. Ubuntu上用caffe的SSD方法训练Pascal VOC数据集

    实验目的 继caffe和ssd搭建完成,demo也演示完毕,了解一些基本知识后,现在开始训练自己的数据集,在给自己的训练集处理之前,先跟着官方的示例将Pascal VOC数据集训练走一遍,把可能会踩坑 ...

  5. YOLOv5将自己数据集划分为训练集、验证集和测试集

    在用自己数据集跑YOLOv5代码时候,需要将自己的VOC标签格式数据集转为yolo格式. 首先是要获取自己的数据集,然后再对数据集进行标注,保存为VOC(xml格式).然后再把标注完的数据集划分为训练 ...

  6. python 训练集 测试集 验证集划分_将自己的图片数据集分成训练集、验证集和测试集并用 Tensorflow2.0 导入...

    文章目录项目介绍 划分数据集1.在 dataset 目录下创建三个文件夹 2.将原来 dataset 文件夹中的子文件夹分别复制到这三个文件夹中 3.在 python 中指定所有路径 4.将这三个文件 ...

  7. 机器学习典型步骤以及训练集、验证集和测试集概念

    1. 机器学习典型步骤 数据采集和标记 数据清洗 特征选择 如房子的面积.地理位置.朝向.价格等. 模型选择 有监督还是无监督,问题领域.数据量大小.训练时长.模型准确度等多方面有关. 模型训练和测试 ...

  8. 【入门篇】如何正确使用机器学习中的训练集、验证集和测试集?

    [注] ·本文为转载文章,原文作者是王树义老师,原文链接为 https://zhuanlan.zhihu.com/p/71961236 训练集.验证集和测试集,林林总总的数据集合类型,到底该怎么选.怎 ...

  9. 训练集(train set) 验证集(validation set) 测试集(test set)

    在有监督(supervise)的机器学习中,数据集常被分成2~3个,即:训练集(train set) 验证集(validation set) 测试集(test set). http://blog.si ...

  10. 机器学习中训练集、验证集和测试集的区别

    通常,在训练有监督的机器学习模型的时候,会将数据划分为训练集.验证集合测试集,划分比例一般为0.6:0.2:0.2.对原始数据进行三个集合的划分,是为了能够选出效果(可以理解为准确率)最好的.泛化能力 ...

最新文章

  1. gitolite搭建
  2. Linux按照CPU、内存、磁盘IO、网络性能监测
  3. webservice xsd.exe根据xml生成xsd。然后根据xsd生成java bean
  4. 【2021杭电多校赛】2021“MINIEYE杯”中国大学生算法设计超级联赛(4)签到题4题
  5. php html转ubb,php ubb转换成html,html转换成ubb代码
  6. 《运筹学》CSU作业答案
  7. [短线是银]条件选股公式集源码!
  8. 关于metasploit的一些架构目录
  9. matlab 自写iradon,MATLAB 常用图像处理源码合集
  10. 数据结构——学期总结
  11. 测试开发岗-高频知识整理【校招】 ,内附面试题答案!
  12. 华为荣耀屏鸿蒙,荣耀智慧屏:华为鸿蒙迈出的第一步
  13. 两个求和符号如何用计算机,计算:两个求和符号∑∑怎么办
  14. Apache启动报错:Apache is running a threaded MPM
  15. 大华摄像头的踩坑之路
  16. 期刊投稿状态_SCI期刊投稿各种状态详解
  17. java制作坦克大战
  18. TextCNN文本分类实现(主要是CNN模型的使用)
  19. CE认证电气间隙和爬电距离要求
  20. 关于Bonobo Git Server的安装

热门文章

  1. python 模拟点击第三方软件_使用Python模拟腾讯第三方认证-篇2
  2. 大家来找茬源码(微擎) -- 流量主
  3. 黑龙江省牡丹江市谷歌高清卫星地图下载
  4. 如何通过 User-Agent 识别百度蜘蛛
  5. 定义图书类Book,具有属性账号id,铭name.作者author和价格price,在创建图书对象时要求通过构造器进行创建,- -次性将四个属性全部赋值
  6. java取万位的值,excel表格数值如何取万位整数,来研究下吧
  7. 计算机十六进制ABCD,16进制计算(十六进制计算器在线)
  8. MySQL 运维 - 高阶SQL语句
  9. 【Android工具】更新手机流媒体播放器,手机DLNA播放器OPlayer
  10. Excel 技巧篇 - 选择性粘贴表格数据,excel只粘贴数值不粘贴公式