python 在将PIL图像转换为Tensor时,为什么像素会发生变化?

jv4diomz  于 2022-11-21  发布在  Python
关注(0)|答案(2)|浏览(209)
transform = transforms.Compose([transforms.ToPILImage(), transforms.ToTensor()])

应用转换之前

套用转换后

Q.1为什么像素值会改变?
Q.2如何纠正这一点?

0mkxixxg

0mkxixxg1#

Torchvision的transforms.ToTensor()将你的输入图像标准化,即把它放在范围[0,1]内,因为这是一个非常常见的预处理步骤。
Q2:使用torch.tensor(input_image)将图像转换为Tensor。

8aqjt8rx

8aqjt8rx2#

我能够通过在转换输入数据之前对其进行规范化来解决这个问题。
问题是ToPILImage()丢弃了所有大于1的值,因此亮像素变暗。

相关问题