transform是torchvision中的一个关于常用的图像预处理的python文件。
如何将一张图片转换成tensor
from torchvision import transforms
from PIL import Image
img_path = "hymenoptera_data/train/ants/0013035.jpg"
img = Image.open(img_path)
tensor_trans = transforms.ToTensor()
img2tensor = tensor_trans(img)
print(img2tensor)
首先调用了tansforms文件里的ToTensor类,然后调用了里面的call方法,call方法是类的一种内置方法,它可以使类生成的对象被当成是函数一样使用,实际上就是在执行call方法。
为什么要使用tensor呢?
因为在构建神经网络后,进行正向反向传播的时候,tensor里面的很多参数是可以直接被使用的,也是我们想要的参数类型,所以归根结底就是为了方便后面网络的训练和使用。
将图片转换成tensor后再使用add_image函数生成事件文件
from torchvision import transforms
from PIL import Image
from torch.utils.tensorboard import SummaryWriter
img_path = "hymenoptera_data/train/ants/0013035.jpg"
img = Image.open(img_path)
tensor_trans = transforms.ToTensor()
img2tensor = tensor_trans(img)
writer = SummaryWriter("logs")
writer.add_image("Tensor_img", img2tensor, 1)
writer.close()