OpenCV中是否有任何方法或功能可以让我们以固定帧速率(fps)播放任何视频?不同的视频可能有不同的帧速率,但是通过使用 OpenCV 库,我们可以按照我们定义的固定帧速率播放它们吗?
提前致谢。
OpenCV中是否有任何方法或功能可以让我们以固定帧速率(fps)播放任何视频?不同的视频可能有不同的帧速率,但是通过使用 OpenCV 库,我们可以按照我们定义的固定帧速率播放它们吗?
提前致谢。
int fps = (int)cvGetCaptureProperty(capture, CV_CAP_PROP_FPS);
int delay = 1000 / fps;
while (true) {
clock_t startTime = clock();
capture.read(frame);
process();
imshow("video", frame);
while (clock() - startTime < delay) {
waitKey(1);
}
}
看看这篇文章。它展示了如何使用 OpenCV 播放 AVI 文件。在这里,使用读取帧速率
int fps = ( int ) cvGetCaptureProperty( capture, CV_CAP_PROP_FPS );
延迟是通过设置的
key = cvWaitKey( 1000 / fps );
因此,通过控制fps
变量,您可以获得您想要的播放速率。