Pytorch学习记录(三)图像变换
图像变换
transforms
- 导入transforms
from torchvision import transforms
- 基础用法
# 注:PIL的形状为HWC,通道为RGB
# 若采用cv2.imread(),形状也为HWC,但通道为BGR
img = Image.open("test.jpg")
img_tensor = transforms.ToTensor()
img_resize = transforms.Resize(new_height, new_width)
# 注:返回的Tensor的形状为CHW
img_tensor = img_tensor(img)
- 进阶用法
# 使用Compose组合多个操作(本文建议先转为Tensor,再进行变换。亦可先传入PIL,最后转为Tensor)
transform = transforms.Compose([
transforms.ToTensor(),
transforms.Resize(new_height, new_width),
transforms.CenterCrop();
...
])
补充
虽然torchvision提供了丰富的图像变换函数,但是速度不是最佳的。