[PYTHON] Zeigen Sie das Bild nach der Datenerweiterung mit Pytorch an

Hintergrund

** Ich möchte das Bild nach der Datenerweiterung anzeigen! ** **.

Ich habe es gedacht und umgesetzt.

Die Datenerweiterung ist eine Technologie zum Auffüllen eines einzelnen Bildes. Die folgenden Vorgänge werden hinzugefügt.

Es gibt viele andere Dinge.

Implementierung

Dieses Mal habe ich den Trainingsbilddatensatz von CIFAR-10 geladen und versucht, Random Horizontal Flip und Random Erasing in Transformationen zu integrieren.

test.py


import torch
import numpy as np
import torchvision
import torchvision.transforms as transforms
from torch.utils.data import Dataset,DataLoader
import torchvision.datasets as dsets
import matplotlib.pyplot as plt

#Bilder laden
batch_size = 100
train_data = dsets.CIFAR10(root='./tmp/cifar-10', train=True, download=False, transform=transforms.Compose([transforms.RandomHorizontalFlip(p=0.5), transforms.ToTensor(), transforms.RandomErasing(p=0.5, scale=(0.02, 0.4), ratio=(0.33, 3.0))]))
train_loader = DataLoader(train_data,batch_size=batch_size,shuffle=True)
test_data = dsets.CIFAR10(root='./tmp/cifar-10', train=False, download=False, transform=transforms.Compose([transforms.ToTensor(),]))
test_loader = DataLoader(test_data,batch_size=batch_size,shuffle=False)

def image_show(data_loader,n):

  #Erweiterte Bilddaten lesen
  tmp = iter(data_loader)
  images,labels = tmp.next()

  #Bild vom Tensor in Numpy konvertieren
  images = images.numpy()

  #Nehmen Sie n Bilder einzeln heraus und zeigen Sie sie an
  for i in range(n):
    image = np.transpose(images[i],[1,2,0])
    plt.imshow(image)
    plt.show()

image_show(train_loader,10)

Die Funktion image_show ist eine Funktion, die das Bild nach der Augmentation anzeigt.

Holen Sie sich mit iter () einen Mini-Batch von DataLoader.

Verwenden Sie dann .next (), um die Bilddaten in Bildern und die Beschriftungen in Beschriftungen zu speichern.

images = images.numpy () konvertiert Bilddaten vom Tensor in numpy.

Zu diesem Zeitpunkt haben Bilder eine Struktur von ** [Stapelgröße, Anzahl der Kanäle, Breite, Höhe] **, aber um Bilder mit einem Pyplot von Matplotlib anzuzeigen ** [Breite, Höhe, Anzahl der Kanäle] Muss sein **.

Daher wird es mit np.transpose transformiert.

Beispiel für ein Ausführungsergebnis

1.png 02.png

Es wurde bestätigt, dass es horizontal gespiegelt wurde und dass durch zufälliges Löschen Rauschen hinzugefügt wurde.

Recommended Posts

Zeigen Sie das Bild nach der Datenerweiterung mit Pytorch an
Zeigen Sie das Bild nach der Datenerweiterung mit PyTorch an
Aufblasen von Daten (Datenerweiterung) mit PyTorch
Bildanzeige mit dem eingebauten ISIGHT
Datenerweiterung mit openCV
[PyTorch] Datenerweiterung zur Segmentierung
Installieren Sie die Datendatei mit setup.py
Versuchen Sie, das Bild mit opencv2 zu verwischen
[Django] Registrierungsdaten für Benutzer im Registrierungs- / Bearbeitungsformular (Formular) anzeigen
Zeigen Sie Python 3 im Browser mit MAMP an
Versuchen Sie, die Höhendaten des National Land Research Institute mit Python abzubilden
Senden und Empfangen von Bilddaten als JSON in Python über das Netzwerk
Klicken Sie mit der rechten Maustaste auf das Bild → Realisieren Sie "Mit TinyPNG komprimieren"
Ich habe versucht, mit Pillow mit dem Bild zu spielen
Zeigen Sie Markierungen über dem Rand mit matplotlib an
Führen Sie Raw SQL mit Redash unter Verwendung der Python-Datenquelle aus und zeigen Sie das Ergebnis an
So zeigen Sie im gesamten Fenster an, wenn Sie das Hintergrundbild mit tkinter einstellen
Anzeige von Positionsinformationsdaten in Python - Versuchen Sie, mit der Kartenanzeigebibliothek (Folium) zu zeichnen -
Wenn Sie mit der Maus über Matplotlib fahren, wird das entsprechende Bild angezeigt.
Ich habe versucht, das Bild mit Python + OpenCV zu "glätten"
Schneiden Sie das Bild mit Pythonista auf abgerundete Ecken
Ich habe versucht, das Bild mit Python + OpenCV zu "differenzieren"
Generieren und veröffentlichen Sie Dummy-Bilddaten mit Django
Ich habe versucht, die Daten mit Zwietracht zu speichern
Zeigen Sie Epidemiedaten mithilfe des Grafana-Dashboards dynamisch an
Bestimmen Sie die Zahlen in dem mit der Webkamera aufgenommenen Bild
Ich habe versucht, das Bild mit Python + OpenCV zu "binarisieren"
Zeigen Sie das 邊 an
Spiele mit PyTorch
Kreuzvalidierung mit PyTorch
Zeigen Sie in Python n Nachkommastellen an
Extrahieren Sie die Tabelle der Bilddateien mit OneDrive & Python
So kratzen Sie Bilddaten von Flickr mit Python
Klicken Sie nach der Oauth-Authentifizierung mit Django auf die Twitter-API
[Python] Holen Sie sich die Zahlen im Diagramm mit OCR
Identifizieren Sie den Namen aus dem Blumenbild mit Keras (Tensorfluss)
Konvertieren Sie das Bild in .zip mit Python in PDF
[PyTorch Tutorial ⑦] Visualisieren von Modellen, Daten und Training mit Tensorboard
Erhalten Sie Kommentare und Abonnenten mit der YouTube-Daten-API
Vorbereiten der Ausführungsumgebung von PyTorch mit Docker November 2019
Fordern Sie die Bildklassifizierung mit TensorFlow2 + Keras 3 heraus ~ Visualisieren Sie MNIST-Daten ~
POST das Bild mit json und erhalte es mit der Flasche
Zeigen Sie das Diagramm an, während Sie die Parameter mit PySimpleGUI + Matplotlib ändern
Löschen Sie DynamoDB-Daten nach 5 Minuten mit den AWS-Schrittfunktionen
Ich habe versucht, die Punktgruppendaten-DB der Präfektur Shizuoka mit Vue + Leaflet anzuzeigen