Heim >Backend-Entwicklung >Python-Tutorial >RandomHorizontalFlip in PyTorch

RandomHorizontalFlip in PyTorch

Patricia Arquette
Patricia ArquetteOriginal
2024-12-27 08:42:10264Durchsuche

Kauf mir einen Kaffee☕

*Memos:

  • Mein Beitrag erklärt RandomVerticalFlip().
  • Mein Beitrag erklärt OxfordIIITPet().

RandomHorizontalFlip() kann null oder mehr Bilder horizontal spiegeln, wie unten gezeigt:

*Memos:

  • Das 1. Argument für die Initialisierung ist p(Optional-Default:0.5-Type:float). *Es ist die Wahrscheinlichkeit, mit der jedes Bild umgedreht wird. *Es ist die Wahrscheinlichkeit, mit der jedes Bild umgedreht wird.
  • Das 1. Argument ist img(Required-Type:PIL Bild oder Tensor, Tupel oder Liste von int): *Memos:
    • Es muss 2D sein.
    • Verwenden Sie nicht img=.
  • Wird empfohlen, V2 gemäß V1 oder V2 zu verwenden? Welches soll ich verwenden?
from torchvision.datasets import OxfordIIITPet
from torchvision.transforms.v2 import RandomHorizontalFlip

RandomHorizontalFlip()
# RandomHorizontalFlip(p=0.5)

RandomHorizontalFlip().p
# 0.5

origin_data = OxfordIIITPet(
    root="data",
    transform=None
)

trans100_data = OxfordIIITPet(
    root="data",
    transform=RandomHorizontalFlip(p=1.0)
)

trans50_data = OxfordIIITPet(
    root="data",
    transform=RandomHorizontalFlip(p=0.5)
)

import matplotlib.pyplot as plt

def show_images(data, main_title=None):
    plt.figure(figsize=(10, 5))
    plt.suptitle(t=main_title, y=0.8, fontsize=14)
    for i, (im, _) in zip(range(1, 6), data):
        plt.subplot(1, 5, i)
        plt.imshow(X=im)
        plt.xticks(ticks=[])
        plt.yticks(ticks=[])
    plt.tight_layout()
    plt.show()

show_images(data=origin_data, main_title="origin_data")
show_images(data=trans100_data, main_title="trans100_data")
show_images(data=trans50_data, main_title="trans50_data")

RandomHorizontalFlip in PyTorch

RandomHorizontalFlip in PyTorch

RandomHorizontalFlip in PyTorch

from torchvision.datasets import OxfordIIITPet
from torchvision.transforms.v2 import RandomHorizontalFlip

my_data = OxfordIIITPet(
    root="data",
    transform=None
)

import matplotlib.pyplot as plt

def show_images(data, main_title=None, prob=0.0):
    plt.figure(figsize=(10, 5))
    plt.suptitle(t=main_title, y=0.8, fontsize=14)
    for i, (im, _) in zip(range(1, 6), data):
        plt.subplot(1, 5, i)
        rhf = RandomHorizontalFlip(p=prob)
        plt.imshow(X=rhf(im))
        plt.xticks(ticks=[])
        plt.yticks(ticks=[])
    plt.tight_layout()
    plt.show()

show_images(data=my_data, main_title="origin_data")
show_images(data=my_data, main_title="trans100_data", prob=1.0)
show_images(data=my_data, main_title="trans50_data", prob=0.5)

RandomHorizontalFlip in PyTorch

RandomHorizontalFlip in PyTorch

RandomHorizontalFlip in PyTorch

Das obige ist der detaillierte Inhalt vonRandomHorizontalFlip in PyTorch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn