Augmentacja danych w PyTorch
Dodajmy augmentację danych do twojego zbioru danych i sprawdźmy kilka obrazów wizualnie, aby upewnić się, że pożądane przekształcenia są stosowane.
Na początek dodasz przekształcenia augmentujące do train_transforms. Użyjemy losowego odbicia poziomego oraz obrotu o losowy kąt z zakresu od 0 do 45 stopni. Kod tworzący zbiór danych i DataLoader pozostaje taki sam jak wcześniej. Na koniec zmienisz kształt obrazu i wyświetlisz go, żeby sprawdzić, czy nowe przekształcenia są widoczne.
Wszystkie potrzebne importy zostały już wywołane:
from torchvision.datasets import ImageFolder
from torch.utils.data import DataLoader
from torchvision import transforms
import matplotlib.pyplot as plt
Czas na augmentację zdjęć chmur!
To ćwiczenie jest częścią kursu
Głębokie uczenie z PyTorch – poziom średnio zaawansowany
Instrukcje do ćwiczenia
- Dodaj dwa kolejne przekształcenia do
train_transforms: losowe odbicie poziome oraz obrót o losowy kąt z zakresu od 0 do 45 stopni. - Zmień kształt tensora
imagepobranego z DataLoadera, aby przygotować go do wyświetlenia. - Wyświetl obraz.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
train_transforms = transforms.Compose([
# Add horizontal flip and rotation
____,
____,
transforms.ToTensor(),
transforms.Resize((128, 128)),
])
dataset_train = ImageFolder(
"clouds_train",
transform=train_transforms,
)
dataloader_train = DataLoader(
dataset_train, shuffle=True, batch_size=1
)
image, label = next(iter(dataloader_train))
# Reshape the image tensor
image = image.____.____(____, ____, ____)
# Display the image
____
plt.show()