python、PyTorch图像读取与numpy转换实例


Posted in Python onJanuary 13, 2020

Tensor转为numpy

np.array(Tensor)

numpy转换为Tensor

torch.Tensor(numpy.darray)

PIL.Image.Image转换成numpy

np.array(PIL.Image.Image)

numpy 转换成PIL.Image.Image

Image.fromarray(numpy.ndarray)

首先需要保证numpy.ndarray 转换成np.uint8型

numpy.astype(np.uint8),像素值[0,255]。

同时灰度图像保证numpy.shape为(H,W),不能出现channels

这里需要np.squeeze()。彩色图象保证numpy.shape为(H,W,3)

之后Image.fromarray(numpy.ndarray)

PIL.Image.Image转换成Tensor

torchvision.transfrom

img=Image.open('00381fa010_940422.tif').convert('L')

import torchvision.transforms as transforms trans=transforms.Compose([transforms.ToTensor()])

a=trans(img)

Tensor转化成PIL.Image.Image

先转换成numpy,再转换成PIL.Image.Image

灰度图像

img=Image.open('00381fa010_940422.tif').convert('L')

import torchvision.transforms as transforms
trans=transforms.Compose([transforms.ToTensor()])

a=trans(img)
b=np.array(a) #b.shape (1,64,64)
maxi=b.max()
b=b*255./maxi
b=b.transpose(1,2,0).astype(np.uint8)
b=np.squeeze(b,axis=2)
xx=Image.fromarray(b)
xx

彩色图象

img2=Image.open('00381fa010_940422.tif').convert('RGB')
import torchvision.transforms as transforms
trans=transforms.Compose([transforms.ToTensor()])
a=trans(img2)
a=np.array(a)
maxi=a.max()
a=a/maxi*255
a=a.transpose(1,2,0).astype(np.uint8)
b=Image.fromarray(a)
b

python-opencv

import cv2
a=cv2.imread('00381fa010_940422.tif') #a.shape (64,64,3)
cv2.imwrite('asd.jpg',a)
Image.fromarray(a)
b=cv2.imread('00381fa010_940422.tif',0)#b.shape (64,64)
Image.fromarray(b)

cv2.imread()返回numpy.darray, 读取灰度图像之后shape为(64,64),RGB图像的shape为(64,64,3),可直接用Image.fromarray()转换成Image。

cv写图像时,灰度图像shape可以为(H,W)或(H,W,1)。彩色图像(H,W,3)

要从numpy.ndarray得到PIL.Image.Image,灰度图的shape必须为(H,W),彩色为(H,W,3)

对于Variable类型不能直接转换成numpy.ndarray,需要用.data转换

np.array(a.data)

以上这篇python、PyTorch图像读取与numpy转换实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现的解析crontab配置文件代码
Jun 30 Python
总结网络IO模型与select模型的Python实例讲解
Jun 27 Python
python 中的list和array的不同之处及转换问题
Mar 13 Python
Python读取Excel表格,并同时画折线图和柱状图的方法
Oct 14 Python
详解Python3中ceil()函数用法
Feb 19 Python
python中的列表与元组的使用
Aug 08 Python
Python爬虫:url中带字典列表参数的编码转换方法
Aug 21 Python
Python3 io文本及原始流I/O工具用法详解
Mar 23 Python
Windows环境下Python3.6.8 importError: DLLload failed:找不到指定的模块
Nov 01 Python
pandas数据分组groupby()和统计函数agg()的使用
Mar 04 Python
详解Python+OpenCV绘制灰度直方图
Mar 22 Python
如何利用python实现Simhash算法
Jun 28 Python
pytorch 彩色图像转灰度图像实例
Jan 13 #Python
Ranorex通过Python将报告发送到邮箱的方法
Jan 12 #Python
python opencv实现信用卡的数字识别
Jan 12 #Python
Python 实现递归法解决迷宫问题的示例代码
Jan 12 #Python
Python3.x+迅雷x 自动下载高分电影的实现方法
Jan 12 #Python
tensorflow的计算图总结
Jan 12 #Python
python利用JMeter测试Tornado的多线程
Jan 12 #Python
You might like
php数据库连接
2006/10/09 PHP
PHP 高手之路(三)
2006/10/09 PHP
php zend解密软件绿色版测试可用
2008/04/14 PHP
ajax php 实现写入数据库
2009/09/02 PHP
Laravel Memcached缓存驱动的配置与应用方法分析
2016/10/08 PHP
PHP基于GD2函数库实现验证码功能示例
2019/01/27 PHP
在IE上直接编辑网页内容的js代码(IE地址栏js)
2009/04/27 Javascript
Array.prototype 的泛型应用分析
2010/04/30 Javascript
神奇的7个jQuery 3D插件整理
2011/01/06 Javascript
基于jquery的高性能td和input切换并可修改内容实现代码
2011/01/09 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
对Web开发中前端框架与前端类库的一些思考
2015/03/27 Javascript
Node.js重新刷新session过期时间的方法
2016/02/04 Javascript
jQuery如何封装输入框插件
2016/08/19 Javascript
jQuery中 $ 符号的冲突问题及解决方案
2016/11/04 Javascript
关于AngularJs数据的本地存储详解
2017/01/20 Javascript
layer子层给父层页面元素赋值,以达到向父层页面传值的效果实例
2017/09/22 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
解决axios会发送两次请求,有个OPTIONS请求的问题
2018/10/25 Javascript
layui表格内容溢出的解决方法
2019/09/06 Javascript
详解Vue的ref特性的使用
2020/01/24 Javascript
Nuxt.js的路由跳转操作(页面跳转nuxt-link)
2020/11/06 Javascript
Js数组扁平化实现方法代码总汇
2020/11/11 Javascript
利用 JavaScript 实现并发控制的示例代码
2020/12/31 Javascript
python中去空格函数的用法
2014/08/21 Python
Google开源的Python格式化工具YAPF的安装和使用教程
2016/05/31 Python
python 多线程串行和并行的实例
2019/02/22 Python
python 公共方法汇总解析
2019/09/16 Python
Pandas对DataFrame单列/多列进行运算(map, apply, transform, agg)
2020/06/14 Python
详解css3自定义滚动条样式写法
2017/12/25 HTML / CSS
CSS3教程:新增加的结构伪类
2009/04/02 HTML / CSS
萌新的HTML5 入门指南
2020/11/06 HTML / CSS
土木工程应届生自荐信
2013/09/24 职场文书
管理部副部长岗位职责范文
2014/03/09 职场文书
学习党的群众路线对照检查材料
2014/09/29 职场文书
青年岗位能手事迹材料
2014/12/23 职场文书