Matlab 视频与图像之间的相互转换
matlab版本是2015b,其中更新了部分函数库之前网上相关程序不适用于新版本,在此提供适用于新版本的程序:
帧序列转换为视频
- function video = frames2video(framepath , videoname)
- %framepath : 表示图像序列所在的路径,同时保证图像的大小相等
- %videoname : 表示将要创建视频的名字
- r_path = framepath;
- videoName = videoname;
- %初始化一个avi文件obj
- obj = VideoWriter(videoName);
- open(obj)
- dirs = dir([r_path,'*.png']);
- for i=1:length(dirs)
- fname=strcat(sprintf('%05d',i),'.png');
- im=imread([r_path dirs(i).name]);
- %一帧一帧的写入avi
- writeVideo(obj,im);
- end
- %将缓存数据写入avi
- close(obj);
- % 返回video
- video = obj;
- end
视频转化为帧序列
- function Framepath = video2frames(videopath , videoname , filename , framerate)
- %videopath : 视频路径
- %videoname : 视频名字
- %filename : 存放图片帧的文件夹
- %framerate : 多少张图片提取一张图片
- FileName = filename
- VideoPath = videopath;
- VideoName = videoname;
- FrameRate = framerate;
- FilePath = ['./',filename]
- if ~exist(FilePath)
- mkdir(FilePath)
- end
- cd (FilePath)
- addpath(VideoPath);
- videoInfo = VideoReader(VideoName);
- for i = 1:FrameRate:videoInfo.NumberOfFrames
- %获得图片对象
- temp = read(videoInfo,i);
- imwrite(temp,strcat(sprintf('%05d',i),'.jpg'),'jpg');% 保存帧
- end
- cd ..
- Framepath = FilePath;
- end
Matlab 视频与图像之间的相互转换的更多相关文章
- matlab各类数据l图像之间的转化
matlab各类数据图像之间的转化 rgb类型转化为二值的步骤例如以下: 1.採用命令im2double将rgb类型转化三维的double >> str='E:\programing\Ei ...
- C# Enum Name String Description之间的相互转换
最近工作中经常用到Enum中Value.String.Description之间的相互转换,特此总结一下. 1.首先定义Enum对象 public enum Weekday { [Descriptio ...
- 速战速决 (6) - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换
[源码下载] 速战速决 (6) - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换 作者:webabcd 介绍速战速决 之 PHP ...
- json和string 之间的相互转换
json和string 之间的相互转换 <script type="text/javascript"> //先认识一下js中json function showInfo ...
- Android中常用单位dp,px,sp之间的相互转换
MainActivity如下: package cc.testunitswitch; import android.os.Bundle; import android.util.DisplayMetr ...
- C#中String 与Color之间的相互转换
C#中String 与Color之间的相互转换 ————————————宋兴柱 其实,我们平常如果要在数据库存放Color类型值的话,肯定会在数据库中建立varchar类型.对吧.但是Colo ...
- 深入理解c++中char*与wchar_t*与string以及wstring之间的相互转换 [转]
本篇文章是对c++中的char*与wchar_t*与string以及wstring之间的相互转换进行了详细的分析介绍,需要的朋友参考下. #ifndef USE_H_ #define USE_H_ # ...
- 深入理解c++中char*与wchar_t*与string以及wstring之间的相互转换
本篇文章是对c++中的char*与wchar_t*与string以及wstring之间的相互转换进行了详细的分析介绍,需要的朋友参考下-复制代码 代码如下: #ifndef USE_H_ ...
- java中XMLGregorianCalendar类型和Date类型之间的相互转换
import java.text.SimpleDateFormat;import java.util.Date;import java.util.GregorianCalendar;import ja ...
随机推荐
- git整理
git图形客户端:SourceTree bash: 先初始化: git init 添加远程仓库: git remote add sae https://git.sinacloud.com/newapp
- FusionCharts和highcharts 饼图区别!
FusionCharts ---------------脚本--------------- <script src="../../../fashioncharts/js/FusionC ...
- TFS工作区(Workspaces )命令
Workspaces 命令 tf workspaces [/owner:ownername] [/computer:computername] [/server:servername] [/forma ...
- Transaction (Process ID xxx) was deadlocked on lock
Transaction (Process ID 161) was deadlocked on lock | communication buffer resources with another pr ...
- php性能剖析的几款软件
1. xhprof (http://pecl.php.net/package/xhprof) facebook 2009年开源 2. xdebug 3. valgrind 4. cachegri ...
- dubbo配置
Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合).从服务模型的角度来看,Dubbo采用的是一种非常简单的模 ...
- Delphi控件之---通过编码学习TStringGrid(也会涉及到Panel控件,还有对Object Inspector的控件Events的介绍
我是参考了万一的博客里面的关于TStringGrid学习的教程,但是我也结合自己的实际操作和理解,加入了一些个人的补充,至少对我有用! 学用TStringGrid之——ColCount.RowCoun ...
- Flashback Data Archive ( Oracle Total Recall ) introduced in 11g
Flashback Data Archive feature is part of Oracle Total Recall technology. Flashback Data Archive fea ...
- Selenium 简单的例子
Selenium是一个web自动化验收测试框架. Selenium Client Driver - Selenium 2.0 Document http://seleniumhq.github.i ...
- 【监听文件 多线程】使用java--WatchService监听文件 开启多线程copy文件
有一个小需求: 在PC跟前没有人的时候,迅雷下载文件 至PC磁盘上,并且自动移动文件到U盘上,小主只要在走的时候取走U盘即可. 基于这个需求,有了下面这段代码:[JDK 1.8] package c ...