Python根据txt文件把图像从数据集中读取出来

在做图像分割的时候,需要根据分好的训练集,验证集,测试集,把图像也分离开。
Python根据txt文件把图像从数据集中读取出来_第1张图片
代码如下:

import os
import shutil

# 读入分类的标签txt文件
label_file = open("D:\weldline\code\dataset\VOCdevkit_219_new\VOC2012\ImageSets\Segmentation\\test.txt", 'r')
# 原始文件的根目录
input_path = "D:\weldline\code\dataset\VOCdevkit_219_new\VOC2012\SegmentationClass"
# 保存文件的根目录
output_path = "D:\weldline\code\dataset\VOCdevkit_219_new\VOC2012\\res"

# 一行行读入标签文件
data = label_file.readlines()
# 计数用
i = 1
# 遍历数据
for line in data:
    # 通过空格拆分成数组
    str1 = line.split(" ")
    # 第一个是文件名
    file_name = str1[0].strip()
    # 原始文件的路径
    old_file_path = os.path.join(input_path, file_name + ".png")
    # 新文件路径
    new_file_path = output_path

    # 如果路径不存在,则创建
    if not os.path.exists(new_file_path):
        print("路径 " + new_file_path + " 不存在,正在创建......")
        os.makedirs(new_file_path)

    # 新文件位置
    new_file_path = os.path.join(new_file_path, file_name + ".png")
    print("" + str(i) + "\t正在将 " + old_file_path + " 复制到 " + new_file_path)
    # 复制文件
    shutil.copyfile(old_file_path, new_file_path)

    i = i + 1
# 完成提示
print("完成")

你可能感兴趣的:(python,python,深度学习)