1. 程式人生 > >PyTorch資料的讀取方法

PyTorch資料的讀取方法

Torch裡有一個自帶圖片讀取函式torchvision.datasets.ImageFolder,格式如下:

#path:圖片路徑      transform:圖片轉換操作  
#target_transform:label變換操作     loader:指定載入圖片的函式,預設使用PIL讀取
ImageFolder(path,transform=None,target_transform=None,loader=default_loader)

例子:

from torchvision.datasets import ImageFolder
#目錄資料夾只放了兩張照片,一張在子資料夾cat,另一張在子資料夾dog
dataset=ImageFolder('G:/dog_cat/')
#列印圖片路徑下各資料夾的label
print(dataset.class_to_idx)

out:{‘dog’: 1, ‘cat’: 0}

#列印資料夾下所有圖片及其標籤
print(dataset.imgs)

out:[(‘G:/dog_cat/cat\cat.jpg’, 0), (‘G:/dog_cat/dog\dog.jpg’, 1)]

#第一個維度代表第幾張圖片,第二個代表label/格式
print(dataset[0][1]) #列印第一張圖片的label
print(dataset[1][0]) #列印第二張圖片的格式

out: 0
out:<PIL.Image.Image image mode=RGB size=1280x1024 at 0x24B571EBD30>