Внутри моего пользовательского набора данных я хочу применить transforms.Compose()
к массиву NumPy.
Мои изображения находятся в формате массива NumPy с формой (num_samples, width, height, channels)
.
Как я могу применить следующие преобразования к полному массиву numpy?
img_transform = transforms.Compose([
transforms.Scale((224,224)),
transforms.ToTensor(),
transforms.Normalize([0.46, 0.48, 0.51], [0.32, 0.32, 0.32])
])
Мои попытки заканчиваются несколькими ошибками, поскольку преобразования принимают изображение PIL, а не 4-d NumPy массив.
from torchvision import transforms
import numpy as np
import torch
img_transform = transforms.Compose([
transforms.Scale((224,224)),
transforms.ToTensor(),
transforms.Normalize([0.46, 0.48, 0.51], [0.32, 0.32, 0.32])
])
a = np.random.randint(0,256, (299,299,3))
print(a.shape)
img_transform(a)