登录
首页 >  文章 >  python教程

Pytorch中的Randomhorizo​​ntalflip

来源:dev.to

时间:2025-02-09 19:00:56 375浏览 收藏

大家好,我们又见面了啊~本文《Pytorch中的Randomhorizo​​ntalflip》的内容中将会涉及到等等。如果你正在学习文章相关知识,欢迎关注我,以后会给大家带来更多文章相关文章,希望我们能一起进步!下面就开始本文的正式内容~

给我买咖啡☕

*备忘录:

  • 我的帖子解释了bersanverticalflip()。
  • >
  • 我的帖子解释了牛津iiitpet()。

randomhorizo​​ntalflip()可以随机和水平覆盖图像,如下所示:

*备忘录:

  • 初始化的第一个参数是p(可选默认:0.5-type:int或float): *备忘录:
    • 这是图像是否被翻转的可能性。
    • >
    • 必须为0 < = x < = 1。
  • 第一个参数是img(必需类型:pil图像或张量(int)): *备忘录:
    • 张量必须为2d或3d。
    • 不使用img =。
    建议根据v1或v2使用v2?我应该使用哪一个?
  • from torchvision.datasets import OxfordIIITPet
    from torchvision.transforms.v2 import RandomHorizontalFlip
    
    randomhorizontalflip = RandomHorizontalFlip()
    randomhorizontalflip = RandomHorizontalFlip(p=0.5)
    
    randomhorizontalflip
    # RandomHorizontalFlip(p=0.5)
    
    randomhorizontalflip.p
    # 0.5
    
    origin_data = OxfordIIITPet(
        root="data",
        transform=None
        # transform=RandomHorizontalFlip(p=0)
    )
    
    p1_data = OxfordIIITPet(
        root="data",
        transform=RandomHorizontalFlip(p=1)
    )
    
    p05_data = OxfordIIITPet(
        root="data",
        transform=RandomHorizontalFlip(p=0.5)
    )
    
    import matplotlib.pyplot as plt
    
    def show_images1(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_images1(data=origin_data, main_title="origin_data")
    print()
    show_images1(data=p1_data, main_title="p1_data")
    show_images1(data=p1_data, main_title="p1_data")
    show_images1(data=p1_data, main_title="p1_data")
    print()
    show_images1(data=p05_data, main_title="p05_data")
    show_images1(data=p05_data, main_title="p05_data")
    show_images1(data=p05_data, main_title="p05_data")
    
    # ↓ ↓ ↓ ↓ ↓ ↓ The code below is identical to the code above. ↓ ↓ ↓ ↓ ↓ ↓
    def show_images2(data, main_title=None, prob=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_images2(data=origin_data, main_title="origin_data")
    print()
    show_images2(data=origin_data, main_title="p1_data", prob=1)
    show_images2(data=origin_data, main_title="p1_data", prob=1)
    show_images2(data=origin_data, main_title="p1_data", prob=1)
    print()
    show_images2(data=origin_data, main_title="p05_data", prob=0.5)
    show_images2(data=origin_data, main_title="p05_data", prob=0.5)
    show_images2(data=origin_data, main_title="p05_data", prob=0.5)
    

image description


image description

image description

image description


image description

image description

image description

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于文章的相关知识,也可关注golang学习网公众号。

声明:本文转载于:dev.to 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>