我编写了一些代码,目前由两个窗口组成,以显示某些处理算法的不同阶段。很简单,我已经创建了两个窗口cv::namedWindow()
,并且我正在cv::Mat
显示cv::imshow()
。我遇到了一个问题,即不时随机(但并非总是)cv::imshow()
拒绝更新两个窗口。该程序没有挂起,我可以看到它仍在工作并处理传入的帧(因为我正在将内容打印到终端以显示这一点),只是窗口没有显示新帧。我cv::waitKey(2)
在每次调用后都包括在内cv::imshow()
,但这无济于事。
这很烦人,我似乎在网上找不到任何东西。这并不总是发生,但它经常发生。有时需要几分钟,有时需要几秒钟。
我正在使用带有 OpenCV 2.3.1 的 Ubuntu 12.04(和 Ubuntu 11.10 - 这发生在我的两台带有两个不同摄像头的机器上)。