Pytorch學習 資料讀取 資料預處理

2021-10-08 17:09:22 字數 1312 閱讀 4318

torch.utils.data.dataloader   #構建可迭代的資料裝載器

dataloader()引數 :

torch.utils.data.dataset   

dataset抽象類,所有自定義的 dataset需要繼承它,並且複寫__getitem__()

getitem :接收乙個索引,返回乙個樣本

例如:

from torch.utils.data import dataset

from pil import image

import os

class mydata(dataset):

#初始化。一般寫些該類的全域性變數,為後邊函式提供變數

def __init__(self, data_dir, label_dir):

#不同的資料格式,此處的處理方法不同

self.data_dir = data_dir

self.label_dir = label_dir

self.path = os.path.join(self.data_dir, self.label_dir)

self.img_path = os.listdir(self.path) #獲取路徑中的每一張

def __getitem__(self, item):

img_name = self.img_path[item]

img_item_path = os.path.join(self.data_dir, self.label_dir, img_name) #獲取路徑

img = image.open(img_item_path)

label = self.label_dir

return img, label

def __len__(self):

return len(self.img_path)

torchvision:計算機視覺工具包

torchvision.transforms : 常用的影象預處理方法——資料中心化 • 資料標準化 • 縮放 • 裁剪 • 旋轉 • 翻轉 • 填充 • 雜訊新增 • 灰度變換 • 線性變換 • 仿射變換 • 亮度、飽和度及對比度變換

torchvision.datasets : 常用資料集的dataset實現,mnist,cifar-10,imagenet等

torchvision.model : 常用的模型預訓練,alexnet,vgg, resnet,googlenet等

transforms.normalize(mean, std, inplace=false)  #逐channel的對影象進行標準化為(-1,1)

PyTorch資料讀取

torch.utils.data.dataloader torch.utils.data.dataset,batch size,shuffle,num workers,pin memory 關鍵是這兩個類 torch.utils.data.dataloader torch.utils.data.da...

pytorch資料讀取

pytorch資料讀取機制 sampler生成索引index,根據索引從dataset中獲取和標籤 1.torch.utils.data.dataloader 功能 構建可迭代的資料裝在器 dataset dataset類,決定資料從哪讀取及如何讀取 batchsize 批大小 num works ...

pytorch讀取coco資料集

yolov3 an incremental improvement 原理在該篇部落格就寫的很詳細了,這裡就不贅述了 bin bash credit clone coco api git clone cd coco mkdir images cd images download images wget...