SimpleCv - IOError(“无法识别图像文件”) - 来自JpegStreamCamera() - Android的IP摄像头

问题描述:

我想用我的Android 2.3手机与IP摄像头应用程序来显示使用SimpleCV。以下看起来很好。SimpleCv - IOError(“无法识别图像文件”) - 来自JpegStreamCamera() - Android的IP摄像头

from SimpleCV import * 
import time 

cam = JpegStreamCamera("http://192.168.1.3:1025/videofeed") 
img = cam.getImage() 
img.show() 

但是,在运行时出现以下错误。尽管手机上的应用程序检测到连接。

Traceback (most recent call last): 
    File "D:\cam.py", line 5, in <module> 
    img = cam.getImage() 
    File "build\bdist.win32\egg\SimpleCV\Camera.py", line 540, in getImage 
    return Image(pil.open(StringIO(self.camthread.currentframe)), self) 
    File "C:\Python27\lib\site-packages\pil-1.1.7-py2.7-win32.egg\Image.py", line 1980, in open 
    raise IOError("cannot identify image file") 
IOError: cannot identify image file 

有没有什么办法来检测摄像头流的格式,并将此流转换为JPEG格式?还有其他建议吗? 在此先感谢!

+0

得到同样的错误静态PNG图像模板匹配 – KJW 2012-08-17 08:05:36

这是一个错误,其实现在已经在主分支搞掂: https://github.com/ingenuitas/SimpleCV

它实际上应该已经是Jpeg格式。您能否再次启动IP摄像头软件,然后验证该URL是否在Chrome或Firefox中运行。如果不是,那么该网址出现问题。

+0

经过几次。 URL在FF和Chrome中正常工作。与C#opencvsharp一起使用时,凸轮进给正常工作。但是在C#的情况下,我没有使用IP地址。 http://www.prodigyproductionsllc.com/articles/programming/opencv-eye-tracking-with-c/ CvCapture cap = CvCapture.FromCamera(1) 完成任务。 在python-simplecv中,这是因为我的手机的凸轮是高分辨率的错误?任何其他解决方案让这个工作? – Sabharish 2012-04-09 14:42:53

+0

你使用的是什么版本的simplecv? – xamox 2012-04-10 19:55:04

+0

最新的一个。 1.2在Win7 64bit上。也试过在32bit。我认为这不重要。 http://space.dl.sourceforge.net/project/simplecv/1.2/simplecv-setup-1.2.exe – Sabharish 2012-04-11 03:29:39