This question already has answers here:
What does OpenCV's cvWaitKey( ) function do?

(9个答案)


3年前关闭。




在OpenCV中,如果我在捕获的图像的显示循环中不包含Cv2.WaitKey(1)行,则屏幕上不会呈现任何图像。
在C++,phyton或C#上也是如此。

是什么原因造成的,还有另一种选择吗?

此示例在C#(opencvsharp)中:
VideoCapture cap = new VideoCapture();

Window w = new Window();

cap.Open("animation.avi");

while (cap.Read(src)) {
    Cv2.WaitKey(1);
    w.ShowImage(src);
}

最佳答案

从技术上讲,highgui需要调用waitkey()才能获得更新窗口的时间。

从OpenCV文档中引用imshow()函数(在C#中为ShowImage):



关于waitKey()函数(在C#中为WaitKey()):

关于c# - OpenCV-捕获循环中没有等待键就不会显示图像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41195014/

10-11 17:25