ホームページ >バックエンド開発 >Python チュートリアル >PyTorch でのランダム水平反転
コーヒー買ってきて☕
*メモ:
RandomhorizontalFlip() は、以下に示すように、0 個以上の画像を水平方向に反転できます。
*メモ:
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")
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)
以上がPyTorch でのランダム水平反転の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。