Pytorch中的Randomcrop(3)

碧海醫心
发布: 2025-02-09 14:24:15
转载
942人浏览过

给我买咖啡☕

*备忘录:

  • 我的帖子解释了关于大小参数的randomcrop()。
  • >
  • 我的帖子解释了randomcrop()有关填充,填充和padding_mode参数。
  • >
  • 我的帖子解释了牛津iiitpet()。

randomcrop()可以随机裁剪图像,如下所示:

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

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

s500_394origin_data = OxfordIIITPet( # `s` is size.
    root="data",
    transform=RandomCrop(size=[500, 394])
)

s600_494pinTrue_data = OxfordIIITPet( # `pin` is pad_if_needed.
    root="data",
    transform=RandomCrop(size=[600, 494], pad_if_needed=True)
)

s700_594pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], pad_if_needed=True)
)

s800_694pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[800, 694], pad_if_needed=True)
)

s400_494pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[400, 494], pad_if_needed=True)
)

s600_294pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 294], pad_if_needed=True)
)

s600_494pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 494], pad_if_needed=False)
)

s700_594pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], pad_if_needed=False)
)

s800_694pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[800, 694], pad_if_needed=False)
)

s400_494pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[400, 494], pad_if_needed=False)
)

s600_294pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 294], pad_if_needed=False)
)

s700_594p100origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], pad_if_needed=100)
)

s800_694p100pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[800, 694], padding=100, pad_if_needed=True)
)

s900_794p100pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[900, 794], padding=100, pad_if_needed=True)
)

s1000_894p100pinTrue_data = OxfordIIITPet( # `p` is padding.
    root="data",
    transform=RandomCrop(size=[1000, 894], padding=100, pad_if_needed=True)
)

s600_694p100pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 694], padding=100, pad_if_needed=True)
)

s800_494p100pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[800, 494], padding=100, pad_if_needed=True)
)

s800_694p100pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[800, 694], padding=100, pad_if_needed=False)
)

s900_794p100pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[900, 794], padding=100, pad_if_needed=False)
)

s1000_894p100pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[1000, 894], padding=100, pad_if_needed=False)
)

s600_694p100pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 694], padding=100, pad_if_needed=False)
)

s800_494p100pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[800, 494], padding=100, pad_if_needed=False)
)

s400_294pn50origin_data = OxfordIIITPet( # `n` is negative.
    root="data",
    transform=RandomCrop(size=[400, 294], padding=-50)
)

s500_394pn50pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[500, 394], padding=-50, pad_if_needed=True)
)

s600_494pn50pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 494], padding=-50, pad_if_needed=True)
)

s700_594pn50pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=-50, pad_if_needed=True)
)

s350_444pn50pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[350, 444], padding=-50, pad_if_needed=True)
)

s450_244pn50pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[450, 244], padding=-50, pad_if_needed=True)
)

s500_394pn50pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[500, 394], padding=-50, pad_if_needed=False)
)

s600_494pn50pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 494], padding=-50, pad_if_needed=False)
)

s700_594pn50pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=-50, pad_if_needed=False)
)

s350_444pn50pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[350, 444], padding=-50, pad_if_needed=False)
)

s450_244pn50pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[450, 244], padding=-50, pad_if_needed=False)
)

s700_594p100origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=100)
)

s700_594p50pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=50, pad_if_needed=True)
)

s700_594p0pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=0, pad_if_needed=True)
)

s700_594pn50pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=-50, pad_if_needed=True)
)

s700_594pn100pinTrue_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=-100, pad_if_needed=True)
)

s700_594p50pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=50, pad_if_needed=False)
)

s700_594p0pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=0, pad_if_needed=False)
)

s700_594pn50pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=-50, pad_if_needed=False)
)

s700_594pn100pinFalse_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=-100, pad_if_needed=False)
)

import matplotlib.pyplot as plt

def show_images1(data, main_title=None):
    plt.figure(figsize=[10, 5.5])
    plt.suptitle(t=main_title, y=0.8, fontsize=14)
    for i in range(1, 6):
        plt.subplot(1, 5, i)
        plt.imshow(X=data[0][0])
    plt.tight_layout()
    plt.show()

show_images1(data=s500_394origin_data, main_title="s500_394origin_data")
show_images1(data=s600_494pinTrue_data, main_title="s600_494pinTrue_data")
show_images1(data=s700_594pinTrue_data, main_title="s700_594pinTrue_data")
show_images1(data=s800_694pinTrue_data, main_title="s800_694pinTrue_data")
show_images1(data=s400_494pinTrue_data, main_title="s400_494pinTrue_data")
show_images1(data=s600_294pinTrue_data, main_title="s600_294pinTrue_data")
# show_images1(data=s600_494pinFalse_data,
#              main_title="s600_494pinFalse_data") # Error
# show_images1(data=s700_594pinFalse_data, 
#              main_title="s700_594pinFalse_data") # Error
# show_images1(data=s800_694pinFalse_data,
#              main_title="s800_694pinFalse_data") # Error
# show_images1(data=s400_494pinFalse_data, 
#              main_title="s400_494pinFalse_data") # Error
# show_images1(data=s600_294pinFalse_data,
#              main_title="s600_294pinFalse_data") # Error
print()
show_images1(data=s700_594p100origin_data, 
             main_title="s700_594p100origin_data")
show_images1(data=s800_694p100pinTrue_data, 
             main_title="s800_694p100pinTrue_data")
show_images1(data=s900_794p100pinTrue_data, 
             main_title="s900_794p100pinTrue_data")
show_images1(data=s1000_894p100pinTrue_data, 
             main_title="s1000_894p100pinTrue_data")
show_images1(data=s600_694p100pinTrue_data, 
             main_title="s600_694p100pinTrue_data")
show_images1(data=s800_494p100pinTrue_data, 
             main_title="s800_494p100pinTrue_data")
# show_images1(data=s800_694p100pinFalse_data, 
#              main_title="s800_694p100pinFalse_data") # Error
# show_images1(data=s900_794p100pinFalse_data,
#              main_title="s900_794p100pinFalse_data") # Error
# show_images1(data=s1000_894p100pinFalse_data,
#              main_title="s1000_894p100pinFalse_data") # Error
# show_images1(data=s600_694p100pinFalse_data, 
#              main_title="s600_694p100pinFalse_data") # Error
# show_images1(data=s800_494p100pinFalse_data, 
#              main_title="s800_494p100pinFalse_data") # Error
print()
show_images1(data=s400_294pn50origin_data, 
             main_title="s400_294pn50origin_data")
show_images1(data=s500_394pn50pinTrue_data, 
             main_title="s500_394pn50pinTrue_data")
show_images1(data=s600_494pn50pinTrue_data, 
             main_title="s600_494pn50pinTrue_data")
show_images1(data=s700_594pn50pinTrue_data, 
             main_title="s700_594pn50pinTrue_data")
show_images1(data=s350_444pn50pinTrue_data, 
             main_title="s350_444pn50pinTrue_data")
show_images1(data=s450_244pn50pinTrue_data, 
             main_title="s450_244pn50pinTrue_data")
# show_images1(data=s500_394pn50pinFalse_data, 
#              main_title="s500_394pn50pinFalse_data") # Error
# show_images1(data=s600_494pn50pinFalse_data, 
#              main_title="s600_494pn50pinFalse_data") # Error
# show_images1(data=s700_594pn50pinFalse_data, 
#              main_title="s700_594pn50pinFalse_data") # Error
# show_images1(data=s350_444pn50pinFalse_data, 
#              main_title="s350_444pn50pinFalse_data") # Error
# show_images1(data=s450_244pn50pinFalse_data, 
#              main_title="s450_244pn50pinFalse_data") # Error
print()
show_images1(data=s700_594p100origin_data, 
             main_title="s700_594p100origin_data")
show_images1(data=s700_594p50pinTrue_data, 
             main_title="s700_594p50pinTrue_data")
show_images1(data=s700_594p0pinTrue_data, 
             main_title="s700_594p0pinTrue_data")
show_images1(data=s700_594pn50pinTrue_data, 
             main_title="s700_594pn50pinTrue_data")
show_images1(data=s700_594pn100pinTrue_data, 
             main_title="s700_594pn100pinTrue_data")
# show_images1(data=s700_594p50pinFalse_data,
#              main_title="s700_594p50pinFalse_data") # Error
# show_images1(data=s700_594p0pinFalse_data,
#              main_title="s700_594p0pinFalse_data") # Error
# show_images1(data=s700_594pn50pinFalse_data,
#              main_title="s700_594pn50pinFalse_data") # Error
# show_images1(data=s700_594pn100pinFalse_data,
#              main_title="s700_594pn100pinFalse_data") # Error

# ↓ ↓ ↓ ↓ ↓ ↓ The code below is identical to the code above. ↓ ↓ ↓ ↓ ↓ ↓
def show_images2(data, main_title=None, s=None, p=None,
                 pin=False, f=0, pm='constant'):
    plt.figure(figsize=[10, 5.5])
    plt.suptitle(t=main_title, y=0.8, fontsize=14)
    temp_s = s
    im = data[0][0]
    for i in range(1, 6):
        plt.subplot(1, 5, i)
        if not temp_s:
            s = [im.size[1], im.size[0]]
        rc = RandomCrop(size=s, padding=p, # Here
                        pad_if_needed=pin, fill=f, padding_mode=pm)
        plt.imshow(X=rc(im)) # Here
    plt.tight_layout()
    plt.show()

show_images2(data=origin_data, main_title="s500_394origin_data",
             s=[500, 394])
show_images2(data=origin_data, main_title="s600_494pinTrue_data",
             s=[600, 494], pin=True)
show_images2(data=origin_data, main_title="s700_594pinTrue_data",
             s=[700, 594], pin=True)
show_images2(data=origin_data, main_title="s800_694pinTrue_data",
             s=[800, 694], pin=True)
show_images2(data=origin_data, main_title="s400_494pinTrue_data",
             s=[400, 494], pin=True)
show_images2(data=origin_data, main_title="s600_294pinTrue_data",
             s=[600, 294], pin=True)
# show_images2(data=origin_data, main_title="s600_494pinFalse_data",
#              s=[600, 494], pin=False) # Error
# show_images2(data=origin_data, main_title="s700_594pinFalse_data",
#              s=[700, 594], pin=False) # Error
# show_images2(data=origin_data, main_title="s800_694pinFalse_data",
#              s=[800, 694], pin=False) # Error
# show_images2(data=origin_data, main_title="s400_494pinFalse_data",
#              s=[400, 494], pin=False) # Error
# show_images2(data=origin_data, main_title="s600_294pinFalse_data",
#              s=[600, 294], pin=False) # Error
print()
show_images2(data=origin_data, main_title="s700_594p100origin_data",
             s=[700, 594], p=100)
show_images2(data=origin_data, main_title="s800_694p100pinTrue_data",
             s=[800, 694], p=100, pin=True)
show_images2(data=origin_data, main_title="s900_794p100pinTrue_data",
             s=[900, 794], p=100, pin=True)
show_images2(data=origin_data, main_title="s1000_894p100pinTrue_data",
             s=[1000, 894], p=100, pin=True)
show_images2(data=origin_data, main_title="s600_694p100pinTrue_data",
             s=[600, 694], p=100, pin=True)
show_images2(data=origin_data, main_title="s800_494p100pinTrue_data",
             s=[800, 494], p=100, pin=True)
# show_images2(data=origin_data, main_title="s800_694p100pinFalse_data",
#              s=[800, 694], p=100, pin=False) # Error
# show_images2(data=origin_data, main_title="s900_794p100pinFalse_data",
#              s=[900, 794], p=100, pin=False) # Error
# show_images2(data=origin_data, main_title="s1000_894p100pinFalse_data",
#              s=[1000, 894], p=100, pin=False) # Error
# show_images2(data=origin_data, main_title="s600_694p100pinFalse_data",
#              s=[600, 694], p=100, pin=False) # Error
# show_images2(data=origin_data, main_title="s800_494p100pinFalse_data",
#              s=[800, 494], p=100, pin=False) # Error
print()
show_images2(data=origin_data, main_title="s400_294pn50origin_data",
             s=[400, 294], p=-50)
show_images2(data=origin_data, main_title="s500_394pn50pinTrue_data",
             s=[500, 394], p=-50, pin=True)
show_images2(data=origin_data, main_title="s600_494pn50pinTrue_data",
             s=[600, 494], p=-50, pin=True)
show_images2(data=origin_data, main_title="s700_594pn50pinTrue_data",
             s=[700, 594], p=-50, pin=True)
show_images2(data=origin_data, main_title="s350_444pn50pinTrue_data",
             s=[350, 444], p=-50, pin=True)
show_images2(data=origin_data, main_title="s450_244pn50pinTrue_data",
             s=[450, 244], p=-50, pin=True)
# show_images2(data=origin_data, main_title="s500_394pn50pinFalse_data",
#              s=[500, 394], p=-50, pin=False) # Error
# show_images2(data=origin_data, main_title="s600_494pn50pinFalse_data",
#              s=[600, 494], p=-50, pin=False) # Error
# show_images2(data=origin_data, main_title="s700_594pn50pinFalse_data",
#              s=[700, 594], p=-50, pin=False) # Error
# show_images2(data=origin_data, main_title="s350_444pn50pinFalse_data",
#              s=[350, 444], p=-50, pin=False) # Error
# show_images2(data=origin_data, main_title="s450_244pn50pinFalse_data",
#              s=[450, 244], p=-50, pin=False) # Error
print()
show_images2(data=origin_data, main_title="s700_594p100origin_data",
             s=[700, 594], p=100)
show_images2(data=origin_data, main_title="s700_594p50pinTrue_data",
             s=[700, 594], p=50, pin=True)
show_images2(data=origin_data, main_title="s700_594p0pinTrue_data",
             s=[700, 594], p=0, pin=True)
show_images2(data=origin_data, main_title="s700_594pn50pinTrue_data",
             s=[700, 594], p=-50, pin=True)
show_images2(data=origin_data, main_title="s700_594pn100pinTrue_data",
             s=[700, 594], p=-100, pin=True)
# show_images2(data=origin_data, main_title="s700_594p50pinFalse_data",
#              s=[700, 594], p=50, pin=False) # Error
# show_images2(data=origin_data, main_title="s700_594p0pinFalse_data",
#              s=[700, 594], p=0, pin=False) # Error
# show_images2(data=origin_data, main_title="s700_594pn50pinFalse_data",
#              s=[700, 594], p=-50, pin=False) # Error
# show_images2(data=origin_data, main_title="s700_594pn100pinFalse_data",
#              s=[700, 594], p=-100, pin=False) # Error
登录后复制

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

image description

以上就是Pytorch中的Randomcrop(3)的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
相关标签:
来源:dev.to网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号