使用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怎么实现无限元素列表的方法,具体实现可使用Yield来完成。 下面所述的2段实例代码通过Python Yield 生成器实现了简单的无限元素列表。 1.递增无限...

用python一行代码得到数组中某个元素的个数方法

想法由来 今天写代码过程中遇到一个需求,计算一个list中数值为1的元素的个数,其中这个list的元素数值不是为0就是为1。 一开始想到的是写个方法来计算: # 返回一个0,1数组中...

Python OpenCV中的resize()函数的使用

Python OpenCV中的resize()函数的使用

改变图像大小意味着改变尺寸,无论是单独的高或宽,还是两者。也可以按比例调整图像大小。 这里将介绍resize()函数的语法及实例。 语法 函数原型 cv2.resize(src, d...

python中几种自动微分库解析

前言 简单介绍下python的几个自动求导工具,tangent、autograd、sympy; 在各种机器学习、深度学习框架中都包含了自动微分,微分主要有这么四种:手动微分法、数值微分...

python运行时强制刷新缓冲区的方法

需求:打印一颗”*”休息1s 代码如下: #!/usr/bin/python #coding=utf-8 ''' 暂停1s输出 ''' import time def print...