Tas*_*sos 6 python mp4 opencv frame-rate
这是我的影片
这是找到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();
Run Code Online (Sandbox Code Playgroud)
这是此视频的脚本输出:
Frames per second using video.get(cv2.CAP_PROP_FPS) : 0.0
为什么返回0.0?FPS为14.0
最新版本的 opencv-python 将给出一个错误,称为AttributeErrorbecause cv2does not have any attribute named cv。
而是使用以下内容
import cv2
vidcap = cv2.VideoCapture('some_video.avi')
fps = vidcap.get(cv2.CAP_PROP_FPS)
print(f"{fps} frames per second")
Run Code Online (Sandbox Code Playgroud)
这将给出frames per second值
执行pip install python-opencv修复了问题并正确检测到 FPS。
编辑:用 python 3.8 测试,确实是pip install opencv-python. 不记得两年前我用的是什么 python。