iOS上的opencv cvGrabFrame帧速率?
Posted
技术标签:
【中文标题】iOS上的opencv cvGrabFrame帧速率?【英文标题】:opencv cvGrabFrame frame rate on iOS? 【发布时间】:2012-04-22 10:31:22 【问题描述】:我正在使用 openCV 将视频分割成帧。为此,我需要 fps 和持续时间。当通过 cvGetCaptureProperty 询问时,这两个值都返回 1。
我做了一个 hack,我使用 AVURLAsset 来获取 fps 和持续时间,但是当我将它与 openCV 结合使用时,我只能得到部分视频。它似乎缺少帧。
这是我现在的代码:
while (cvGrabFrame(capture))
frameCounter++;
if (frameCounter % (int)(videoFPS / MyDesiredFramesPerSecond) == 0)
IplImage *frame = cvCloneImage(cvRetrieveFrame(capture));
// Do Stuff
if (frameCounter > duration*fps)
break; // this is here because the loop never stops on its own
如何在 ios 上使用 openCV 获取视频的所有帧? (opencv 2.3.2)
【问题讨论】:
【参考方案1】:根据documentation,您应该检查 cvRetrieveFrame() 返回的值,如果返回空指针,您就处于视频序列的末尾。然后在发生这种情况时打破循环,而不是依赖 FPS*frame_number 的准确性。
【讨论】:
以上是关于iOS上的opencv cvGrabFrame帧速率?的主要内容,如果未能解决你的问题,请参考以下文章
iOS 上的 OpenCV 对象检测 (HOGDescriptor)
iOS 上的 OpenCv 2.4.7 错误 background_segm.hpp #include <list> not found