SimpleCV install and "You need the python image library to save by filehandle"

简介: 2015年5月3日 22:15:43在win7下安装了python、simplecv,试着运行simplecv官网第一个hello world程序结果报错,提示说%python%/lib/site-packages/SimpleCV/sampleimages目录不存在。

2015年5月3日 22:15:43

在win7下安装了python、simplecv,试着运行simplecv官网第一个hello world程序结果报错,提示说%python%/lib/site-packages/SimpleCV/sampleimages目录不存在。果然,是pypi源中的压缩包根本就没有把官方repo中的sampleimages目录放进去,手动下载官方repo去了:https://github.com/sightmachine/SimpleCV/zipball/1.3 (好吧其实是搬运https://github.com/sightmachine/SimpleCV上的内容)

前面已经装了python,把opencv安装包中的cv.py和cv2.pyd扔到python的site-packages和DLL目录下了,并且安装了PIL等各种官网说的依赖包,运行后报错说

"you need the python library to save by file handle"
通过把%python%/Lib/site-packages/SimpleCV/base.py中的一句import修改掉,就能运行了:
change the following line***:
from Image.GifImagePlugin import getheader, getdata
into:
from GifImagePlugin import getheader, getdata
然后重新运行,Done

=======================
修改base.py的内容也是搬运的,以下是原文
=======================

SimpleCV install and "You need the python image library to save by filehandle"

You'll maybe complain that this site is degenerating into a mingle-mangle of bug descriptions, but if you've ever had a pesky problem and couldn't find anything about it on the web, you'll understand my urge to document such things for the fellow hackers.

Here the story goes: SimpleCV is a Python framework trying to provide a simple interface to both OpenCV* an PIL**. There's even a small book about it. I first installed version 1.2 on my computer, but then wanted to upgrade to 1.3 as there were some segmentation algorithms added (graph-cut etc.) which I wanted to use. Unfortunately, as I installed the new SimpleCV 1.3 and then tried to run my script written for version 1.2 I got:
WARNING: You need the python image library to save by filehandle
when I tried to display any image. Deinstallation of both versions an clean install followed, but nothing changed. Googling for solution didn't help either. What should we do? Just fix it by yourself! The solution is simple. Well, just open this file:

C:\Python27\Lib\site-packages\SimpleCV\base.py
and change the following line***:
from Image.GifImagePlugin import getheader, getdata
into:
from GifImagePlugin import getheader, getdata
So, that's it! And happy OpenCV hacking!

PS: PIL seems to be generally a difficult library to use on Windows. If you follow their own docs an write something like
from PIL import Image
it won't work! You have to use the little bit confusing:
import Image
--

  • OpenCV: a C++ library containing image processing algorithms. For Python there are wrappers exposing direct calls to it, but they aren't that easy to be used directly.

** PIL: the "python image library " from the warning message - the best know imaging library for Python, however it isn't self-contained. You'll need several other libraries like sciPy etc.

*** somehow for Windows distribution the GifImagePlugin isn't a subpackage of Image, and the PIL package just isn't there to be used as prefix! Despite the warning, the problem isn't lack of the PIL installation, but failure to find one of it's subpackages.

Posted by Marek Krj at 03:55
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels: computer vision, Python

目录
相关文章
|
6天前
|
iOS开发 MacOS Python
完美解决 Python library not found: libpython3.10m.dylib, Python3, .Python, libpython3....
完美解决 Python library not found: libpython3.10m.dylib, Python3, .Python, libpython3....
53 0
|
6天前
|
Shell iOS开发 MacOS
完美解决 Python library not found: libpython3.10m.dylib, Python3, .Python, lib...
完美解决 Python library not found: libpython3.10m.dylib, Python3, .Python, lib...
65 0
|
6月前
|
Python
python pyinstaller “Cannot find the MXNet library“ libmxnet.dll #文件包缺失
python pyinstaller “Cannot find the MXNet library“ libmxnet.dll #文件包缺失
79 0
|
存储 数据格式 Python
第24天:Python Standard Library 02
第24天:Python Standard Library 02
115 0
|
15小时前
|
存储 算法 Python
Python编程作业一:程序基本流程
Python编程作业一:程序基本流程
5 0
|
1天前
|
机器学习/深度学习 缓存 人工智能
令你膛目结舌的代码技巧 —— Python编程代码技巧
令你膛目结舌的代码技巧 —— Python编程代码技巧
8 2
|
1天前
|
数据采集 算法 Python
2024年Python最全python基础入门:高阶函数,小米面试编程题
2024年Python最全python基础入门:高阶函数,小米面试编程题