我在以前的帖子中找到了答案:将Numpy数组保存为图像。唯一的问题是,对于使用PyPNG模块没有太多的说明。
只有一些在线示例- http://packages.python.org/pypng/ex.html#numpy http://nullege.com/codes/search/png.Writer.write 但是如果遇到像这样的写入错误,我该怎么办:
只有一些在线示例- http://packages.python.org/pypng/ex.html#numpy http://nullege.com/codes/search/png.Writer.write 但是如果遇到像这样的写入错误,我该怎么办:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/png.py", line 638, in write
nrows = self.write_passes(outfile, rows)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/png.py", line 783, in write_passes
extend(row)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/png.py", line 780, in <lambda>
return lambda sl: f(map(int, sl))
TypeError: argument 2 to map() must support iteration
这是我的代码中出现错误的地方,位于PCA_tool.py中(错误发生在“folder.write(outfilename, PrincipalComponent”)之后:
#PrincipalComponent.save(path+'transform_'+str(each)+'.png', format='PNG')
outfilename = open(str(path)+'transformed/transform_'+str(each)+'.png', 'wb')
folder = png.Writer(m,n,greyscale=True)
folder.write(outfilename, PrincipalComponent)
outfilename.close()
sys.exit(0)
我正在尝试将一个包含8400个元素的numpy.ndarray保存为一张80列、105行的灰度png图像。谢谢。
uint8
),然后Image.fromarray(data).save('whatever.png')
。 - Joe KingtonImage.fromarray
所期望的(numpy.ndarray)
,如果有用的话。 - Joe Kington