import os
import random
import shutil
path = "/Data/image_fold" #要分类的文件夹
save_path = "/Data/val" #划分好的val文件保存路径
if not os.path.exists(save_path):
os.makedirs(save_path)
img_files = []
for root, dirs, files in os.walk(path):
for file in files:
if file.endswith(('.jpg', '.JPG', '.png', '.PNG', '.jpeg', '.JPEG')):
img_files.append(os.path.join(root, file))
num = range(len(img_files))
n = int(len(img_files) * 0.2) #划分比例
print(f'num: {len(img_files)}, sample num: {n}')
indexes = random.sample(num, n)
for index in indexes:
img_file = img_files[index]
txt_file = os.path.splitext(img_file)[0] + ".txt"
shutil.move(img_file, save_path)
shutil.move(txt_file, save_path)
图片数据划分训练集、验证集、测试集(包含对应txt的划分,适用目标检测、目标分类)
于 2023-10-31 11:18:53 首次发布