不能够改变帧速率,使用cv2.VideoCapture(video_path).SET输入视频(cv2.CAP_PROP_FPS,new_frame_rate)

问题描述 投票:0回答:1

我使用的OpenCV的Python(3.4.3.18)和Python阅读.mp4视频文件(3.6.6)

vid = cv2.VideoCapture(video_path)

原来的视频大约有59 FPS,我想将其降低到10 FPS。所以,我使用以下设置cv2.CAP_PROP_FPS属性,

flag = vid.set(cv2.CAP_PROP_FPS, 10)

(参考文献:https://docs.opencv.org/3.4.3/d8/dfe/classcv_1_1VideoCapture.html#a8c6d8c2d37505b5ca61ffd4bb54e9a7c

然而,当我打印flag值它给False。这意味着属性未由VideoCapture实例所使用的后台支持。因此,当我使用阅读框,

return_value, frame = vid.read()

它返回所有59帧使得后处理步骤耗费更多的时间。如何解决这个问题?

python opencv python-3.6 frame-rate opencv-python
1个回答
1
投票

你有没有试过改变cv2.waitKey()?

例如:如果你有一个60fps视频,尝试使用cv2.waitKey(6000)

© www.soinside.com 2019 - 2024. All rights reserved.