Python 实现Image和Ndarray互相转换


Posted in Python onFebruary 19, 2020

如下所示:

import numpy as np
from PIL import Image

img = Image.open(filepath)
img_convert_ndarray = np.array(img)
ndarray_convert_img= Image.fromarray(img_convert_ndarray )


# np.array(object) 这个函数很强大啊,看源码里面给的注释
# object : array_like
#      An array, any object exposing the array interface, an object whose
#      __array__ method returns an array, or any (nested) sequence.

而keras里面也有api来做这样的转换

from keras.preprocessing.image import img_to_array, array_to_img

然而查看源码的时候,其实会发现这两个函数仍然还是用同样的方式实现

img_to_array() 是使用np.asarray(),而array_to_img是使用Image.fromarray()

多说一句,np.array()是创建一个ndarray,而np.asarray(object)是将一个object转换成ndarray,但是

np.asarray(a):
  return np.array(a,copy=False)

# 而np.array()里copy默认为True,那这有什么区别呢?
import numpy as np

  a = np.array([1, 2])
  b = np.asarray(a)
  c = np.asarray(a)
  print(type(b), type(c), b is c) # True
  e = np.array(a)
  f = np.array(a)
  print(type(e), type(f), e is f) # False

  a = [1, 2]
  b = np.asarray(a)
  c = np.asarray(a)
  print(type(b), type(c), b is c) # False
  e = np.array(a)
  f = np.array(a)
  print(type(e), type(f), e is f) # False

以上这篇Python 实现Image和Ndarray互相转换就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python之yield表达式学习
Sep 02 Python
详解Python的单元测试
Apr 28 Python
python实现从字典中删除元素的方法
May 04 Python
浅谈Python 集合(set)类型的操作——并交差
Jun 30 Python
Python管理Windows服务小脚本
Mar 12 Python
python读文件保存到字典,修改字典并写入新文件的实例
Apr 23 Python
python实现银行管理系统
Oct 25 Python
tensorflow estimator 使用hook实现finetune方式
Jan 21 Python
python实现图像拼接功能
Mar 23 Python
pytorch 中的重要模块化接口nn.Module的使用
Apr 02 Python
python 爬虫如何实现百度翻译
Nov 16 Python
python如何获取网络数据
Apr 11 Python
python3+opencv生成不规则黑白mask实例
Feb 19 #Python
使用celery和Django处理异步任务的流程分析
Feb 19 #Python
Python Numpy,mask图像的生成详解
Feb 19 #Python
浅谈图像处理中掩膜(mask)的意义
Feb 19 #Python
Python中logging日志库实例详解
Feb 19 #Python
在Python中通过threshold创建mask方式
Feb 19 #Python
python实现简单颜色识别程序
Feb 19 #Python
You might like
PHP检查URL包含特定字符串实例方法
2019/02/11 PHP
实例讲解PHP表单处理
2019/02/15 PHP
javascript 按回车键相应按钮提交事件
2009/11/02 Javascript
javascript onmouseout 解决办法
2010/07/17 Javascript
JS获取页面input控件中所有text控件并追加样式属性
2013/02/25 Javascript
jquery阻止冒泡事件使用模拟事件
2013/09/06 Javascript
JSuggest自动匹配下拉框使用方法(示例代码)
2013/12/27 Javascript
设置jsf的选择框h:selectOneMenu为不可编辑状态的方法
2014/01/07 Javascript
JavaScript实现从数组中选出和等于固定值的n个数
2014/09/03 Javascript
JavaScript SHA512&SHA256加密算法详解
2015/08/11 Javascript
简单谈谈json跨域
2016/03/13 Javascript
JavaScript实现类似拉勾网的鼠标移入移出效果
2016/10/27 Javascript
Async Validator 异步验证使用说明
2017/07/03 Javascript
详解Vuex中mapState的具体用法
2017/09/28 Javascript
React中常见的动画实现的几种方式
2018/01/10 Javascript
微信 jssdk 签名错误invalid signature的解决方法
2019/01/14 Javascript
vue实现微信获取用户信息的方法
2019/03/21 Javascript
详解VUE调用本地json的使用方法
2019/05/15 Javascript
不要用强制方法杀掉python线程
2017/02/26 Python
pycharm下查看python的变量类型和变量内容的方法
2018/06/26 Python
Python中关键字global和nonlocal的区别详解
2018/09/03 Python
idea创建springMVC框架和配置小文件的教程图解
2018/09/18 Python
对python 树状嵌套结构的实现思路详解
2019/08/09 Python
Python Django 封装分页成通用的模块详解
2019/08/21 Python
Django中的cookie和session
2019/08/27 Python
Numpy的简单用法小结
2019/08/28 Python
使用python快速实现不同机器间文件夹共享方式
2019/12/22 Python
python实现梯度法 python最速下降法
2020/03/24 Python
解决django的template中如果无法引用MEDIA_URL问题
2020/04/07 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
2020/06/24 Python
python爬取天气数据的实例详解
2020/11/20 Python
英国领先的办公用品供应商:Viking
2016/08/01 全球购物
荷兰超市:DEEN
2018/03/14 全球购物
英国男女豪华配饰和礼品网站:Black.co.uk
2020/02/28 全球购物
服务承诺书范文
2014/05/19 职场文书
党员干部廉洁承诺书
2014/05/28 职场文书