【发布时间】:2012-09-07 01:35:44
【问题描述】:
我已经在 Ubuntu 12.04 32 位平台上使用 OpenGl、Qt 和 OpenNI 构建了 OpenCV 2.4.1,但每当我运行学习 OpenCV 书中列出的示例程序时。
例如:
#include "highgui.h"
int main( int argc, char** argv ) {
cvNamedWindow( "Example2", CV_WINDOW_AUTOSIZE );
//CvCapture* capture = cvCaptureFromAVI( argv[1] );
CvCapture* capture = cvCreateFileCapture( argv[1] );
IplImage* frame;
while(1) {
frame = cvQueryFrame( capture );
if( !frame ) break;
cvShowImage( "Example2", frame );
char c = cvWaitKey(33);
if( c == 27 ) break;
}
cvReleaseCapture( &capture );
cvDestroyWindow( "Example2" );
}
我在控制台中收到此消息:
init done
opengl support available
我想知道我哪里出错了。我在编译时没有收到任何错误。
【问题讨论】:
-
运行时会发生什么?它会崩溃吗?
-
Nothing..它完全构建并在控制台中给出此消息..在我使用它来显示一个简单图像的程序中,我得到一个带有黑色图像的窗口和相同的消息在控制台中
-
很抱歉问了一些显而易见的问题,但只是想把它排除在外:你确定你的论点没问题吗? (例如在上面的代码中,参数是有效的视频文件吗?)
-
没关系 Bob,我用当前目录中的图像替换了参数。图像和视频的行为不同。在图像中,我在控制台中看到黑色窗口和这条消息,但在视频我收到这条消息,没有别的。
-
我要做的第一件事是在各处添加调试语句以查看调用的内容和一般情况。例如,当您阅读图像时,除了显示它之外,还要打印这些值。他们看起来还好吗,或者他们都是黑色的?另见this question。这可能是库问题或 OpenCV 的构建方式,但最好先消除更简单的可能性。
标签: c++ eclipse opengl ubuntu opencv