Pytorch学习01_加载数据初认识

一.Dataset

新建py文件

from torch.utils.data import Dataset

Pytorch学习01_加载数据初认识_第1张图片

可以按住”Ctrl“,鼠标左键点击Dataset,可以打开Dataset的定义及其内部函数

Pytorch学习01_加载数据初认识_第2张图片

二.编写

引用cv2模块

终端运行

pip install opencv-python

然后就可以引用cv2模块

import cv2

引用Image

from PIL import Image

数据集链接

https://pan.baidu.com/s/1jZoTmoFzaTLWh4lKBHVbEA 密码: 5suq

下载解压后,复制一份到项目文件夹里

Pytorch学习01_加载数据初认识_第3张图片

改名为dataset

Pytorch学习01_加载数据初认识_第4张图片

在Pycharm里面右键点击.jpg文件,复制文件路径

Pytorch学习01_加载数据初认识_第5张图片

python中 “\0”和 “\a 表示特殊字符的转义序列,因此我们用“\\”进行代替“\”

img_path="W:\Projects\Pytorch01\torch_learn01\dataset\train\ants\0013035.jpg"

Pytorch学习01_加载数据初认识_第6张图片

修改后

img_path="W:\\Projects\\Pytorch01\\torch_learn01\\dataset\\train\\ants\\0013035.jpg"

Pytorch学习01_加载数据初认识_第7张图片

在控制台可以看到图片的属性0000000000000000000000000

img=Image.open(img_path)

Pytorch学习01_加载数据初认识_第8张图片

img.size 

Pytorch学习01_加载数据初认识_第9张图片

打开图片

img.show()

Pytorch学习01_加载数据初认识_第10张图片

获取所有图片的地址,需要“os”这个模块

import os

Pytorch学习01_加载数据初认识_第11张图片

将传入的参数值赋给类的实例变量,使得这两个变量可以在类的其他方法中被访问。

self.root_dir=root_dir
self.label_dir=label_dir

Pytorch学习01_加载数据初认识_第12张图片

控制台测试的内容

root_dir="dataset/train"
label_dir="ants"
path=os.path.join(root_dir,label_dir)
img_path=os.listdir(path)

img_name=img_path[idx]
img_item_path=os.path.join(path,img_name)

os.listdir将图片名称组织成一个列表

Pytorch学习01_加载数据初认识_第13张图片

可以使用索引来获取列表中图片的名称

Pytorch学习01_加载数据初认识_第14张图片

获取到图片名称,可以获取相对路径

Pytorch学习01_加载数据初认识_第15张图片

安装ipython

pip install ipython

Pytorch学习01_加载数据初认识_第16张图片

图片名保存为txt文件

import os

train_dataset="dataset/train"
# target_dir="ants_image"
target_dir="bees_image"
image_path=os.listdir(os.path.join(train_dataset,target_dir))
label=target_dir.split("_")[0]
out_dir="bees_label"
for i in image_path:
    file_name=i.split('.jpg')[0]
    with open(os.path.join(train_dataset,out_dir,f"{file_name}.txt"),'w') as f:
        f.write(label)
print("ooo")

Pytorch学习01_加载数据初认识_第17张图片

Pytorch学习01_加载数据初认识_第18张图片

参考

【PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】】 https://www.bilibili.com/video/BV1hE411t7RN/?p=6&share_source=copy_web&vd_source=be33b1553b08cc7b94afdd6c8a50dc5a

你可能感兴趣的:(pytorch,学习,人工智能,python,pycharm,pip,ipython)