matlab版本是2015b,其中更新了部分函数库之前网上相关程序不适用于新版本,在此提供适用于新版本的程序:

帧序列转换为视频

  1. function video = frames2video(framepath , videoname)
  2. %framepath : 表示图像序列所在的路径,同时保证图像的大小相等
  3. %videoname : 表示将要创建视频的名字
  4. r_path = framepath;
  5. videoName = videoname;
  6. %初始化一个avi文件obj
  7. obj = VideoWriter(videoName);
  8. open(obj)
  9. dirs = dir([r_path,'*.png']);
  10. for i=1:length(dirs)
  11. fname=strcat(sprintf('%05d',i),'.png');
  12. im=imread([r_path dirs(i).name]);
  13. %一帧一帧的写入avi
  14. writeVideo(obj,im);
  15. end
  16. %将缓存数据写入avi
  17. close(obj);
  18. % 返回video
  19. video = obj;
  20. end

视频转化为帧序列

  1. function Framepath = video2frames(videopath , videoname , filename , framerate)
  2. %videopath : 视频路径
  3. %videoname : 视频名字
  4. %filename : 存放图片帧的文件夹
  5. %framerate : 多少张图片提取一张图片
  6. FileName = filename
  7. VideoPath = videopath;
  8. VideoName = videoname;
  9. FrameRate = framerate;
  10. FilePath = ['./',filename]
  11. if ~exist(FilePath)
  12. mkdir(FilePath)
  13. end
  14. cd (FilePath)
  15. addpath(VideoPath);
  16. videoInfo = VideoReader(VideoName);
  17. for i = 1:FrameRate:videoInfo.NumberOfFrames
  18. %获得图片对象
  19. temp = read(videoInfo,i);
  20. imwrite(temp,strcat(sprintf('%05d',i),'.jpg'),'jpg');% 保存帧
  21. end
  22. cd ..
  23. Framepath = FilePath;
  24. end

Matlab 视频与图像之间的相互转换的更多相关文章

  1. matlab各类数据l图像之间的转化

    matlab各类数据图像之间的转化 rgb类型转化为二值的步骤例如以下: 1.採用命令im2double将rgb类型转化三维的double >> str='E:\programing\Ei ...

  2. C# Enum Name String Description之间的相互转换

    最近工作中经常用到Enum中Value.String.Description之间的相互转换,特此总结一下. 1.首先定义Enum对象 public enum Weekday { [Descriptio ...

  3. 速战速决 (6) - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换

    [源码下载] 速战速决 (6) - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换 作者:webabcd 介绍速战速决 之 PHP ...

  4. json和string 之间的相互转换

    json和string 之间的相互转换 <script type="text/javascript"> //先认识一下js中json function showInfo ...

  5. Android中常用单位dp,px,sp之间的相互转换

    MainActivity如下: package cc.testunitswitch; import android.os.Bundle; import android.util.DisplayMetr ...

  6. C#中String 与Color之间的相互转换

    C#中String 与Color之间的相互转换 ————————————宋兴柱     其实,我们平常如果要在数据库存放Color类型值的话,肯定会在数据库中建立varchar类型.对吧.但是Colo ...

  7. 深入理解c++中char*与wchar_t*与string以及wstring之间的相互转换 [转]

    本篇文章是对c++中的char*与wchar_t*与string以及wstring之间的相互转换进行了详细的分析介绍,需要的朋友参考下. #ifndef USE_H_ #define USE_H_ # ...

  8. 深入理解c++中char*与wchar_t*与string以及wstring之间的相互转换

    本篇文章是对c++中的char*与wchar_t*与string以及wstring之间的相互转换进行了详细的分析介绍,需要的朋友参考下-复制代码 代码如下:    #ifndef USE_H_     ...

  9. java中XMLGregorianCalendar类型和Date类型之间的相互转换

    import java.text.SimpleDateFormat;import java.util.Date;import java.util.GregorianCalendar;import ja ...

随机推荐

  1. Java笔记:Number

    序号 方法与描述 1 xxxValue()将number对象转换为xxx数据类型的值并返回. 2 compareTo()将number对象与参数比较. 3 equals()判断number对象是否与参 ...

  2. java中的集合/容器的数据结构

    最近双11在网上买了本 数据结构和算法--java语言实现,正在啃,同时在慕课网上的学习进度来到了集合框架这一类,对于这一块算是刚刚了解,本科的时候数据结构学习的是严蔚敏老师的那本数据结构,代码的实现 ...

  3. Datazen安装

    Datazen是被微软收购的移动端全平台的数据展现解决方案.此篇主要介绍其安装过程. 下载页面,需要留意一下的是目前还没有中文版: http://www.datazen.com/start/ 点击Do ...

  4. RabbitMQ的几种应用场景

    RabbitMQ是一个消息代理,从“生产者”接收消息并传递消息至“消费者”,期间可根据规则路由.缓存.持久化消息.“生产者”也即message发送者以下简称P,相对应的“消费者”乃message接收者 ...

  5. TDD学习笔记【四】--- 如何隔离相依性 - 基本的可测试性

    前言 相信许多读者都听过「可测试性」,甚至被它搞的要死要活的,还觉得根本是莫名其妙,徒劳无功.今天这篇文章,主要要讲的是对象的相依性,以及对象之间直接相依,会带来什么问题.为了避免发生因相依性而导致设 ...

  6. BZOJ 1305: [CQOI2009]dance跳舞 二分+最大流

    1305: [CQOI2009]dance跳舞 Description 一次舞会有n个男孩和n个女孩.每首曲子开始时,所有男孩和女孩恰好配成n对跳交谊舞.每个男孩都不会和同一个女孩跳两首(或更多)舞曲 ...

  7. curl使用简单介绍

    http://www.linuxidc.com/Linux/2008-01/10891.htm Curl是Linux下一个很强大的http命令行工具,其功能十分强大. 二话不说,先从这里开始吧! $ ...

  8. Go语言 模板的使用(一)

    使用Parse package main import ( "html/template" "net/http" ) func SayHello(w http. ...

  9. react native 键盘遮挡按钮点击事件

    在做项目的时候,我遇到一个很奇怪的问题,我先描述一下问题,在InputText输入内完成以后,点击按钮进行下一步的操作的时候,第一次点击的时候,按钮没有响应,第二次点击的时候才会响应.这样对用户体验有 ...

  10. WebGL入门教程(三)-webgl动画

    前面文章: WebGL入门教程(一)-初识webgl WebGL入门教程(二)-webgl绘制三角形 WebGL动画有移动.旋转和缩放,我们将移动.旋转和缩放图形,然后将其绘制到屏幕上,称为变换(tr ...