PyTorch深度学习框架(四)

目录

1. Transforms的框架

读取图片的两种类型:

transforms读取图像: 


Transforms的使用

1. Transforms的框架

读取图片的两种类型:

(1)PIL型

from PIL import Image

(2)numpy型

import cv2

transforms读取图像: 

from torchvision import transforms
from torch.utils.tensorboard import SummaryWriter
from PIL import Image
#python的用法-》tensor数据集
# 通过 transforms.ToTensor去看两个问题
# 1.transforms如何使用
# 2.为什么需要tensor数据类型

# 绝对路径D:\pycharm\pycharmproject\pythonProject\dataset\train\ants_image\0013035.jpg
# 相对路径dataset/train/ants_image/0013035.jpg
img_path="dataset/train/ants_image/0013035.jpg"
img=Image.open(img_path)
writer=SummaryWriter("logs")
# 1.transforms如何使用
#创建具体的工具:transforms.ToTensor()-->实用工具,输出:result=tool(input)
tensor_trans=transforms.ToTensor() #实例化对象
 #直接调用对象的__call__方法,把实例好的对象当作方法/函数,直接加上()就可以调用
tensor_img=tensor_trans(img)
# print(tensor_img)
writer.add_image("Tensor_img",tensor_img)
writer.close()

运行结果:

2.常见的Transforms

  

输入PILImage.open()
 输出tensorToTensor()
作用narrayscv.imread()

python中__call__的用法

class Person:
    def __call__(self, name):
        print("__call__"+"hello"+name)
    def hell(self,name):
        print("hello"+name)
person=Person()
person("zhangsan")
person.hell("lisi")

运行结果:

ToTensor的使用

from PIL import Image
from torch.utils.tensorboard import SummaryWriter
from torchvision import transforms
writer=SummaryWriter("logs")
img=Image.open("images/text_img.jpg")
print(img)
#ToTensor的使用
trans_totensor=transforms.ToTensor()
img_tensor=trans_totensor(img)
writer.add_image("ToTensor",img_tensor)

writer.close()

 

归一化Normalize

Normalize 归一化
output[channel] = (input[channel] - mean[channel]) / std[channel]

from PIL import Image
from torch.utils.tensorboard import SummaryWriter
from torchvision import transforms
writer=SummaryWriter("logs")
img=Image.open("images/text_img.jpg")
print(img)
#ToTensor的使用
trans_totensor=transforms.ToTensor()
img_tensor=trans_totensor(img)
writer.add_image("ToTensor",img_tensor)


#Normalize 归一化
# output[channel] = (input[channel] - mean[channel]) / std[channel]
#(input-0.5)/0.5=2*input-1
trans_norm=transforms.Normalize([0.5,0.5,0.5],[0.5,0.5,0.5])
img_norm=trans_norm(img_tensor)
print(img_norm[0][0][0])
writer.add_image("Normalize",img_norm)
writer.close()

运行结果: 

 

通过改变global_step的值来实现图片的滚动切换 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值