Matlab 如何截取视频中的每一帧图像
实在感谢这位朋友brothers,我找了好几个小时啊~~
%这段代码可以选择一个或多个视频,根据视频名称和帧的序号对图片命名。设定的只能选择avi格式,至于其它格式的视频你可以改改代码的第一句试试%看。
%希望对你有用。
[filename,pathname,fileindex]=uigetfile('*.avi','选择视频文件','video.avi','Multiselect','on');
if ischar(filename) %只有选择了文件才进行以下计算
video=mmreader([pathname filename]);
%%General Settings:
%Duration 时间
%Name 视频名称
%Path 路径
%Tag =
%Type = mmreader
%UserData = []
%%Video Settings:
%BitsPerPixel=24
%FrameRate 视频采集速率
%Height 高度
%NumberOfFrames 总帧数
%VideoFormat 图像模式
%Width = 宽度
LEN=video.NumberOfFrames; %获得视频长度
dir=strcat(pathname,strrep(filename,'.avi',''),'\pic');
mkdir(dir);
fn=strrep(filename,'.avi','');
for k=1:LEN-1 %若read到len,常会报错如下??? MATLAB:read:readTimedOut,read到len-1就好了
frame=rgb2gray(read(video,k));
if k<10
imwrite(frame,strcat(dir,'\',fn,'-avi-000',int2str(k),'.bmp'),'bmp');%把每帧图像存入硬盘
elseif k>=10 && k<100
imwrite(frame,strcat(dir,'\',fn,'-avi-00',int2str(k),'.bmp'),'bmp');%把每帧图像存入硬盘
elseif k>=100 && k<1000
imwrite(frame,strcat(dir,'\',fn,'-avi-0',int2str(k),'.bmp'),'bmp');%把每帧图像存入硬盘
elseif k>=1000 && k<10000
imwrite(frame,strcat(dir,'\',fn,'-avi-',int2str(k),'.bmp'),'bmp');%把每帧图像存入硬盘
end
end
elseif iscell(filename)
navi=length(filename);
for n=1:navi
video=mmreader([pathname filename{n}]);
%%General Settings:
%Duration 时间
%Name 视频名称
%Path 路径
%Tag =
%Type = mmreader
%UserData = []
%%Video Settings:
%BitsPerPixel=24
%FrameRate 视频采集速率
%Height 高度
%NumberOfFrames 总帧数
%VideoFormat 图像模式
%Width = 宽度
LEN=video.NumberOfFrames; %获得视频长度
dir=strcat(pathname,strrep(filename{n},'.avi',''),'\pic');
mkdir(dir);
fn=strrep(filename{n},'.avi','');
for k=1:LEN-1 %若read到len,常会报错如下??? MATLAB:read:readTimedOut,独到len-1就好了
frame=rgb2gray(read(video,k));
if k<10
imwrite(frame,strcat(dir,'\',fn,'-avi-000',int2str(k),'.bmp'),'bmp');%把每帧图像存入硬盘
elseif k>=10 && k<100
imwrite(frame,strcat(dir,'\',fn,'-avi-00',int2str(k),'.bmp'),'bmp');%把每帧图像存入硬盘
elseif k>=100 && k<1000
imwrite(frame,strcat(dir,'\',fn,'-avi-0',int2str(k),'.bmp'),'bmp');%把每帧图像存入硬盘
elseif k>=1000 && k<10000
imwrite(frame,strcat(dir,'\',fn,'-avi-',int2str(k),'.bmp'),'bmp');%把每帧图像存入硬盘
end
end
disp(strcat(num2str(n),'/',num2str(navi),' : "',filename{n},'" Finished!',datestr(now,13)));
end
else
return
end
msgbox('所有帧提取完毕,已写入磁盘!','提示');
clear all
Matlab 如何截取视频中的每一帧图像相关推荐
- 批量跨帧提取人脸视频中的脸部区域帧图像python
代码实现功能 1.所有人脸视频在一个文件夹中. 2.跨帧提取帧图像. 3.截取帧图像的脸部区域. 3.将截取到的所有脸部图像保存到新文件夹中. 代码语言:python3.6 #这个代码实现了批量跨帧提 ...
- python OpenCV 按时间间隔截取视频中任意片段帧
通过视频制作相应的数据集,截取视频中的任意片段帧. 使用python截取视频中的任意片段帧,直接上代码: import cv2 import os# 定义视频文件路径和保存图像文件路径 video_p ...
- python识别视频中某个物体的轨迹_用Matlab来识别视频中物体的运动轨迹!
对于很多生命科学领域的研究者来说,研究生物的行为是很多人研究工作中必不可少的部分.在进行生物行为研究工作的时候,生物的运动又是重中之重.这这里我以小鼠的一段运动视频为例,教大家用Matlab来分析视频 ...
- 如何截取视频中的一部分制作成GIF动态图
如何截取视频中的一部分制作成GIF动态图?关于截取视频于转换视频格式这方面,可能还有很多朋友不能有效解决问题,当然,这和我们的操作能力关系不大,更重要的是需要一款简单实用的视频转换器,网上关于怎样把视 ...
- python如何截取视频中的某一段
使用python截取视频中的某一段,直接上代码: def cut_video(video_path, save_path):"""截取某一段视频""& ...
- 如何使用matlab从视频中提取出一帧帧图像
如何使用matlab从视频中提取出一帧帧图像 原文链接:http://blog.sina.com.cn/s/blog_a5fdbf010101ao4f.html 近期有需要,从视频里面提取图片,以前用 ...
- 如何截取视频中的一部分,制作成GIF动态图
怎么把视频做成gif 截取视频中的一部分内容,制作成GIF动态图?是先用播放器进行截取,还是说先转换视频格式,然后用相应的GIF编辑器呢.网上关于怎样把视频截取转化成gif动态图片的方法有很多,林林总 ...
- 视频编辑利器,截取视频中指定区域并实现静音操作
视频编辑中的常见需求之一就是截取视频中的指定区域,使用moviepy这个库可以轻松地实现这个目的. 需要确定我们要截取的视频区间,然后使用moviepy中的函数来实现截取操作.同时需要实现静音操作,可 ...
- 批量剪辑,截取视频中某一帧画面保存为图片
平时刷视频的时候看到好看的画面就想截图保存,那么如何批量提取视频中的某一帧画面呢?不知道怎么操作的朋友走过路过不要错过,小编分享一个方法演示具体的操作步骤,一起来看看. 运行[媒体梦工厂]这款软件中有 ...
最新文章
- python3 赋值与内存空间
- 【Android应用开发】 Universal Image Loader ( 使用简介 | 示例代码解析 )
- 3.5 将 Batch 拟合进神经网络-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授
- 项目管理:五大过程组十大领域
- 【Boost】boost库asio详解2——strand与io_service区别
- 理想汽车10月份新增12家直营交付中心 蔚来第1000座充电站上线
- 【LeetCode 剑指offer刷题】矩阵题1:4 有序矩阵中的查找( 74. Search a 2D Matrix )(系列)...
- ssms的导入功能_SSMS 17中的新增功能; PowerShell和DAX
- Application.DoEvents可能不是线程安全的
- jsp+mysql 数据库操作
- 微信小程序 解决disableScroll无法禁止小程序下拉的问题和视频铺满全屏尺寸
- WPF_界面_图片/界面/文字模糊解决之道整理
- Win10优化大师Windows 10 Manager v3.4.6.0 官方安装绿色版
- myeclipse10破解补丁激活方法
- mummer基因组共线性分析详解
- 接口测试平台-18:首页完善和项目模块初窥
- POWER BI filter函数的筛选条件可以使用度量值作为筛选条件
- iOS编译cURL库并链接darwinssl,zlib,c-ares库操作步骤
- springboot整合autopoi-web文件导出Excel,使用注解配置一多
- BugKu-图穷匕见