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实现从字典中删除元素的方法
May 04 Python
用Python编写一个每天都在系统下新建一个文件夹的脚本
May 04 Python
python基于urllib实现按照百度音乐分类下载mp3的方法
May 25 Python
对python中list的拷贝与numpy的array的拷贝详解
Jan 29 Python
用Python画一个LinkinPark的logo代码实例
Sep 10 Python
tensorflow自定义激活函数实例
Feb 04 Python
PyQt5 界面显示无响应的实现
Mar 26 Python
Anconda环境下Vscode安装Python的方法详解
Mar 29 Python
pyMySQL SQL语句传参问题,单个参数或多个参数说明
Jun 06 Python
Python爬虫与反爬虫大战
Jul 30 Python
python 实现音频叠加的示例
Oct 29 Python
C++和python实现阿姆斯特朗数字查找实例代码
Dec 07 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类与对象中的private访问控制的疑问
2012/11/01 PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
2014/07/28 PHP
thinkphp浏览历史功能实现方法
2014/10/29 PHP
LAMP环境使用Composer安装Laravel的方法
2017/03/25 PHP
Nigma vs Liquid BO3 第二场2.13
2021/03/10 DOTA
为Extjs加加速(javascript加速)
2010/08/19 Javascript
jQuery插件开发的两种方法及$.fn.extend的详解
2014/01/16 Javascript
jQuery实现仿百度首页滑动伸缩展开的添加服务效果代码
2015/09/09 Javascript
javascript与jquery动态创建html元素示例
2016/07/25 Javascript
JAVA Web实时消息后台服务器推送技术---GoEasy
2016/11/04 Javascript
bootstrap时间控件daterangepicker使用方法及各种小bug修复
2017/10/25 Javascript
jQuery实现右侧抽屉式在线客服功能
2017/12/25 jQuery
vue实现tab切换外加样式切换方法
2018/03/16 Javascript
新版vue-cli模板下本地开发环境使用node服务器跨域的方法
2018/04/03 Javascript
基于React+Redux的SSR实现方法
2018/07/03 Javascript
关于vue表单提交防双/多击的例子
2019/10/31 Javascript
优化Vue中date format的性能详解
2020/01/13 Javascript
详解Django框架中用户的登录和退出的实现
2015/07/23 Python
python3解析库pyquery的深入讲解
2018/06/26 Python
Python 利用切片从列表中取出一部分使用的方法
2019/02/01 Python
python实现简单学生信息管理系统
2020/04/09 Python
Numpy 多维数据数组的实现
2020/06/18 Python
python读写数据读写csv文件(pandas用法)
2020/12/14 Python
python之openpyxl模块的安装和基本用法(excel管理)
2021/02/03 Python
css3实现背景模糊的三种方式(小结)
2020/05/15 HTML / CSS
data:image data url 文件转为Blob上传后端的方法
2019/07/16 HTML / CSS
请解释接口的显式实现有什么意义
2012/05/26 面试题
室内设计专业个人的自我评价
2013/10/19 职场文书
师范应届生教师求职信
2013/11/05 职场文书
2014年党员公开承诺书范文
2014/03/28 职场文书
关于环保的标语
2014/06/13 职场文书
应届大学生自荐书
2014/06/17 职场文书
2015年依法行政工作总结
2015/04/29 职场文书
学校2016年全国助残日活动总结
2016/04/01 职场文书
七年级之开学家长寄语35句
2019/09/05 职场文书
Ruby处理YAML和json数据
2022/04/18 Ruby