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实现linux服务器批量修改密码并生成execl
Apr 22 Python
跟老齐学Python之关于循环的小伎俩
Oct 02 Python
Python利用正则表达式匹配并截取指定子串及去重的方法
Jul 30 Python
Python实现调度算法代码详解
Dec 01 Python
Python3的介绍、安装和命令行的认识(推荐)
Oct 20 Python
Python实现正则表达式匹配任意的邮箱方法
Dec 20 Python
Python面向对象程序设计之私有属性及私有方法示例
Apr 08 Python
python下载库的步骤方法
Oct 12 Python
pycharm 2018 激活码及破解补丁激活方式
Sep 21 Python
基于matplotlib中ion()和ioff()的使用详解
Jun 16 Python
Python实现随机爬山算法
Jan 29 Python
关于python3 opencv 图像二值化的问题(cv2.adaptiveThreshold函数)
Apr 04 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简单smarty入门程序实例
2015/06/11 PHP
php抽象方法和抽象类实例分析
2016/12/07 PHP
关于laravel 日志写入失败问题汇总
2019/10/17 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
Javascript 复制数组实现代码
2009/11/26 Javascript
Jquery实战_读书笔记2 选择器
2010/01/22 Javascript
javascript中解析四则运算表达式的算法和示例
2014/08/11 Javascript
JavaScript中使用typeof运算符需要注意的几个坑
2014/11/08 Javascript
基于jQuery实现的文字按钮表单特效整理
2014/12/07 Javascript
微信JS接口汇总及使用详解
2015/01/09 Javascript
Jquery判断radio、selelct、checkbox是否选中及获取选中值方法总结
2015/04/15 Javascript
深入浅析JS是按值传递还是按引用传递(推荐)
2016/09/18 Javascript
JavaScript代码判断输入的字符串是否含有特殊字符和表情代码实例
2017/08/17 Javascript
Angular实现点击按钮后在上方显示输入内容的方法
2017/12/27 Javascript
详解Angular2学习笔记之Html属性绑定
2018/01/03 Javascript
ES6与CommonJS中的模块处理的区别
2018/06/13 Javascript
Nodejs使用Mongodb存储与提供后端CRD服务详解
2018/09/04 NodeJs
深入Node TCP模块的理解
2019/03/13 Javascript
layui 解决form表单点击无反应的问题
2019/10/25 Javascript
js+canvas实现刮刮奖功能
2020/09/13 Javascript
[11:12]2018DOTA2国际邀请赛寻真——绿色长城OpTic
2018/08/10 DOTA
深入理解NumPy简明教程---数组2
2016/12/17 Python
python3实现ftp服务功能(服务端 For Linux)
2017/03/24 Python
Python编程对列表中字典元素进行排序的方法详解
2017/05/26 Python
VScode编写第一个Python程序HelloWorld步骤
2018/04/06 Python
python中map的基本用法示例
2018/09/10 Python
在python中pandas的series合并方法
2018/11/12 Python
一百行python代码将图片转成字符画
2021/02/19 Python
Django-xadmin后台导入json数据及后台显示信息图标和主题更改方式
2020/03/11 Python
Python爬虫爬取ts碎片视频+验证码登录功能
2021/02/22 Python
学校十一活动方案
2014/02/01 职场文书
小学趣味运动会加油稿
2014/09/25 职场文书
2015年全国“爱牙日”宣传活动总结
2015/03/23 职场文书
农村结婚典礼主持词
2015/06/29 职场文书
mybatis中注解与xml配置的对应关系和对比分析
2021/08/04 Java/Android
MySQL GTID复制的具体使用
2022/05/20 MySQL