在做图片分类的kaggle比赛的时候,需要将图片转换为Pytorch的Tensor。为了以后再查看,记录一下Pytorch的Tensor与各种图像格式的相互转化详解。
这里,使用python自带图像处理库
PIL
,给出图片地址,将图片读取出来。然后使用torchvision中自带的transforms
函数,将读取出来的图片转换为tensor。
下面代码导入了相应的包,并初始化了两个对象:一个是加载图片为tensor的对象,一个是tensor转换为PIL图片的对象。
import torch
from PIL import Image
from torchvision import transforms
# 下面两行是防止内核挂掉加的(jupyter中使用,其他地方删除即可)
import os
os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE"
# loader使用torchvision中自带的transforms函数
loader = transforms.Compose([transforms.ToTensor()]) # 加载图片为tensor
unloader = transforms.ToPILImage() # tensor转换为PIL图片
下面的所有代码