使用python-opencv读取视频,计算视频总帧数及FPS的实现

yipeiwu_com7年前Python基础

如下所示:

1、计算总帧数

import os
import cv2
 
video_cap = cv2.VideoCapture('ffmpeg_test.avi')
 
frame_count = 0
all_frames = []
while(True):
  ret, frame = video_cap.read()
  if ret is False:
    break
  all_frames.append(frame)
  frame_count = frame_count + 1
 
# The value below are both the number of frames
print frame_count
print len(all_frames)

2、计算视频中的FPS,即每秒传输帧数(Frames per second)

import cv2
if __name__ == '__main__' :
 
  video = cv2.VideoCapture("video.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();

以上这篇使用python-opencv读取视频,计算视频总帧数及FPS的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

值得收藏,Python 开发中的高级技巧

Python 开发中有哪些高级技巧?这是知乎上一个问题,我总结了一些常见的技巧在这里,可能谈不上多高级,但掌握这些至少可以让你的代码看起来 Pythonic 一点。如果你还在按照类C语言...

详解Python函数式编程—高阶函数

详解Python函数式编程—高阶函数

函数式编程就是一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要输入是确定的,输出就是确定的,这种纯函数我们称之为没有副作用。而允许使用变量的程...

使用Python操作Elasticsearch数据索引的教程

使用Python操作Elasticsearch数据索引的教程

Elasticsearch是一个分布式、Restful的搜索及分析服务器,Apache Solr一样,它也是基于Lucence的索引服务器,但我认为Elasticsearch对比Solr...

浅析PyTorch中nn.Linear的使用

浅析PyTorch中nn.Linear的使用

查看源码 Linear 的初始化部分: class Linear(Module): ... __constants__ = ['bias'] def __init__(s...

python 限制函数执行时间,自己实现timeout的实例

如下所示: # coding=utf-8 import signal import time def set_timeout(num, callback): def wr...