登录
首页 >  文章 >  python教程

pytorch的兰德姆布森

来源:dev.to

时间:2025-02-08 10:50:11 372浏览 收藏

文章小白一枚,正在不断学习积累知识,现将学习到的知识记录一下,也是将我的所得分享给大家!而今天这篇文章《pytorch的兰德姆布森》带大家来了解一下##content_title##,希望对大家的知识积累有所帮助,从而弥补自己的不足,助力实战开发!


给我买咖啡☕

*备忘录:

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

> randomperspective()可以对图像进行随机的透视转换,如下所示:

*备忘录:

  • 初始化的第一个参数是distortion_scale(可选默认:0.5型:int或float): *备忘录:
    • 它可以进行透视转换。
    • >
    • 必须为0 < = x < = 1。
  • >初始化的第二个参数为p(可选默认:0.5-type:int或float): *备忘录:
    • >是图像是否通过透视转换完成的概率。
    • 必须为0 < = x < = 1。
    • 初始化的第三个参数是插值(可选默认:interpolationmode.binear-type:interpolationmode)。
    初始化的第四个参数是填充(可选默认:0型:int,float或tuple/tuple/list(int或float)): *备忘录:
  • >它可以更改图像的背景。 *在为图像进行透视转换时,可以看到背景。
  • >
  • 元组/列表必须是具有1或3个元素的1d。
    • 第一个参数是img(必需类型:pil图像或张量(int)): *备忘录:
    • 张量必须为2d或3d。
    不使用img =。
    • 建议根据v1或v2使用v2?我应该使用哪一个?
    • from torchvision.datasets import OxfordIIITPet
      from torchvision.transforms.v2 import RandomPerspective
      from torchvision.transforms.functional import InterpolationMode
      
      randompers = RandomPerspective()
      randompers = RandomPerspective(distortion_scale=0.5,
                                     p=0.5,
                                     interpolation=InterpolationMode.BILINEAR,
                                     fill=0)
      randompers
      # RandomPerspective(p=0.5,
      #                   distortion_scale=0.5,
      #                   interpolation=InterpolationMode.BILINEAR,
      #                   fill=0)
      
      randompers.distortion_scale
      # 0.5
      
      randompers.p
      # 0.5
      
      randompers.interpolation
      # <InterpolationMode.BILINEAR: 'bilinear'>
      
      randompers.fill
      # 0
      
      origin_data = OxfordIIITPet(
          root="data",
          transform=None
      )
      
      ds0p1origin_data = OxfordIIITPet( # `ds` is distortion_scale.
          root="data",
          transform=RandomPerspective(distortion_scale=0, p=1)
      )
      
      ds01p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=0.1, p=1)
      )
      
      ds02p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=0.2, p=1)
      )
      
      ds03p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=0.3, p=1)
      )
      
      ds04p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=0.4, p=1)
      )
      
      ds05p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=0.5, p=1)
      )
      
      ds06p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=0.6, p=1)
      )
      
      ds07p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=0.7, p=1)
      )
      
      ds08p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=0.8, p=1)
      )
      
      ds09p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=0.9, p=1)
      )
      
      ds1p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(distortion_scale=1, p=1)
      )
      
      p0_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(p=0)
      )
      
      p05_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(p=0.5)
      )
      
      p1_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(p=1)
      )
      
      p1fgray_data = OxfordIIITPet( # `f` is fill.
          root="data",
          transform=RandomPerspective(p=1, fill=150)
      )
      
      p1fpurple_data = OxfordIIITPet(
          root="data",
          transform=RandomPerspective(p=1, fill=[160, 32, 240])
      )
      
      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=ds0p1origin_data, main_title="ds0p1origin_data")
      show_images1(data=ds01p1_data, main_title="ds01p1_data")
      show_images1(data=ds02p1_data, main_title="ds02p1_data")
      show_images1(data=ds03p1_data, main_title="ds03p1_data")
      show_images1(data=ds04p1_data, main_title="ds04p1_data")
      show_images1(data=ds05p1_data, main_title="ds05p1_data")
      show_images1(data=ds06p1_data, main_title="ds06p1_data")
      show_images1(data=ds07p1_data, main_title="ds07p1_data")
      show_images1(data=ds08p1_data, main_title="ds08p1_data")
      show_images1(data=ds09p1_data, main_title="ds09p1_data")
      show_images1(data=ds1p1_data, main_title="ds1p1_data")
      print()
      show_images1(data=p0_data, main_title="p0_data")
      show_images1(data=p0_data, main_title="p0_data")
      show_images1(data=p0_data, main_title="p0_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")
      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=p1fgray_data, main_title="p1fgray_data")
      show_images1(data=p1fpurple_data, main_title="p1fpurple_data")
      
      # ↓ ↓ ↓ ↓ ↓ ↓ The code below is identical to the code above. ↓ ↓ ↓ ↓ ↓ ↓
      def show_images2(data, main_title=None, ds=0.5, prob=0.5,
                       ip=InterpolationMode.BILINEAR, f=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)
              rp = RandomPerspective(distortion_scale=ds, p=prob, # Here
                                     interpolation=ip, fill=f)
              plt.imshow(X=rp(im)) # Here
              plt.xticks(ticks=[])
              plt.yticks(ticks=[])
          plt.tight_layout()
          plt.show()
      
      show_images2(data=origin_data, main_title="origin_data", ds=0)
      print()
      show_images2(data=origin_data, main_title="ds0p1origin_data", ds=0,
                   prob=1)
      show_images2(data=origin_data, main_title="ds01p1_data", ds=0.1, prob=1)
      show_images2(data=origin_data, main_title="ds02p1_data", ds=0.2, prob=1)
      show_images2(data=origin_data, main_title="ds03p1_data", ds=0.3, prob=1)
      show_images2(data=origin_data, main_title="ds04p1_data", ds=0.4, prob=1)
      show_images2(data=origin_data, main_title="ds05p1_data", ds=0.5, prob=1)
      show_images2(data=origin_data, main_title="ds06p1_data", ds=0.6, prob=1)
      show_images2(data=origin_data, main_title="ds07p1_data", ds=0.7, prob=1)
      show_images2(data=origin_data, main_title="ds08p1_data", ds=0.8, prob=1)
      show_images2(data=origin_data, main_title="ds09p1_data", ds=0.9, prob=1)
      show_images2(data=origin_data, main_title="ds1p1_data", ds=1, prob=1)
      print()
      show_images2(data=origin_data, main_title="p0_data", prob=0)
      show_images2(data=origin_data, main_title="p0_data", prob=0)
      show_images2(data=origin_data, main_title="p0_data", prob=0)
      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)
      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="p1fgray_data", prob=1, f=150)
      show_images2(data=origin_data, main_title="p1fpurple_data", prob=1,
                   f=[160, 32, 240])
      

image description


image description

image description

image description

image description

image description

image description

image description

image description

image description

image description

image description


image description

image description

image description


image description

image description

image description


image description

image description

image description


image description

终于介绍完啦!小伙伴们,这篇关于《pytorch的兰德姆布森》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!

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