numpy数组
查看形状
numpy
print(f"before transpose img_f shape is {img_f.shape}")
一般PIL图像都是HWC,一般张量都是CHW,所以用 image = img.permute(2, 0, 1)来调换通道
PIL
print(Image.open(image_path))就可以查看一个图像的基本信息
<PIL.Image.Image image mode=RGB size=320x320 at 0x7FA27DF10910>
张量
张量要求输入是四维,所以如果只有1张图片,要修改
张量与PIL之间转换
1 | import torch |
输入模型的张量格式通常是一个四维张量,其形状为
[batch_size, channels, height, width]
,其中:
batch_size
表示每个批次中样本的数量。channels
表示图片的通道数,对于彩色图片通常为3(R、G、B),对于灰度图片通常为1。height
表示图片的高度。width
表示图片的宽度。
这种格式通常称为 CHW 格式,因为通道在前,高度在中间,宽度在最后。
图像值的变换
为什么一会float / 255,一会有int * 255