图像为numpy-array:JPG与PNG

tie*_*iDE 6 python png jpeg numpy python-imaging-library

我的系统:Mac OS X 10.7
Python 2.7.1
NumPy 1.5.1版

我的代码:

image = openImage(fileDir)  
print image  
image = np.asarray(image)  
print image
Run Code Online (Sandbox Code Playgroud)

如果我运行这个:

python main.py 1010.png
Run Code Online (Sandbox Code Playgroud)

输出是:

<PIL.PngImagePlugin.PngImageFile image mode=RGB size=10x10 at 0x10A835368>  
[[[226 226 226] ...    `
Run Code Online (Sandbox Code Playgroud)

如果我运行这个:

python main.py google.jpg 
Run Code Online (Sandbox Code Playgroud)

输出是:

<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=488x640 at 0x10140B368>  
<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=488x640 at 0x10140B368>
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚为什么numpy可以转换png但不能在jpg上做,为什么?我怎么解决这个问题?

编辑:

好的尝试过

image.show()
Run Code Online (Sandbox Code Playgroud)

并得到以下错误消息:

IOError: decoder jpeg not available
Run Code Online (Sandbox Code Playgroud)

我用这个页面提供的信息解决了这个问题:http:
//mariz.org/blog/2007/01/26/mac-os-x-decoder-jpeg-not-available/

tie*_*iDE 1

我用从该页面获得的信息解决了问题:

http://mariz.org/blog/2007/01/26/mac-os-x-decoder-jpeg-not-available/