搜索
首页后端开发Python教程pytorch中的随机克罗普(1)

给我买咖啡☕

*备忘录:

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

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

*备忘录:

    >初始化的第一个参数是大小(必需类型:int或tuple/list/list(int)或size()): *备忘录:
    • 是[高度,宽度]。
    • 必须是1< = x。
    • 元组/列表必须是具有1或2个元素的1D。
    • 单个值(int或tuple/list(int))是指[size,size]。
    • >初始化的第二个参数是填充(可选默认:非类型:int或tuple/list(int)): *备忘录:
    是[左上,右,底部],可以从[左右,底部]或[左右右下]转换。一个元组/列表必须是1D,具有1、2或4个元素。
  • 单个值(int或tuple/list(int))是指[填充,填充,填充,填充]。
    • > double值(元组/列表(int))表示[填充[0],填充[1],填充[0],填充[1]。
    • 初始化的第三个参数是pad_if_needed(可选默认:false-type:bool):
    • 如果是错误的,并且大小小于原始图像或填充图像的填充图像,则出现错误。
    • >
    • 如果它的真实且大小小于原始图像或填充图像的填充图像,则没有错误,则该图像被随机填充以变为尺寸。
  • 初始化的第四个参数是填充(可选默认:0型:int,float或tuple/tuple/list(int或float)): *备忘录:
    • >它可以更改图像的背景。 *当图像被正面填充时,可以看到背景。
    • 元组/列表必须是具有1或3个元素的1D。
  • 初始化的第五个参数是padding_mode(可选默认:'constant'-type:str)。 *可以将其设置为 *'常数','edge',“反射”或“对称”。
  • >
      第一个参数是img(必需类型:pil图像或张量(int)): *备忘录:
    • 张量必须为2D或3D。
    • 不使用img =。
  • 建议根据V1或V2使用V2?我应该使用哪一个?
from torchvision.datasets import OxfordIIITPet
from torchvision.transforms.v2 import RandomCrop

randomcrop = RandomCrop(size=100)
randomcrop = RandomCrop(size=100,
                        padding=None,
                        pad_if_needed=False, 
                        fill=0,
                        padding_mode='constant')
randomcrop
# RandomCrop(size=(100, 100),
#            pad_if_needed=False,
#            fill=0,
#            padding_mode=constant)

randomcrop.size
# (100, 100)

print(randomcrop.padding)
# None

randomcrop.pad_if_needed
# False

randomcrop.fill
# 0

randomcrop.padding_mode
# 'constant'

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

s300_data = OxfordIIITPet( # `s` is size.
    root="data",
    transform=RandomCrop(size=300)
    # transform=RandomCrop(size=[300, 300])
)

s200_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=200)
)

s100_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=100)
)

s50_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=50)
)

s10_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=10)
)

s1_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=1)
)

s200_300_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[200, 300])
)

s300_200_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[300, 200])
)

s300p100_data = OxfordIIITPet( # `p` is padding.
    root="data",
    transform=RandomCrop(size=300, padding=100)
    # transform=RandomCrop(size=300, padding=[100, 100])
    # transform=RandomCrop(size=300, padding=[100, 100, 100, 100])
)

s300p200_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=200)
)

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

s300p100_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=100)
)

s600_594p100_50origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 594], padding=[100, 50])
)

s300p100_50_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=[100, 50])
)

s650_494p25_50_75_100origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[650, 494], padding=[25, 50, 75, 100])
)

s300p25_50_75_100_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=[25, 50, 75, 100])
)

s300_194pn100origin_data = OxfordIIITPet( # `n` is negative.
    root="data",
    transform=RandomCrop(size=[300, 194], padding=-100)
)

s150pn100_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=150, padding=-100)
)

s300_294pn50n100origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[300, 294], padding=[-50, -100])
)

s150pn50n100_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=150, padding=[-50, -100])
)

s350_294pn25n50n75n100origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[350, 294], padding=[-25, -50, -75, -100])
)

s150pn25n50n75n100_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=150, padding=[-25, -50, -75, -100])
)

s600_444p25_50origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 444], padding=[25, 50])
)

s200p25_50_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=200, padding=[25, 50])
)

s400_344pn25n50origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[400, 344], padding=[-25, -50])
)

s200pn25n50_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=200, padding=[-25, -50])
)

s400_444p25n50origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[400, 444], padding=[25, -50])
)

s200p25n50_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=200, padding=[25, -50])
)

s600_344pn25_50origin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[600, 344], padding=[-25, 50])
)

s200pn25_50_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=200, padding=[-25, 50])
)

s700_594p100fgrayorigin_data = OxfordIIITPet( # `f` is fill.
    root="data",
    transform=RandomCrop(size=[700, 594], padding=100, fill=150)
    # transform=RandomCrop(size=[700, 594], padding=100, fill=[150])
)

s300p100fgray_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=100, fill=150)
)

s700_594p100fpurpleorigin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=100, fill=[160, 32, 240])
)

s300p100fpurple_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=100, fill=[160, 32, 240])
)

s700_594p100pmconstorigin_data = OxfordIIITPet( # `pm` is padding_mode.
    root="data",                                # `const` is constant.
    transform=RandomCrop(size=[700, 594], padding=100, padding_mode='constant')
)

s300p100pmconst_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=100, padding_mode='constant')
)

s700_594p100pmedgeorigin_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=[700, 594], padding=100, padding_mode='edge')
)

s300p100pmedge_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=100, padding_mode='edge')
)

s700_594p100pmrefleorigin_data = OxfordIIITPet( # `refle` is reflect.
    root="data",
    transform=RandomCrop(size=[700, 594], padding=100, padding_mode='reflect')
)

s300p100pmrefle_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=100, padding_mode='reflect')
)

s700_594p100pmsymmeorigin_data = OxfordIIITPet( # `symme` is symmetric.
    root="data",
    transform=RandomCrop(size=[700, 594], padding=100, 
                         padding_mode='symmetric')
)

s300p100pmsymme_data = OxfordIIITPet(
    root="data",
    transform=RandomCrop(size=300, padding=100, padding_mode='symmetric')
)

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 in range(1, 6):
        plt.subplot(1, 5, i)
        plt.imshow(X=data[0][0])
    plt.tight_layout()
    plt.show()

plt.figure(figsize=(7, 9))
plt.title(label="s500_394origin_data", fontsize=14)
plt.imshow(X=origin_data[0][0])
show_images1(data=origin_data, main_title="s500_394origin_data")
show_images1(data=s300_data, main_title="s300_data")
show_images1(data=s200_data, main_title="s200_data")
show_images1(data=s100_data, main_title="s100_data")
show_images1(data=s50_data, main_title="s50_data")
show_images1(data=s10_data, main_title="s10_data")
show_images1(data=s1_data, main_title="s1_data")
show_images1(data=s200_300_data, main_title="s200_300_data")
show_images1(data=s300_200_data, main_title="s300_200_data")
print()
show_images1(data=s700_594p100origin_data,
             main_title="s700_594p100origin_data")
show_images1(data=s300p100_data, main_title="s300p100_data")
print()
show_images1(data=s600_594p100_50origin_data,
             main_title="s600_594p100_50origin_data")
show_images1(data=s300p100_50_data, main_title="s300p100_50_data")
print()
show_images1(data=s650_494p25_50_75_100origin_data,
             main_title="s650_494p25_50_75_100origin_data")
show_images1(data=s300p25_50_75_100_data, 
             main_title="s300p25_50_75_100_data")
print()
show_images1(data=s300_194pn100origin_data,
             main_title="s300_194pn100origin_data")
show_images1(data=s150pn100_data, 
             main_title="s150pn100_data")
print()
show_images1(data=s300_294pn50n100origin_data,
             main_title="s300_294pn50n100origin_data")
show_images1(data=s150pn50n100_data, 
             main_title="s150pn50n100_data")
print()
show_images1(data=s350_294pn25n50n75n100origin_data,
             main_title="s350_294pn25n50n75n100origin_data")
show_images1(data=s150pn25n50n75n100_data, 
             main_title="s150pn25n50n75n100_data")
print()
show_images1(data=s600_444p25_50origin_data,
             main_title="s600_444p25_50origin_data")
show_images1(data=s200p25_50_data, 
             main_title="s200p25_50_data")
print()
show_images1(data=s400_344pn25n50origin_data,
             main_title="s400_344pn25n50origin_data")
show_images1(data=s200pn25n50_data, 
             main_title="s200pn25n50_data")
print()
show_images1(data=s400_444p25n50origin_data,
             main_title="s400_444p25n50origin_data")
show_images1(data=s200p25n50_data, 
             main_title="s200p25n50_data")
print()
show_images1(data=s600_344pn25_50origin_data,
             main_title="s600_344pn25_50origin_data")
show_images1(data=s200pn25_50_data, 
             main_title="s200pn25_50_data")
print()
show_images1(data=s700_594p100fgrayorigin_data,
             main_title="s700_594p100fgrayorigin_data")
show_images1(data=s300p100fgray_data, main_title="s300p100fgray_data")
print()
show_images1(data=s700_594p100fpurpleorigin_data,
             main_title="s700_594p100fpurpleorigin_data")
show_images1(data=s300p100fpurple_data, main_title="s300p100fpurple_data")
print()
show_images1(data=s700_594p100pmconstorigin_data,
             main_title="s700_594p100pmconstorigin_data")
show_images1(data=s300p100pmconst_data, main_title="s300p100pmconst_data")
print()
show_images1(data=s700_594p100pmedgeorigin_data,
             main_title="s700_594p100pmedgeorigin_data")
show_images1(data=s300p100pmedge_data, main_title="s300p100pmedge_data")
print()
show_images1(data=s700_594p100pmrefleorigin_data,
             main_title="s700_594p100pmrefleorigin_data")
show_images1(data=s300p100pmrefle_data, main_title="s300p100pmrefle_data")
print()
show_images1(data=s700_594p100pmsymmeorigin_data,
             main_title="s700_594p100pmsymmeorigin_data")
show_images1(data=s300p100pmsymme_data, main_title="s300p100pmsymme_data")

# ↓ ↓ ↓ ↓ ↓ ↓ 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))
    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()

plt.figure(figsize=(7, 9))
plt.title(label="s500_394origin_data", fontsize=14)
plt.imshow(X=origin_data[0][0])
show_images2(data=origin_data, main_title="s500_394origin_data")
show_images2(data=origin_data, main_title="s300_data", s=300)
show_images2(data=origin_data, main_title="s200_data", s=200)
show_images2(data=origin_data, main_title="s100_data", s=100)
show_images2(data=origin_data, main_title="s50_data", s=50)
show_images2(data=origin_data, main_title="s10_data", s=10)
show_images2(data=origin_data, main_title="s1_data", s=1)
show_images2(data=origin_data, main_title="s200_300_data", s=[200, 300])
show_images2(data=origin_data, main_title="s300_200_data", s=[300, 200])
print()
show_images2(data=origin_data, main_title="s700_594p100origin_data",
             s=[700, 594], p=100)
show_images2(data=origin_data, main_title="s300p100_data", s=300, p=100)
print()
show_images2(data=origin_data, main_title="s600_594p100_50origin_data",
             s=[600, 594], p=[100, 50])
show_images2(data=origin_data, main_title="s300p100_50_data", s=300,
             p=[100, 50])
print()
show_images2(data=origin_data, main_title="s650_494p25_50_75_100origin_data",
             s=[650, 494], p=[25, 50, 75, 100])
show_images2(data=origin_data, main_title="s300p25_50_75_100_data", s=300, 
             p=[25, 50, 75, 100])
print()
show_images2(data=origin_data, main_title="s300_194pn100origin_data",
             s=[300, 194], p=-100)
show_images2(data=origin_data, main_title="s150pn100_data", s=150, p=-100)
print()
show_images2(data=origin_data, main_title="s300_294pn50n100origin_data",
             s=[300, 294], p=[-50, -100])
show_images2(data=origin_data, main_title="s150pn50n100_data", s=150,
             p=[-50, -100])
print()
show_images2(data=origin_data, main_title="s350_294pn25n50n75n100origin_data",
             s=[350, 294], p=[-25, -50, -75, -100])
show_images2(data=origin_data, main_title="s150pn25n50n75n100_data", s=150,
             p=[-25, -50, -75, -100])
print()
show_images2(data=origin_data, main_title="s600_444p25_50origin_data",
             s=[600, 444], p=[25, 50])
show_images2(data=origin_data, main_title="s200p25_50_data", s=200,
             p=[25, 50])
print()
show_images2(data=origin_data, main_title="s400_344pn25n50origin_data",
             s=[400, 344], p=[-25, -50])
show_images2(data=origin_data, main_title="s200pn25n50_data", s=200,
             p=[-25, -50])
print()
show_images2(data=origin_data, main_title="s400_444p25n50origin_data",
             s=[400, 444], p=[25, -50])
show_images2(data=origin_data, main_title="s200p25n50_data", s=200,
             p=[25, -50])
print()
show_images2(data=origin_data, main_title="s600_344pn25_50origin_data",
             s=[600, 344], p=[-25, 50])
show_images2(data=origin_data, main_title="s200pn25_50_data", s=200,
             p=[-25, 50])
print()
show_images2(data=origin_data, main_title="s700_594p100fgrayorigin_data", 
             s=[700, 594], p=100, f=150)
show_images2(data=origin_data, main_title="s300p100fgray_data", s=300,
             p=100, f=150)
print()
show_images2(data=origin_data, main_title="s700_594p100fpurpleorigin_data",
             s=[700, 594], p=100, f=[160, 32, 240])
show_images2(data=origin_data, main_title="s300p100fpurple_data", s=300,
             p=100, f=[160, 32, 240])
print()
show_images2(data=origin_data, main_title="s700_594p100pmconstorigin_data",
             s=[700, 594], p=100, pm='constant')
show_images2(data=origin_data, main_title="s300p100pmconst_data", s=300, 
             p=100, pm='constant')
print()
show_images2(data=origin_data, main_title="s700_594p100pmedgeorigin_data",
             s=[700, 594], p=100, pm='edge')
show_images2(data=origin_data, main_title="s300p100pmedge_data", s=300, 
             p=100, pm='edge')
print()
show_images2(data=origin_data, main_title="s700_594p100pmrefleorigin_data",
             s=[700, 594], p=100, pm='reflect')
show_images2(data=origin_data, main_title="s300p100pmrefle_data", s=300, 
             p=100, pm='reflect')
print()
show_images2(data=origin_data, main_title="s700_594p100pmsymmeorigin_data",
             s=[700, 594], p=100, pm='symmetric')
show_images2(data=origin_data, main_title="s300p100pmsymme_data", s=300, 
             p=100, pm='symmetric')

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


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中的随机克罗普(1)的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
您如何切成python列表?您如何切成python列表?May 02, 2025 am 12:14 AM

SlicingaPythonlistisdoneusingthesyntaxlist[start:stop:step].Here'showitworks:1)Startistheindexofthefirstelementtoinclude.2)Stopistheindexofthefirstelementtoexclude.3)Stepistheincrementbetweenelements.It'susefulforextractingportionsoflistsandcanuseneg

在Numpy阵列上可以执行哪些常见操作?在Numpy阵列上可以执行哪些常见操作?May 02, 2025 am 12:09 AM

numpyallowsforvariousoperationsonArrays:1)basicarithmeticlikeaddition,减法,乘法和division; 2)evationAperationssuchasmatrixmultiplication; 3)element-wiseOperations wiseOperationswithOutexpliitloops; 4)

Python的数据分析中如何使用阵列?Python的数据分析中如何使用阵列?May 02, 2025 am 12:09 AM

Arresinpython,尤其是Throughnumpyandpandas,weessentialFordataAnalysis,offeringSpeedAndeffied.1)NumpyArseNable efflaysenable efficefliceHandlingAtaSetSetSetSetSetSetSetSetSetSetSetsetSetSetSetSetsopplexoperationslikemovingaverages.2)

列表的内存足迹与python数组的内存足迹相比如何?列表的内存足迹与python数组的内存足迹相比如何?May 02, 2025 am 12:08 AM

列表sandnumpyArraysInpyThonHavedIfferentMemoryfootprints:listSaremoreFlexibleButlessMemory-效率,而alenumpyArraySareSareOptimizedFornumericalData.1)listsStorReereReereReereReereFerenceStoObjects,withoverHeadeBheadaroundAroundaroundaround64bytaround64bitson64-bitsysysysyssyssyssyssyssyssysssys2)

部署可执行的Python脚本时,如何处理特定环境的配置?部署可执行的Python脚本时,如何处理特定环境的配置?May 02, 2025 am 12:07 AM

toensurepythonscriptsbehavecorrectlyacrycrossdevelvermations,登台和生产,USETHESTERTATE:1)Environment varriablesforsimplesettings,2)configurationFilesForefilesForcomPlexSetups,3)dynamiCofforAdaptapity.eachmethodofferSuniquebeneiquebeneiquebeneniqueBenefitsaniqueBenefitsandrefitsandRequiresandRequireSandRequireSca

您如何切成python阵列?您如何切成python阵列?May 01, 2025 am 12:18 AM

Python列表切片的基本语法是list[start:stop:step]。1.start是包含的第一个元素索引,2.stop是排除的第一个元素索引,3.step决定元素之间的步长。切片不仅用于提取数据,还可以修改和反转列表。

在什么情况下,列表的表现比数组表现更好?在什么情况下,列表的表现比数组表现更好?May 01, 2025 am 12:06 AM

ListSoutPerformarRaysin:1)DynamicsizicsizingandFrequentInsertions/删除,2)储存的二聚体和3)MemoryFeliceFiceForceforseforsparsedata,butmayhaveslightperformancecostsinclentoperations。

如何将Python数组转换为Python列表?如何将Python数组转换为Python列表?May 01, 2025 am 12:05 AM

toConvertapythonarraytoalist,usEthelist()constructororageneratorexpression.1)intimpthearraymoduleandcreateanArray.2)USELIST(ARR)或[XFORXINARR] to ConconverTittoalist,请考虑performorefformanceandmemoryfformanceandmemoryfformienceforlargedAtasetset。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器