IniziaInizia gratis

Data augmentation in PyTorch

Includiamo il data augmentation nel tuo Dataset e ispezioniamo alcune immagini visivamente per assicurarci che le trasformazioni desiderate vengano applicate.

Per prima cosa, aggiungerai le trasformazioni di aumento a train_transforms. Usiamo un flip orizzontale casuale e una rotazione con un angolo casuale tra 0 e 45 gradi. Il codice che segue per creare il Dataset e il DataLoader è esattamente lo stesso di prima. Infine, rimodellerai l'immagine e la visualizzerai per verificare che le nuove trasformazioni di aumento siano visibili.

Tutti gli import necessari sono già stati eseguiti per te:

from torchvision.datasets import ImageFolder
from torch.utils.data import DataLoader
from torchvision import transforms
import matplotlib.pyplot as plt

È il momento di aumentare qualche foto di nuvole!

Questo esercizio fa parte del corso

Deep Learning intermedio con PyTorch

Visualizza il corso

Istruzioni dell'esercizio

  • Aggiungi due trasformazioni a train_transforms per eseguire un flip orizzontale casuale e poi una rotazione con un angolo casuale tra 0 e 45 gradi.
  • Rimodella il tensore image dal DataLoader per renderlo adatto alla visualizzazione.
  • Visualizza l'immagine.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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()
Modifica ed esegui il codice