OpenCV cvNamedWindow 没有出现在 Fedora 下

Posted

技术标签:

【中文标题】OpenCV cvNamedWindow 没有出现在 Fedora 下【英文标题】:OpenCV cvNamedWindow not appearing under Fedora 【发布时间】:2009-12-16 12:36:40 【问题描述】:

正如标题所暗示的,我只是想让一个命名窗口出现。我已经使用 OpenCV 一年多了,以前从未遇到过这个问题。由于某种原因,窗口永远不会打开。我尝试运行一些旧脚本,一切正常。

作为一个非常精简的例子,见下文

#include "cv.h"
#include "highgui.h"

int main(int argc, char** argv) 

    cvNamedWindow( "video", 0 );
    IplImage *im = cvCreateImage( cvSize(200,200), 8, 3 );
    while(1) 
        cvShowImage( "video", im );
    

    return 0;

我看不出这不起作用的原因,但由于某种原因,该窗口从未出现过。 有没有其他人经历过这个?它让我头疼!

【问题讨论】:

【参考方案1】:

只需在循环内调用cvWaitKey(int milliseconds)。该函数通知 GUI 系统运行图形挂起事件。 你的代码应该是这样的:

int main(int argc, char** argv) 
   cvNamedWindow( "video", 0 );
   IplImage *im = cvCreateImage( cvSize(200,200), 8, 3 );
   while(1) 
       cvShowImage( "video", im );
       cvWaitKey(100); //wait for 100 ms for user to hit some key in the window
   

   return 0;

【讨论】:

以上是关于OpenCV cvNamedWindow 没有出现在 Fedora 下的主要内容,如果未能解决你的问题,请参考以下文章

在 OpenCV 中播放 AVI 文件

opencv调用摄像头函数

Win7+opencv2.4.6+VS2010-MFC驱动笔记本摄像头采集图像,视频窗口一出现就消失,摄像头也是开了一秒就关

使用 opencv 显示视频

opencv库视频播放[关闭]

opencv中的镜像