前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PASCAL VOC数据集训练集、验证集、测试集的划分和提取

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

作者头像
狼啸风云
修改2022-09-03 19:47:23
3.9K0
修改2022-09-03 19:47:23
举报

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

代码语言:javascript
复制
#数据集划分
import os
import random

root_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文件的提取方法)

代码语言:javascript
复制
# -*- coding:UTF-8 -*-
import shutil

f_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\\'+ imagename
    shutil.copy(imagepath,f_train)
    # 删除训练集和验证集,剩余图片为测试集
    # os.remove(imagepath)

#处理Annotations同理只需将.jpg改为.xml

参考:https://www.cnblogs.com/sdu20112013/p/10801383.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-12-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、训练集、验证集、测试集按比例精确划分
    • 2、训练集、验证集和测试集提取(只给出trian文件的提取方法)
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档