pytorch(08)数据模型的读取(2)
2024-10-20 16:05:36
import numpy as np
import torch
import os
import random
from PIL import Image
from torch.utils.data import Dataset
from torch.utils.data import DataLoader
import torchvision.transforms as transforms
BASE_PATH = os.path.abspath(__file__)
# print(BASE_PATH)
base_path = os.path.abspath(os.path.join(BASE_PATH, '..', 'TestDir'))
# print(base_path)
data_dir = os.path.abspath(os.path.join(BASE_PATH, '..', 'RMB_data'))
random.seed(1)
# print(data_dir)
test_label = {"1": 0, "100": 1}
data_info = list()
for path, dirs, files in os.walk(base_path):
for sub_dir in dirs:
# print(sub_dir)
sub_dirlist = os.listdir(os.path.join(base_path, sub_dir))
pynames = list(filter(lambda y: y.endswith('.jpg'), sub_dirlist))
# print(pynames)
# print(test_label[sub_dir])
for pyname in pynames:
datainfo_dir = os.path.join(base_path, sub_dir, pyname)
t_label=test_label[sub_dir]
t_label = int(t_label)
data_info.append((datainfo_dir, t_label))
# print(data_info)
new_data_info = list()
for data_info_e in data_info:
x_dir, x_label = data_info_e
x_img = Image.open(x_dir).convert('RGB')
ok_transform = transforms.Compose([
transforms.Resize((32, 32)),
transforms.RandomCrop(32, padding=4),
transforms.ToTensor(),
])
x_img = ok_transform(x_img)
new_data_info.append((x_img,x_label))
# print(len(new_data_info[0][0]))
print(len(new_data_info))
newdataLoader = DataLoader(new_data_info,batch_size=14, shuffle=True)
for ids, data in enumerate(newdataLoader):
print(ids)
最新文章
- 【工匠大道】 svn命令自己总结
- http之Session&;Cookie
- POJ 3009
- HDU 5710 Digit-Sum (构造)
- 把C#对象转换为json字符串
- C++ 包含头文件 和 宏的使用 和 条件编译
- usaco training 4.1.2 Fence Rails 题解
- 在MySQL中使用子查询
- www-authenticate与BASE-64认证技术
- 解决XMind运行卡顿
- JavaScript基础应用
- 6.装配Bean基于注解
- [hgoi#2019/2/24]玄学考试
- How can I move a MySQL database from one server to another?
- str_replace中的匹配空白符,必须用双引号
- Linux的mv 命令
- Spring事务传播属性介绍(二).mandatory、not_supported、never、supports
- 在js中 把 json对象转化为String对象的方法
- TF Boys (TensorFlow Boys ) 养成记(六): CIFAR10 Train 和 TensorBoard 简介
- 利用腾讯云为你的域名申请并配置免费SSL一年
热门文章
- POJ2429 GCD &; LCM Inverse pollard_rho大整数分解
- Codeforces Round #654 (Div. 2) D. Grid-00100 (构造)
- log4net GetLogger(source).IsInfoEnabled = false
- Linux系统编程【3.2】——ls命令优化版和ls -l实现
- Redis 多实例 &; 主从复制
- Kubernets二进制安装(7)之部署主控节点服务--apiserver二进制安装
- Gitlab 快速部署及日常维护 (二)
- 读js DOM编程艺术总结
- VuePress &; Markdown Slot
- how to remove git commit history