如下所示:
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 html" target="_blank">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互相转换就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
本文向大家介绍JavaScript字符和ASCII实现互相转换,包括了JavaScript字符和ASCII实现互相转换的使用技巧和注意事项,需要的朋友参考一下 在处理字符时,有时需要和ASCII码相互转换,博主便简单整理了一篇。 字符转ASCII 需要用变量的方法(js自带函数)。 单个字符转ASCII let x = 'a'; x.charCodeAt(); //会输出'a'的ASCII码,即9
本文向大家介绍Python 实现list,tuple,str和dict之间的相互转换,包括了Python 实现list,tuple,str和dict之间的相互转换的使用技巧和注意事项,需要的朋友参考一下 1、字典(dict) 1.1 字典——字符串 返回: 1.2 字典——元组 返回:(‘age', ‘name', ‘class') 1.3 字典——元组 返回:(7, ‘Zara', ‘First
本文向大家介绍python实现字符串和日期相互转换的方法,包括了python实现字符串和日期相互转换的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python实现字符串和日期相互转换的方法。分享给大家供大家参考。具体分析如下: 这里用的分别是time和datetime函数 输出结果为: 符: %a 英文星期简写 %A 英文星期的完全 %b 英文月份的简写 %B 英文月份的完全 %c
本文向大家介绍python实现文件路径和url相互转换的方法,包括了python实现文件路径和url相互转换的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python实现文件路径和url相互转换的方法。分享给大家供大家参考。具体实现方法如下: 运行结果如下: path\to\file\or\folder\ 希望本文所述对大家的Python程序设计有所帮助。
本文向大家介绍tensor和numpy的互相转换的实现示例,包括了tensor和numpy的互相转换的实现示例的使用技巧和注意事项,需要的朋友参考一下 要对tensor进行操作,需要先启动一个Session,否则,我们无法对一个tensor比如一个tensor常量重新赋值或是做一些判断操作,所以如果将它转化为numpy数组就好处理了。下面一个小程序讲述了将tensor转化为numpy数组,以及又重
本文向大家介绍Java实现String与StringBuilder相互转换,包括了Java实现String与StringBuilder相互转换的使用技巧和注意事项,需要的朋友参考一下 String类型是Java中的一个类,它用来表示一组字符。 Java中的字符串是不可变的,一旦创建,就不能更改字符串的值。 由于字符串是不可变的,因此如果您尝试重新分配字符串的值。它的引用将指向新的String对象,