我没有做任何特别的事情,但是我正在阅读opencv文档,我无法理解read中的grabVideoCapture方法之间的区别,在这里,这是他们的工作:



在两种方法中提取下一帧。有什么不同? Link to the documentation

最佳答案

当仔细查看这两种方法的文档时,有一个细微但重要的差异变得更加明显。

  • grab “仅”从相机获取图像并将其保存以进行进一步处理:



    在这种情况下,您仍然必须从OpenCV检索帧(即“解码并获取”),以便可以使用它。 grab仅返回一个 bool(boolean) 值,该 bool(boolean) 值指示OpenCV是否能够从摄像机获取帧-在这种情况下,返回参数不是帧。
  • read grabretrieve操作合并为一个命令,并返回已解码的帧:



    此方法将实际的框架返回给您的应用程序,因此您不必担心检查 bool(boolean) 参数并编写其他代码以通过OpenCV取回框架。

  • 根据您的应用程序,仅使用read可能会更容易,因为它可能会节省您一两行代码。

    关于python - 视频捕获读取和抓取之间的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57716962/

    10-10 19:02