如何在pytorch中规范化1到1之间的PIL图像变换。合成?

2024-05-05 03:19:55 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我一直在试图找到一种方法来规范化一些PIL图像像素值介于-1和1之间。我查了一下文件,没有找到解决办法。文档中唯一的规范化是transforms.Normalize,它用mean和std进行规范化,所以我一直在研究如何做到这一点。这是我的密码:

train_transform = transforms.Compose([
        transforms.RandomHorizontalFlip(p=0.5),
        transforms.Resize(40),
        transforms.RandomCrop(32),
        # Normalize(-1, 1)  # Something like that
])

如何规范化两个数字之间的张量?例如:

[[1,2,3]
[3,2,1]]

介于-1和1之间

[[-1, 0, 1],
[1, 0, -1]]

Tags: 文件方法文档图像密码piltransformtrain
1条回答
网友
1楼 · 发布于 2024-05-05 03:19:55

尝试:

transform = transforms.Compose([
    transforms.RandomHorizontalFlip(p=0.5)
    transforms.Resize(40),
    transforms.RandomCrop(32),
    transforms.ToTensor(),
    transforms.Normalize(mean=(0.5, 0.5, 0.5), std=(0.5, 0.5, 0.5))])
  • ToSensor将图像像素从[0255]缩放到[0,1]值

  • Normalize将首先减去平均值,因此[0,1]值将转换为范围[-0.5,0.5],然后将与std相除,[-0.5,0.5]将达到[-1,1]范围

相关问题 更多 >