OpenCV cap.get(cv2.CAP_PROP_FRAME_COUNT)返回-1 [英] OpenCV cap.get(cv2.CAP_PROP_FRAME_COUNT) returning -1
本文介绍了OpenCV cap.get(cv2.CAP_PROP_FRAME_COUNT)返回-1的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我最近使用以下教程所以我运行以下代码来获取mp4视频的帧数
So I ran the following code to get the number of frames of an mp4 video
import cv2
cap = cv2.VideoCapture('vid.mp4')
length = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
print length
奇怪的是,我得到"-1"作为长度"的输出.视频确实加载了,我得到了准确的值
Strangely I get "-1" as output for "length". The video does infact load and I get accurate values for
int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT)) #480
和
int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)) #640
所以这很好奇为什么帧计数不起作用.请帮忙.
so its a wonder why frame count doesn't work. Please Help.
推荐答案
问题与opencv构建有关(在c ++中也存在).我最终重新构建了opencv,之后一切正常
The problem was with the opencv build (as it also occured in c++). I ended up re-building my opencv and everything worked fine after
这篇关于OpenCV cap.get(cv2.CAP_PROP_FRAME_COUNT)返回-1的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文