[英]error: too many values to unpack
我正在尝试运行此python代码以读取图像并将其转换为数据矩阵,但遇到上面的错误,希望您能帮助我弄清楚要做什么
from PIL import Image
from numpy import array
import numpy as np
img = Image.open('felix.png')
arr = array(img)
im = Image.open("felix.png")
col,row = im.size
data = np.zeros((row*col, 5))
pixels = im.load()
for i in range(row):
for j in range(col):
r,g,b = pixels[i,j]
data[i*col + j,:] = r,g,b,i,j
print (data)
错误,值错误:此行有太多无法解包的值:r,g,b =像素[i,j]
非常感谢
此错误意味着每个像素包含的变量超过了您提供的3个值。 有理由假设这些实际上是RGBA像素。
r,g,b,a = pixels[i,j]
您打开的每个PNG文件都不会出现这种情况,因此您需要能够动态处理这种情况。
如果您有多个具有不同波段(RGB / RGBA)的图像,并且不想过滤它们,则只需执行以下操作:
band = pixels[i,j]
r = band[0]
g = band[1]
b = band[2]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.