【发布时间】:2018-08-08 02:39:22
【问题描述】:
这是我的视频
这是寻找fps的脚本:
import cv2
if __name__ == '__main__' :
video = cv2.VideoCapture("test.mp4");
# Find OpenCV version
(major_ver, minor_ver, subminor_ver) = (cv2.__version__).split('.')
if int(major_ver) < 3 :
fps = video.get(cv2.cv.CV_CAP_PROP_FPS)
print "Frames per second using video.get(cv2.cv.CV_CAP_PROP_FPS): {0}".format(fps)
else :
fps = video.get(cv2.CAP_PROP_FPS)
print "Frames per second using video.get(cv2.CAP_PROP_FPS) : {0}".format(fps)
video.release();
这是该视频的脚本输出:
Frames per second using video.get(cv2.CAP_PROP_FPS) : 0.0
为什么返回 0.0? FPS 为 14.0
【问题讨论】:
-
你检查opencv实际打开文件了吗? (与
video.isOpened()) -
@api55 你是对的它没有,它返回
False。这是为什么呢? -
好吧,它没有打开它,你可以试试
video.open("test.mp4")试试,把完整的路径,以防万一......如果没有尝试另一个视频(丢弃编解码器问题) -
这实际上是因为opencv不是通过pip安装的(我不知道它是如何导入的,这是我第一次使用它)。所以在
pip-install python-opencv之后,它就像一个魅力。 -
这首先解释了问题所在,当您使用 pip 安装 opencv 时,它会带来自己的后端 (ffmpeg),所以我认为问题在于您的第一个 opencv 后端已损坏
标签: python opencv mp4 frame-rate