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 06 Python
Python备份目录及目录下的全部内容的实现方法
Jun 12 Python
python安装mysql-python简明笔记(ubuntu环境)
Jun 25 Python
Python使用回溯法子集树模板解决爬楼梯问题示例
Sep 08 Python
Flask数据库迁移简单介绍
Oct 24 Python
对python csv模块配置分隔符和引用符详解
Dec 12 Python
使用python对文件中的单词进行提取的方法示例
Dec 21 Python
wxpython+pymysql实现用户登陆功能
Nov 19 Python
postman和python mock测试过程图解
Feb 22 Python
Python文件读写w+和r+区别解析
Mar 26 Python
python实现将两个文件夹合并至另一个文件夹(制作数据集)
Apr 03 Python
jupyter notebook 添加kernel permission denied的操作
Apr 21 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预定义常量
2006/12/25 PHP
php中的时间显示
2007/01/18 PHP
IIS6.0 开启Gzip方法及PHP Gzip函数分享
2014/06/08 PHP
php在数据库抽象层简单使用PDO的方法
2015/11/03 PHP
yii分页组件用法实例分析
2015/12/28 PHP
php版微信自动获取收货地址api用法示例
2016/09/22 PHP
php如何利用pecl安装mongodb扩展详解
2019/01/09 PHP
javaScript call 函数的用法说明
2010/04/09 Javascript
easyui-combobox 实现简单的自动补全功能示例
2016/11/08 Javascript
livereload工具实现前端可视化开发【推荐】
2016/12/23 Javascript
Bootstrap笔记之缩略图、警告框实例详解
2017/03/09 Javascript
JavaScript利用fetch实现异步请求的方法实例
2017/07/26 Javascript
vue组件父与子通信详解(一)
2017/11/07 Javascript
详解webpack+express多页站点开发
2017/12/22 Javascript
vue-router 手势滑动触发返回功能
2018/09/30 Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
2020/02/04 jQuery
vue+element-ui JYAdmin后台管理系统模板解析
2020/07/28 Javascript
Python with的用法
2014/08/22 Python
深入解析Python中的urllib2模块
2015/11/13 Python
python中list列表的高级函数
2016/05/17 Python
剖析Python的Twisted框架的核心特性
2016/05/25 Python
python类中super()和__init__()的区别
2016/10/18 Python
python实现C4.5决策树算法
2018/08/29 Python
selenium设置proxy、headers的方法(phantomjs、Chrome、Firefox)
2018/11/29 Python
python 格式化输出百分号的方法
2019/01/20 Python
深度辨析Python的eval()与exec()的方法
2019/03/26 Python
在python下使用tensorflow判断是否存在文件夹的实例
2019/06/10 Python
Python自定义一个异常类的方法
2019/06/27 Python
Python动态语言与鸭子类型详解
2019/07/01 Python
python随机模块random的22种函数(小结)
2020/05/15 Python
控制工程专业个人求职信
2013/09/25 职场文书
元旦晚会邀请函
2014/01/27 职场文书
2014保险公司内勤工作总结
2014/12/16 职场文书
十七岁的单车观后感
2015/06/12 职场文书
小学生教师节广播稿
2015/08/19 职场文书
Win11 引入 Windows 365 云操作系统,适应疫情期间混合办公模式:启动时直接登录、模
2022/04/06 数码科技