Python cv2:VideoCapture设置位置花费的时间比预期的长

时间:2019-11-16 01:51:08

标签: python opencv

我正在构建一个显示视频的PyQt5应用。为了在视频中找到特定的帧,我编写了这个简单的函数。

def seek_frame(self, frame_num: int) -> bool:
    if self.is_valid_frame(frame_num):
        # self._video_reader is a cv2.VideoCapture object
        self._video_reader.set(1, frame_num)  # CAP_PROP_POS_FRAMES = 1
        self.display_next_frame()
        return True
    return False

在我看来,这应该在固定的时间内完成,但是我尝试寻找的视频越远,self._video_reader.set(1, frame_num)的运行时间就越多。找到指定的帧后,self._video_reader.read()就可以以必要的帧速率运行。

为什么会这样?是否有任何可以加快处理速度的前期处理?

0 个答案:

没有答案