Pytorch 学习之Transforms
文章目录
- Transforms 的使用
- 归一化
- Resize
- 随机裁剪
Transforms 的使用
from torchvision import transforms
from PIL import Image
from torch.utils.tensorboard import SummaryWriter
writer = SummaryWriter("logs")image_path = "data/train/ants_image/0013035.jpg"
img =Image.open(image_path)
print(img)
# 将图片转换为 tensor 类型
tensor_trans=transforms.ToTensor()
tensor_img =tensor_trans(img)writer.add_image("test",tensor_img)writer.close()
print(tensor_img)


归一化

from torchvision import transforms
from PIL import Image
from torch.utils.tensorboard import SummaryWriter
writer = SummaryWriter("logs")image_path = "data/train/ants_image/0013035.jpg"
img =Image.open(image_path)
print(img)
# 将图片转换为 tensor 类型
tensor_trans=transforms.ToTensor()
tensor_img =tensor_trans(img)
writer.add_image("test",tensor_img)
writer.close()#Normalize 归一化
print(tensor_img[0][0][0])
trans_norm=transforms.Normalize([0.5,0.5,0.5],[0.5,0.5,0.5])
img_norm=trans_norm(tensor_img)
print(img_norm[0][0][0])
writer.add_image("Normalize",img_norm)
writer.close()

Resize
from torchvision import transforms
from PIL import Image
from torch.utils.tensorboard import SummaryWriter
writer = SummaryWriter("logs")image_path = "data/train/ants_image/0013035.jpg"
img =Image.open(image_path)
print(img)
# 将图片转换为 tensor 类型
tensor_trans=transforms.ToTensor()
tensor_img =tensor_trans(img)
writer.add_image("test",tensor_img)
writer.close()#Normalize 归一化
print(tensor_img[0][0][0])
trans_norm=transforms.Normalize([0.5,0.5,0.5],[0.5,0.5,0.5])
img_norm=trans_norm(tensor_img)
print(img_norm[0][0][0])
writer.add_image("Normalize",img_norm)
writer.close()#Resize
print(img.size)
trans_size=transforms.Resize((512,512))
img_resize=trans_size(img)
#img_resize PIL ->ToTensor ->img tensor
img_resize=tensor_trans(img_resize)
print(img_resize)
writer.add_image("resize",img_resize,0)
writer.close()trans_size_2 =transforms.Resize(512)
trans_compose =transforms.Compose([trans_size_2,tensor_trans])
img_resize_2=trans_compose(img)
writer.add_image("Resize",img_resize_2,0)
writer.close()

随机裁剪
trans_random =transforms.RandomCrop(512)
trans_compose_2 = transforms.Compose([trans_random,tensor_trans])
for i in range(10):img_crop=trans_compose_2(img)writer.add_image("RandomCrop",img_crop,i)
writer.close()
