将图片转化为张量,
from torchvision import transforms from PIL import Image img_path = "C:\\Users\\12398\\Desktop\\OIP-C.jpg" img = Image.open(img_path) tensor_trans = transforms.ToTensor() tensor_img = tensor_trans(img) print(tensor_img)
归一化操作,
from torch.utils.tensorboard import SummaryWriter from torchvision import transforms from PIL import Image img_path = "C:\\Users\\12398\\Desktop\\imageonline-co-gifimage.gif" img = Image.open(img_path) writer = SummaryWriter("logs") tensor_trans = transforms.ToTensor() tensor_img = tensor_trans(img) # 归一化操作 # Normalize trans_norm = transforms.Normalize([0.5, 0.5, 0.5], [0.5, 0.5, 0.5]) tensor_img_norm = trans_norm(tensor_img) writer.add_image('tensor_img', tensor_img) writer.add_image('norm_img', tensor_img_norm) writer.close()
裁剪
from torch.utils.tensorboard import SummaryWriter
from torchvision import transforms
from PIL import Image
img_path = "dataset/train/bees_image/21399619_3e61e5bb6f.jpg"
img = Image.open(img_path)# PIL类型的图片原始比例为 500×464
writer = SummaryWriter("logs")
#Tosensor
tensor_trans = transforms.ToTensor() # 创建 transforms.ToTensor类 的实例化对象
#Resize
print(img.size)
trans_resize = transforms.Resize((512, 512))
# PIL数据类型的 img -> resize -> PIL数据类型的 img_resize
img_resize = trans_resize(img)
# PIL 数据类型的 PIL -> totensor -> img_resize tensor
img_resize = tensor_trans(img_resize) # PIL类型的图片原始比例为 3×512×512,3通道
writer.add_image('Resize_img', img_resize)
writer.close()
随机裁剪RandomCrop(类似Resiz用法)
from torch.utils.tensorboard import SummaryWriter
from torchvision import transforms
from PIL import Image
import cv2
img_path = "dataset/train/bees_image/21399619_3e61e5bb6f.jpg"
img = Image.open(img_path)
print(img)
writer = SummaryWriter("logs")
tensor_trans = transforms.ToTensor()
img_tensor = tensor_trans(img)
writer.add_image("img_tensor",img_tensor)
trans_random = transforms.RandomCrop(312) # 随即裁剪成 312×312 的
#trans_random = transforms.RandomCrop((312,100)) 指定随即裁剪的宽和高
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)
print(img_crop.size())