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通过线程实现定时器timer的方法
Mar 16 Python
python协程用法实例分析
Jun 04 Python
Python在图片中添加文字的两种方法
Apr 29 Python
详解django中自定义标签和过滤器
Jul 03 Python
python实现分页效果
Oct 25 Python
python队列queue模块详解
Apr 27 Python
Pandas DataFrame 取一行数据会得到Series的方法
Nov 10 Python
Django框架模板注入操作示例【变量传递到模板】
Dec 19 Python
django模板加载静态文件的方法步骤
Mar 01 Python
python str字符串转uuid实例
Mar 03 Python
使用python执行shell脚本 并动态传参 及subprocess的使用详解
Mar 06 Python
Python 处理日期时间的Arrow库使用
Aug 18 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 获取目录下的图片并随机显示的代码
2009/12/28 PHP
腾讯CMEM的PHP扩展编译安装方法
2015/09/25 PHP
PHP基于openssl实现的非对称加密操作示例
2019/01/11 PHP
Javascript学习笔记一 之 数据类型
2010/12/15 Javascript
时间戳转换为时间 年月日时间的JS函数
2013/08/19 Javascript
通过$(this)使用jQuery包装后的方法或属性
2014/05/18 Javascript
基于jQuery实现的文字按钮表单特效整理
2014/12/07 Javascript
Jquery实现顶部弹出框特效
2015/08/08 Javascript
深入探究AngularJS框架中Scope对象的超级教程
2016/01/04 Javascript
关于cookie的初识和运用(js和jq)
2016/04/07 Javascript
AngularJS 入门教程之事件处理器详解
2016/08/19 Javascript
微信小程序实战之登录页面制作(5)
2020/03/30 Javascript
想用好React的你必须要知道的一些事情
2017/07/24 Javascript
基于Vue实现图片在指定区域内移动的思路详解
2018/11/11 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
2019/02/01 Javascript
实例分析Array.from(arr)与[...arr]到底有何不同
2019/04/09 Javascript
JS+CSS+HTML实现“代码雨”类似黑客帝国文字下落效果
2020/03/17 Javascript
python进阶教程之函数参数的多种传递方法
2014/08/30 Python
python与php实现分割文件代码
2017/03/06 Python
Python编程实现的简单Web服务器示例
2017/06/22 Python
python导入csv文件出现SyntaxError问题分析
2017/12/15 Python
pycharm运行出现ImportError:No module named的解决方法
2018/10/13 Python
Python可视化mhd格式和raw格式的医学图像并保存的方法
2019/01/24 Python
python爬虫刷访问量 2019 7月
2019/08/01 Python
Android Q之气泡弹窗的实现示例
2020/06/23 Python
python 获取剪切板内容的两种方法
2020/11/28 Python
浅谈html5增强的页面元素
2016/06/14 HTML / CSS
实习评语
2013/12/16 职场文书
学习自我鉴定
2014/02/01 职场文书
2014庆六一活动方案
2014/03/02 职场文书
房地产销售助理岗位职责
2015/04/14 职场文书
中学推普周活动总结
2015/05/07 职场文书
预备党员的思想汇报,你真的会写吗?
2019/06/28 职场文书
Nginx 根据URL带的参数转发的实现
2021/04/01 Servers
Java org.w3c.dom.Document 类方法引用报错
2021/08/07 Java/Android
python ConfigParser库的使用及遇到的坑
2022/02/12 Python