Я пытаюсь создать 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)
Astropy: 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?