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中使用glob和rmtree删除目录子目录及所有文件的例子
Nov 21 Python
在Django中管理Users和Permissions以及Groups的方法
Jul 23 Python
python实现下载pop3邮件保存到本地
Jun 19 Python
python调用opencv实现猫脸检测功能
Jan 15 Python
python 二维数组90度旋转的方法
Jan 28 Python
python交互界面的退出方法
Feb 16 Python
Python3.5装饰器原理及应用实例详解
Apr 30 Python
Django框架实现分页显示内容的方法详解
May 10 Python
创建Django项目图文实例详解
Jun 06 Python
Python 项目转化为so文件实例
Dec 23 Python
python MultipartEncoder传输zip文件实例
Apr 07 Python
Pycharm配置autopep8实现流程解析
Nov 28 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截取字符串并保留完整xml标签的函数代码
2013/02/06 PHP
解析array splice的移除数组中指定键的值,返回一个新的数组
2013/07/02 PHP
PHP MYSQL实现登陆和模糊查询两大功能
2016/02/05 PHP
Zend Framework教程之Zend_Registry对象用法分析
2016/03/22 PHP
详解PHP编码转换函数应用技巧
2016/10/22 PHP
php面向对象基础详解【星际争霸游戏案例】
2020/01/23 PHP
前端轻量级MVC框架CanJS详解
2014/09/26 Javascript
谈谈JSON对象和字符串之间的相互转换JSON.stringify(obj)和JSON.parse(string)
2015/10/01 Javascript
jQuery实现对无序列表的排序功能(附demo源码下载)
2016/06/25 Javascript
javascript遍历json对象的key和任意js对象属性实例
2017/03/09 Javascript
Angular2学习教程之ng中变更检测问题详解
2017/05/28 Javascript
JS实现中文汉字按拼音排序的方法
2017/10/09 Javascript
JavaScript实现留言板案例
2020/03/17 Javascript
vue实现简易的双向数据绑定
2020/12/29 Vue.js
python通过pil将图片转换成黑白效果的方法
2015/03/16 Python
Django项目中用JS实现加载子页面并传值的方法
2018/05/28 Python
使用python画社交网络图实例代码
2019/07/10 Python
Python xlrd excel文件操作代码实例
2020/03/10 Python
TensorFlow实现批量归一化操作的示例
2020/04/22 Python
Pandas实现一列数据分隔为两列
2020/05/18 Python
tensorflow从ckpt和从.pb文件读取变量的值方式
2020/05/26 Python
基于HTML5 audio元素播放声音jQuery小插件
2011/05/11 HTML / CSS
NARS化妆品官方商店:美国彩妆品牌
2017/08/26 全球购物
什么是网络协议
2016/04/07 面试题
工作会议主持词
2014/03/17 职场文书
爱耳日活动总结
2014/04/30 职场文书
医师定期考核实施方案
2014/05/07 职场文书
好书伴我成长演讲稿
2014/05/14 职场文书
低碳生活的宣传标语
2014/06/23 职场文书
2014年教师工作总结
2014/11/10 职场文书
交通事故协议书范本
2014/11/18 职场文书
护士岗位竞聘书
2015/09/15 职场文书
实验心得体会范文
2016/01/25 职场文书
求职信如何撰写?
2019/05/22 职场文书
HR必备:销售经理聘用合同范本
2019/08/21 职场文书
解析mybatis-plus中的resultMap简单使用
2021/11/23 Java/Android