matlab下将图片序列转化为视频文件 && 将为视频文件转化图片序列

将图片序列转化为视频文件

程序如下:

framesPath = 'E:\img\';%图像序列所在路径,同时要保证图像大小相同
videoName = 'Bolt.avi';%表示将要创建的视频文件的名字
fps = 25; %帧率
startFrame = 1; %从哪一帧开始
endFrame = 350; %哪一帧结束

if(exist('videoName','file'))
    delete videoName.avi
end

%生成视频的参数设定
aviobj=VideoWriter(videoName);  %创建一个avi视频文件对象,开始时其为空
aviobj.FrameRate=fps;

open(aviobj);%Open file for writing video data
%读入图片
for i=startFrame:endFrame
    fileName=sprintf('%04d',i);    %根据文件名而定 我这里文件名是0001.jpg 0002.jpg ....
    frames=imread([framesPath,fileName,'.jpg']);
    writeVideo(aviobj,frames);
end
close(aviobj);% 关闭创建视频
将为视频文件转化图片序列

程序如下:

fileName = 'E:\flip.mp4'; 
obj = VideoReader(fileName);
numFrames = obj.NumberOfFrames;% 帧的总数
%若不存在文件夹,则新建文件夹
if ~exist('ImageTest')
     mkdir('ImageTest');
end
 for k = 1 : numFrames
     frame = read(obj,k);% 读取数据
     %imshow(frame);%显示帧
     imwrite(frame,strcat('./ImageTest/',sprintf('%04d.jpg',k)),'jpg');% 保存帧
     %保存格式为0001.jpg,0002.jpg,...
end

转自:http://blog.csdn.net/hjl240/article/details/52402543



posted @   隔壁王叔叔a  阅读(3664)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示