图片数据集划分为训练集、测试集、验证集

更新时间:2023-07-14 07:50:29 阅读: 评论:0

图⽚数据集划分为训练集、测试集、验证集原博⽂:.
亲测有⽤
颜色歌儿歌主要是⽤于天池学习项⽬:.
# -*- coding: utf-8 -*-
"""
将数据集划分为训练集,验证集,测试集
"""
import os
import random
import shutil
# 创建保存图像的⽂件夹
def makedir(new_dir):
if not ists(new_dir):
os.makedirs(new_dir)
random.ed(1)# 随机种⼦
# 1.确定原图像数据集路径
datat_dir ="D:/test2021/train_val_test0811/"##原始数据集路径
# 2.确定数据集划分后保存的路径
split_dir ="D:/test2021/after0811/"##划分后保存路径
train_dir = os.path.join(split_dir,"train")百日冲刺口号
槲蕨的功效与作用
valid_dir = os.path.join(split_dir,"val")四有教师心得体会
test_dir = os.path.join(split_dir,"test")
# 3.确定将数据集划分为训练集,验证集,测试集的⽐例
train_pct =0.9
valid_pct =0.1
test_pct =0学习背景图片
# 4.划分
for root, dirs, files in os.walk(datat_dir):
燕窝炖雪梨for sub_dir in dirs:# 遍历0,1,2,3,4,5...9⽂件夹
imgs = os.listdir(os.path.join(root, sub_dir))# 展⽰⽬标⽂件夹下所有的⽂件名
imgs =list(filter(lambda x: x.endswith('.png'), imgs))# 取到所有以.png结尾的⽂件,如果改了图⽚格式,这⾥需要修改        random.shuffle(imgs)# 乱序图⽚路径
img_count =len(imgs)# 计算图⽚数量
train_point =int(img_count * train_pct)# 0:train_pct
valid_point =int(img_count *(train_pct + valid_pct))# train_pct:valid_pct
for i in range(img_count):
if i < train_point:# 保存0-train_point的图⽚到训练集
out_dir = os.path.join(train_dir, sub_dir)
elif i < valid_point:# 保存train_point-valid_point的图⽚到验证集
out_dir = os.path.join(valid_dir, sub_dir)
语文卷el:#  保存valid_point-结束的图⽚到测试集
out_dir = os.path.join(test_dir, sub_dir)
makedir(out_dir)# 创建⽂件夹
target_path = os.path.join(out_dir, imgs[i])# 指定⽬标保存路径
src_path = os.path.join(datat_dir, sub_dir, imgs[i])#指定⽬标原图像路径
print('Class:{}, train:{}, valid:{}, test:{}'.format(sub_dir, train_point, valid_point-train_point,
img_count-valid_point))
Jupyter Notebook 程序执⾏结果:活力的英语

本文发布于:2023-07-14 07:50:29,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1080906.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:路径   划分   数据   保存
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图