使用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 OpenCV对本地视频文件进行分帧保存的实例
如下所示: # coding=utf-8 import os import cv2 videos_src_path = "/home/wgp/视频/" video_formats = [".MP4", ".MOV"] frames_save_path = "/home/wgp/视频/" width = 320 height = 240 time_interval = 50 def video2frame(video_src_p
-
python读取视频流提取视频帧的两种方法
本文实例为大家分享了python读取视频流提取视频帧的具体代码,供大家参考,具体内容如下 方法一:通过imageio库和skimage库 1. 安装环境: pip install imageio pip install skimage 这时候会报错Please install the `scikit-image` package (instead of `skimage`) 所以按照提示操作即可: pip install scikit-image 环境安装成功. 2.通过python安装ffmp
-
python通过ffmgep从视频中抽帧的方法
如下所示: ffmpeg中文文档:http://linux.51yip.com/search/ffmpeg ffmpeg -i test_baofeng.wmv -y -f image2 -ss 00:00:03 -vframes 1 myframe.jpg ffmpeg -i test.mp4 -y -f mjpeg -ss 3 -t 1 test1.jpg -f fmt 强迫采用格式fmt -I filename 输入文件 -y 覆盖输出文件 -t duration 设置纪录时间 hh:mm
-
python 读取视频,处理后,实时计算帧数fps的方法
实时计算每秒的帧数 cap = cv2.VideoCapture("DJI_0008.MOV") #cap = cv2.VideoCapture(0) # Define the codec and create VideoWriter object #fourcc = cv2.cv.FOURCC(*'XVID') fourcc = cv2.VideoWriter_fourcc(*'XVID') out = cv2.VideoWriter('output1.avi', fourcc, 2
-
python使用opencv按一定间隔截取视频帧
关于opencv OpenCV 是 Intel 开源计算机视觉库 (Computer Version) .它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法. OpenCV 拥有包括 300 多个 C 函数的跨平台的中.高层 API .它不依赖于其它的外部库 -- 尽管也可以使用某些外部库. OpenCV 对非商业应用和商业应用都是免费 的.同时 OpenCV 提供了对硬件的访问,可以直接访问摄像头,并且 opencv 还提供了一个简单的 GUI(graph
-
python实现批量视频分帧、保存视频帧
本篇博客介绍利用python脚本实现视频分帧,并将每一帧保存到本地.主要基于opencv包来实现,在运行代码前确保opencv包已正确安装.下面是主要代码: import os import cv2 videos_src_path = '/home/shao/violence_detection_code/Movies_Dataset/fights' videos_save_path = '/home/shao/violence_detection_code/Movies_Dataset/fig
-
python tools实现视频的每一帧提取并保存
Preface 最近在做 video caption 相关,要处理大量视频. 今天碰到一个问题,就是要将 YoutubeClips 数据集 中的 avi 格式的视频,将其视频中的每一帧提取出来.之后用 High accuracy optical flow estimation based on a theory for warping提出的 Optical Flow(光流),提取运动的光流特征. Method 1 方法 1 是最简单的,用 FFmpeg工具来完成. 具体的网上有很多这方面的资料,
-
使用Python实现跳帧截取视频帧
本文实例为大家分享了Python跳帧截取视频帧的具体代码,供大家参考,具体内容如下 可以自由设定时长来截取视频,经实测效果理想.期间遇到的一个麻烦是我的视频文件在D:盘,在原视频D盘目录上不能保存截取的图片文件,后改为在C:盘上保存,正常.具体原因不明,有网友知道原因所在,请告知. import cv2 import os def save_img(): video_path =r'读入视频路径' videos = os.listdir(video_path) for video_name in
-
Android截取视频帧并转化为Bitmap示例
MainActivity如下: 复制代码 代码如下: package cn.testmediametadataretriever; import java.io.File; import java.io.FileOutputStream; import android.media.MediaMetadataRetriever; import android.os.Bundle; import android.os.Environment; import android.app.Activity;
-
python ffmpeg任意提取视频帧的方法
环境准备 1.安装 FFmpeg 音/视频工具 FFmpeg 简易安装文档 2.安装 ffmpeg-python pip3 install ffmpeg-python 3.[可选]安装 opencv-python pip3 install opencv-python 4.[可选]安装 numpy pip3 install numpy 视频帧提取 准备视频素材 抖音视频素材下载:https://anoyi.com/dy/top 基于视频帧数提取任意一帧 import ffmpeg import
-
Python快速从视频中提取视频帧的方法详解
目录 1.抽取视频帧 2.多线程方法 3.整体代码 补充 Python快速提取视频帧(多线程) 今天介绍一种从视频中抽取视频帧的方法,由于单线程抽取视频帧速度较慢,因此这里我们增加了多线程的方法. 1.抽取视频帧 抽取视频帧主要使用了 Opencv 模块. 其中: camera = cv2.Videocapture( ) ,函数主要是通过调用笔记本内置摄像头读取视频帧: res, image = camera.read( ) 函数主要是按帧读取视频,返回值 “res” 是布尔型,成功读取返回 T
-
python读取和保存视频文件
为了获取视频,应该创建一个 VideoCapture 对象.他的参数可以是设备的索引号,或者是一个视频文件.设备索引号就是在指定要使用的摄像头. 一般的笔记本电脑都有内置摄像头.所以参数就是 0.你可以通过设置成 1 或者其他的来选择别的摄像头.之后,你就可以一帧一帧的捕获视频了.但是最后,别忘了停止捕获视频. import numpy as np import cv2 cap=cv2.VideoCapture(0) while (True): ret,frame=cap.read() gray
-
python 将视频 通过视频帧转换成时间实例
我就废话不多说了,还是直接看代码吧! def frames_to_timecode(framerate,frames): """ 视频 通过视频帧转换成时间 :param framerate: 视频帧率 :param frames: 当前视频帧数 :return:时间(00:00:01:01) """ return '{0:02d}:{1:02d}:{2:02d}:{3:02d}'.format(int(frames / (3600 * fram
-
Python提取视频帧图片实例代码
为了从视频中提取每一帧图片,编写Python脚本实现该功能 video_path为指定的视频路径 interval为指定分割视频是是否跳帧,默认不跳帧,即全部分割 width, height 为指定对分割帧图片调整大小,默认不调整 该脚本自动对帧图片编号,设置为7位编码,最多可分割9999999帧图片,即92小时的30FPS视频 # !/usr/bin/env python # -*- coding: utf-8 -*- # ===================================
-
php截取视频指定帧为图片
截取视频指定帧为图片,php ffmpeg扩展已经完美实现: $movie = new ffmpeg_movie($video_filePath); $ff_frame = $movie->getFrame(1); $gd_image = $ff_frame->toGDImage(); $img="./test.jpg"; imagejpeg($gd_image, $img); imagedestroy($gd_image); 然而问题来了,智能手机拍摄的视频,由于拍摄方向
随机推荐
- EasyUi datagrid 实现表格分页
- jQueryUI Sortable 应用Demo(分享)
- Perl遍历目录和使用Linux命令分析日志的代码实例分享
- 浅谈Swift编程中switch与fallthrough语句的使用
- C#基于WebBrowser获取cookie的实现方法
- C# 判断字符为空的6种方法的效率实测对比
- JSP跨iframe如何传递参数实现代码
- Lua协程(coroutine)程序运行分析
- JavaScript中的闭包
- 浏览器主页不再害怕被修改
- eclipse搭建android开发环境详细步骤
- Android提高之AudioRecord实现助听器的方法
- C#设置输入法实例分析
- 拨号网络的简单知识
- nodeJS微信分享
- python实现发送邮件功能代码
- pandas 实现将重复表格去重,并重新转换为表格的方法
- vue自定义指令的创建和使用方法实例分析
- mybatis插入与批量插入返回ID的原理详解
- JavaScript JMap类定义与使用方法示例