我在ubuntu 11.04上使用opencv 2.3。在编译时,为了完整性,我设置了WITH_OPENNI = ON。 (现在后悔,因为我不打算很快使用kinect,而openni让我头疼的是正常的opencv程序)
无论如何,为了测试我编译的opencv安装,下面的代码显示了我的笔记本电脑摄像头中的视频:
#include <stdio.h>
#include <string.h>
#include "highgui.h"
#include "cv.h"
int main()
{
cvNamedWindow("Webcam",CV_WINDOW_AUTOSIZE);
CvCapture* capture=cvCaptureFromCAM(0);
IplImage* frame;
while(1)
{
frame=cvQueryFrame(capture);
if(!frame) break;
cvShowImage("Webcam",frame);
char c=cvWaitKey(33);
if(c==27) break;
}
cvReleaseCapture(&capture);
cvDestroyWindow("Webcam");
}
代码正确符合但在执行时出现以下错误:
OpenCV错误:未指定错误(无法枚举生产树:无法创建所请求类型的任何节点!)在CvCapture_OpenNI文件/home/samarth/OpenCV-2.3.0/modules/highgui/src/cap_openni中。 cpp,188行 在抛出'cv :: Exception'的实例后终止调用 what():/ home / samarth / OpenCV-2.3.0 / modules / highgui / src / cap_openni.cpp:188:错误:( - 2)无法枚举生产树:无法创建所请求类型的任何节点!在函数CvCapture_OpenNI
中
中止
有人遇到同样的问题吗?任何想要解决这个问题的想法都将受到高度赞赏。
答案 0 :(得分:1)
此问题已在OpenCV 2.3.1版本中修复。
有关详细信息,请参阅以下链接: https://code.ros.org/trac/opencv/ticket/1237