我使用的OpenCV 2.2和Visual Studio 2010在Win 7的64位PC访问网络摄像头。不能与OpenCV的
我能够通过OpenCV显示图片和播放AVI文件,如“Learning OpenCV”中所述,但我无法捕获网络摄像头图像。即使与OpenCV文件一起提供的样本也无法访问网络摄像头。
我被问到“视频源 - >捕获源”,并且有两种选择:HP webcam Splitter和HP网络摄像头。如果我选择HP摄像头,窗口会立即关闭而不显示任何错误。 (我认为任何错误信息太快都无法在关闭之前看到)。如果我选择HP网络摄像头分光器则新的窗口,在这里的摄像头图像(视频)都应该来了,充满了统一的灰色。网络摄像头指示灯亮起,但看不到视频。我的摄像头正常工作与闪光灯(www.testmycam.com),并用DirectShow的http://www.codeproject.com/KB/audio-video/WebcamUsingDirectShowNET.aspx
我曾尝试使用此得到一些错误信息:
#include "cv.h"
#include "highgui.h"
#include <iostream>
using namespace cv;
using namespace std;
int main(int, char**)
{
VideoCapture cap("0"); // open the default camera
if(!cap.isOpened()) // check if we succeeded
{
cout << "Error opening camera!";
getchar();
return -1;
}
Mat edges;
namedWindow("edges",1);
for(;;)
{
Mat frame;
cap >> frame; // get a new frame from camera
cvtColor(frame, edges, CV_BGR2GRAY);
GaussianBlur(edges, edges, Size(7,7), 1.5, 1.5);
Canny(edges, edges, 0, 30, 3);
imshow("edges", edges);
if(waitKey(30) >= 0) break;
}
// the camera will be deinitialized automatically in VideoCapture destructor
return 0;
}
而且我得到的错误信息是:
warning: Error opening file (C:\Users\vp\work\ocv\opencv\modules\highgui\src\cap
_ffmpeg.cpp:454)
Error opening camera!
我不知道这个“cap_ffmpeg.cpp”是什么,我不知道这是否与多孔的“惠普媒体智能”的东西有任何问题。
任何帮助将不胜感激。
在行视频捕捉帽(“0”);我添加了“引号”。也许这就是问题所在。但仍然为什么默认样本不工作?并且在结束“YouCam Mirage”流程后http://www.pacs-portal.co.uk/startup_pages/22000-22999/22266_YCMMirage.exe.htm,如果选择“HP Webcam”而不是“ HP Webcam Spltter“。奇怪。 – Astromaz3 2011-01-20 16:42:40
我不知道这是否适合你,但user660815的回复解决了我所有的问题。您可能需要考虑将他的答案标记为正确答案。 – Tom 2011-03-24 13:36:16