sho*_*osh 6 python image image-processing python-imaging-library
所以我写了一个简单的python脚本
from PIL import Image
from pylab import *
im = array(Image.open('sample.jpg'))
imshow(im)
Run Code Online (Sandbox Code Playgroud)
我从IDLE得到这个错误
Traceback (most recent call last):
File "/home/michael/Dropbox/OpenCV/greyscale.py", line 5, in <module>
imshow(im)
File "/usr/local/lib/python2.7/dist-packages/matplotlib/pyplot.py", line 2722, in imshow
imlim=imlim, resample=resample, url=url, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/matplotlib/axes.py", line 7091, in imshow
im.set_data(X)
File "/usr/local/lib/python2.7/dist-packages/matplotlib/image.py", line 418, in set_data
raise TypeError("Image data can not convert to float")
TypeError: Image data can not convert to float
Run Code Online (Sandbox Code Playgroud)
基本上说我不能隐藏我的形象漂浮,任何人都知道我失踪了什么
小智 16
我知道这会很晚才到,但我想我应该回答以防其他人遇到同样的问题.我遇到了同样的问题,问题是我加载的图像在项目文件夹中不存在.所以你需要检查它是否sample.jpg存在并且在使用之前它已正确加载.
if os.path.isfile('sample.jpg'): im = array(Image.open('sample.jpg'))
if im == None or im.size == 0:
print 'Image loaded is empty'
sys.exit(1)
Run Code Online (Sandbox Code Playgroud)
小智 2
你所拥有的很接近。查看 imshow 文档,您需要传递图像或数据数组。
这应该有效:
from PIL import Image
from pylab import *
im = Image.open('sample.jpg')
imshow(im)
Run Code Online (Sandbox Code Playgroud)
这是 imshow() 所期望的:
“X 可以是浮点数组、uint8 数组或 PIL 图像。”
这里有更多详细信息:
http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.imshow
| 归档时间: |
|
| 查看次数: |
24564 次 |
| 最近记录: |