编程语言
首页 > 编程语言> > Python opencv没有接收相机提要

Python opencv没有接收相机提要

作者:互联网

我一直在尝试使用SimpleCV(www.simplecv.org)模块来运行图像识别和操作.不幸的是,我传入的视频源非常挑剔,而且我不确定我做错了什么.只需使用一些基本的示例代码:

import cvwindow = cv.NamedWindow("camera", 1)
capture = cv.CreateCameraCapture(0)
width = int(cv.GetCaptureProperty(capture, cv.CV_CAP_PROP_FRAME_WIDTH)) 
height = int(cv.GetCaptureProperty(capture, cv.CV_CAP_PROP_FRAME_HEIGHT))

while 1:
    img = cv.QueryFrame(capture)
    cv.ShowImage("camera", img)
    k = cv.WaitKey(1)
    if(k == 102):
        cv.destroyWindow("camera")
        break

当我插入我的Logitech网络摄像头500时,它工作得很好.但是,当我尝试使用我的Vimicro Altair相机时,我得到一个灰色的屏幕,当保存到文件时,文件是空的.

我还试图使用SimpleCV代码,基于他们的cookbook基于:

mycam = Camera()
img = mycam.getImage()

这同样不成功,但是不返回任何数据,只返回一个完全黑色的图像.

我完全失去了造成这种情况的原因,我在笔记本电脑上尝试了完全相同的系统,甚至无法从Logitech摄像头获取图像.我正在使用Python 2.7和SimpleCV 1.1运行Windows 7 64位.

谢谢

解决方法:

我是SimpleCV开发人员之一.看来你正在尝试使用标准的python openCV包装器.

我建议做的只是在这里运行示例:
https://github.com/sightmachine/SimpleCV/blob/develop/SimpleCV/examples/display/simplecam.py

或者这里是代码:

import time, webbrowser
from SimpleCV import *

#create JPEG streamers
js = JpegStreamer(8080)
cam = Camera()

cam.getImage().save(js)
webbrowser.open("http://localhost:8080", 2)

while (1):
  i = cam.getImage()
  i.save(js)
  time.sleep(0.01) #yield to the webserver

标签:python,opencv,camera,simplecv
来源: https://codeday.me/bug/20190903/1794513.html