使用Python实现跳帧截取视频帧

yipeiwu_com6年前Python基础

本文实例为大家分享了Python跳帧截取视频帧的具体代码,供大家参考,具体内容如下

可以自由设定时长来截取视频,经实测效果理想。期间遇到的一个麻烦是我的视频文件在D:盘,在原视频D盘目录上不能保存截取的图片文件,后改为在C:盘上保存,正常。具体原因不明,有网友知道原因所在,请告知。

import cv2
import os

def save_img():
 video_path =r'读入视频路径'
 videos = os.listdir(video_path)
 for video_name in videos:
   videopath=video_path+'\\'+video_name
   print(videopath)
   vc = cv2.VideoCapture(videopath) #读入视频文件  
   c = 1
   if vc.isOpened(): # 判断是否正常打开
   rval, frame = vc.read()
   else:
   rval = False 
   timeF = 300 # 视频帧计数间隔频率
   a=1
   while rval: # 循环读取视频帧
   rval, frame = vc.read()
   if (c % timeF == 0): # 每隔timeF帧进行存储操作
    print(video_path+'\\' + str(a) + '.jpg')
    #不能在D:盘原视频目录上保存图像文件,原因不明
    cv2.imwrite(r'保存图片文件路径 '+'\\'+ str(a) + '.jpg', frame)
    cv2.imshow('Video',frame)
    a+=1
   c = c + 1
   m=cv2.waitKey(1)
   vc.release()
save_img()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python程序中操作文件之flush()方法的使用教程

 flush()方法刷新内部缓冲区,像标准输入输出的fflush。这类似文件的对象,无操作。 Python关闭时自动刷新文件。但是可能要关闭任何文件之前刷新数据。 语法 以下是...

Python实现将xml导入至excel

Python实现将xml导入至excel

最近在使用Testlink时,发现导入的用例是xml格式,且没有合适的工具转成excel格式,xml使用excel打开显示的东西也太多,网上也有相关工具转成csv格式的,结果也不合人意。...

无法使用pip命令安装python第三方库的原因及解决方法

无法使用pip命令安装python第三方库的原因及解决方法

再dos中无法使用pip,命令主要是没有发现这个命令。我们先找到这个命令的位置,一般是在python里面的Scripts文件夹里面。我们可以把dos切换到对应的文件夹,再使用pip命令就...

Python如何判断数独是否合法

介绍 该数独可能只填充了部分数字,其中缺少的数字用 . 表示。 注意事项 一个合法的数独(仅部分填充)并不一定是可解的。我们仅需使填充的空格有效即可。 解体思路 将数独按照行、列和...

在Django框架中编写Contact表单的教程

虽然我们一直使用书籍搜索的示例表单,并将起改进的很完美,但是这还是相当的简陋: 只包含一个字段,q。这简单的例子,我们不需要使用Django表单库来处理。 但是复杂一点的表单就需要多方面...