请我喝杯咖啡☕
*备忘录:
- 我的帖子解释了 randomverticalflip()。
- 我的帖子解释了 oxfordiiitpet()。
randomhorizontalflip() 可以水平翻转零个或多个图像,如下所示:
*备忘录:
- 初始化的第一个参数是 p(optional-default:0.5-type:float)。 *这是每张图像被翻转的概率。 *这是每张图像被翻转的概率。
- 第一个参数是 img(必需类型:pil 图像或张量、元组或 int 列表): *备注:
- 必须是二维的。
- 不要使用img=。
- v2建议按照v1还是v2使用?我应该使用哪一个?
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中文网其它相关文章!