c++ - 在 OpenCV 中 waitKey (30) 是什么意思?

标签 c++ opencv

Possible Duplicate:
OpenCV - cvWaitKey( )

我要过滤视频帧。

for(;;)
{
cap.read( frame);
medianBlur(frame,framedst,5);
imshow("frame",frame);
imshow("framedst",framedst);    
if( waitKey (30) >= 0) break;
}

waitKey(30) 是什么意思?因为如果我把if(waitKey(30)>=0)break;这行注释掉,上面的代码就不行了!

最佳答案

waitKey() 函数等待按键事件“延迟”(此处为 30 毫秒)。如 OpenCV documentation 中所述,HighGui(imshow()是HighGui的一个函数)需要定期调用waitKey,以处理其事件循环。

也就是说,如果你不调用waitKey,HighGui不能处理windows事件,比如重绘、调整大小、输入事件等。所以只要调用它,即使有1ms的延迟:)

关于c++ - 在 OpenCV 中 waitKey (30) 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12452118/

相关文章:

android - 使用 Cygwin 编译 Android-OpenCV 库

c++ - PJSIP/PJSUA2 - 流 AudioMediaPlayer/AudioMediaRecorder

c++ - "missing return statement",但我知道它在那里

c++ - map<string, int> 从 const 函数调用时抛出 std::out_of_range

python - OpenCV Python 视频播放 - 如何为 cv2.waitKey() 设置正确的延迟

opencv - 在 Android 设备上使用 OpenCv 检测音乐形状

c++ - c++ 中的函数引用

c++ - 如何使用 CMake 在特定构建配置中为特定目标设置特定编译器标志?

xcode - 带有 Xcode 6.3 的 OpenCV 3.0.0

python - cvGetSubRect没有放入框架