小编Inc*_*sum的帖子

将 numpy.array 对象转换为 PIL 图像对象

我一直在尝试使用 Image.fromarray 将 numpy 数组转换为 PIL 图像,但它显示以下错误。

回溯(最近一次调用):文件“C:\Users\Shri1008 Saurav Das\AppData\Local\Programs\Python\Python36-32\lib\site-packages\PIL\Image.py”,第 2428 行,fromarray 模式, rawmode = _fromarray_typemap[typekey] KeyError: ((1, 1, 3062), '|u1')

在处理上述异常的过程中,又发生了一个异常:

回溯(最近一次调用):文件“C:/Users/Shri1008 Saurav Das/AppData/Local/Programs/Python/Python36-32/projects/try.py”,第 13 行,在 img = Image.fromarray(IMIR)文件 "C:\Users\Shri1008 Saurav Das\AppData\Local\Programs\Python\Python36-32\lib\site-packages\PIL\Image.py", line 2431, in fromarray raise TypeError("Cannot handle this data type ") 类型错误:无法处理此数据类型

我从 hdf5 文件中提取了矩阵并将其转换为 numpy 数组。然后我做了一些基本的转换来增强对比度(最可能的错误原因)。这是代码。

import tkinter as tk
import h5py as hp
import numpy as np
from PIL import Image, ImageTk

hf = hp.File('3RIMG_13JUL2018_0015_L1C_SGP.h5', 'r')
IMIR = hf.get('IMG_MIR')
IMIR = np.uint8(np.power(np.double(np.array(IMIR)),4)/5000000000)
IMIR = np.array(IMIR) …
Run Code Online (Sandbox Code Playgroud)

python numpy python-imaging-library

5
推荐指数
1
解决办法
5745
查看次数

如何在gui中使用tkinter显示图像

给定的代码不起作用,因为它给出了'haridwar.jpg'找不到文件的错误,尽管我尝试将它放在Python35和桌面上.请帮忙

import tkinter as tk  
from PIL import Image,ImageTk  
root = tk.Tk()  
root.title("display image")  
im=Image.open("haridwar.jpg")  
photo=ImageTk.PhotoImage(im)  
cv = tk.Canvas()  
cv.pack(side='top', fill='both', expand='yes')  
cv.create_image(10, 10, image=photo, anchor='nw')  
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

python tkinter python-imaging-library tkinter-canvas python-3.5

0
推荐指数
1
解决办法
1万
查看次数