Я пытаюсь создать CNN, используя PyTorch, но мои изображения нуждаются в импорте из формата FITS, а не в обычный .png или .jpeg и т. Д.
Есть ли способ сделать это легко с помощью torch.utils.data.DataLoader или есть место в исходном коде, где я могу вставить предложение, которое будет обрабатывать файлы FITS при загрузке?
Я посмотрел в документации, и самое подходящее, что я нашел, - это преобразователь ToPILImage, который преобразует тензор или ndarray в PIL-изображение.
В настоящее время я использую процедуру загрузки изображения следующим образом:
import torch
from torch.autograd import Variable
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
import torchvision.datasets as dset
import torchvision.transforms as transforms
import torchvision
batch_size = 4
transform = transforms.Compose(
[transforms.Resize((32,32)),
transforms.ToTensor(),
])
trainset = dset.ImageFolder(root="Documents/Image_data",transform=transform)
train_loader = torch.utils.data.DataLoader(trainset, batch_size=batch_size,shuffle=True)
Астропия: http://www.astropy.org/
Pytorch: https://pytorch.org/
torch.utils: https://pytorch.org/docs/master/data.html
ОБНОВЛЕНИЕ: Возможно, используя torchvision.datasets.DatasetFolder вместо DataLoader, вставка в мой собственный обработчик FITS будет работать?
При попытке использовать этот класс я получаю следующую ошибку:
AttributeError: module 'torchvision.datasets' has no attribute 'DatasetFolder'
Действительно ли DatasetFolder на данный момент поддерживается torchvision?