博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
将图片序列转化为视频文件
阅读量:6563 次
发布时间:2019-06-24

本文共 1726 字,大约阅读时间需要 5 分钟。

%下面不规范的注释就不用介意了
%手动选择存有图片的文件夹
srcDic = uigetdir('C:\Users\NEVERGUVEIP\Desktop\机器学习\my_train');
cd(srcDic);
%读取图片名字
allnames = struct2cell(dir('*.jpg'));
[k,len]=size(allnames);
aviobj = VideoWriter('driver.avi');%给视频起名字
aviobj.FrameRate = 5;%设置帧率
open(aviobj)
%创作视频
for i = 1:len
    name = allnames{1,i};
    frame = imread(name);
    writeVideo(aviobj,frame);
end
close(aviobj)
%在你存放图片的路径下就会又视频了,高兴,这么简单呀,哈哈哈
%这个没有试
一,将图片序列转化为视频文件

function video=frames2Video(framesPath,videoName,quality,Compressed,fps,startFrame,endFrame)%framesPath :图像序列所在路径,同时要保证图像大小相同%videoName:  表示将要创建的视频文件的名字%quality:    生成视频的质量 0-100%Compressed: 压缩类型, 'Indeo3'(默认), 'Indeo5', 'Cinepak', 'MSVC', 'RLE' or 'None'%fps: 帧率%startFrame ,endFrame ;表示从哪一帧开始,哪一帧结束if(exist('videoName','file'))    delete videoName.aviend%生成视频的参数设定aviobj=avifile(videoName);  %创建一个avi视频文件对象,开始时其为空aviobj.Quality=quality;aviobj.Fps=fps;aviobj.compression=Compressed;%读入图片for i=startFrame:endFrame    fileName=sprintf('%08d',i);    %根据文件名而定 我这里文件名是00000001.jpg 00000002.jpg ....    frames=imread([framesPath,fileName,'.jpg']);    aviobj=addframe(aviobj,uint8(frames));endaviobj=close(aviobj); % 关闭创建视频end
在command window里输入

path='你的文件路径';frames2Video(path,'dog',90,'None',5,1,32);
二,视频文件转化为图片

function avi2Frames(path)mov=aviread(path);          framesNum=size(mov,2);                                                                                                       for i=1:framesNum  frames=frame2im(mov(i));                                str=strcat('a',int2str(i),'.jpg');                           imwrite(frames,str);endend
代码未做优化,可以先预分配空间
同时对于很多使用程序健壮的语句没有加进去

转载于:https://www.cnblogs.com/neverguveip/p/9457248.html

你可能感兴趣的文章
PHP命令行参数
查看>>
C++后台服务如何高效实现多个定时器任务
查看>>
图例解析四大UML关系【转】
查看>>
函数实现不放在头文件的原因,及何时可以放头文件的情况【转】
查看>>
MySQL This function has none of DETERMINISTIC, NO SQL...错误1418 的原因分析及解决方法
查看>>
关闭IE窗口
查看>>
MonoDB的数据准备
查看>>
tomcat和servlet关系
查看>>
深入理解java虚拟机,内存管理部分
查看>>
【转】一个lucene的官网例子
查看>>
Knockout2.x:ko.dataFor()、ko.contextFor()使用
查看>>
产品经理专业术语
查看>>
mysql常用语法
查看>>
Windows Server 2012 R2工作文件夹⑨:自动发现设置
查看>>
《马哥教育协办GIAC、GOPS顶级技术峰会完美落幕》
查看>>
查mac对应ip的不同系统命令
查看>>
windows 2003 下oracle从10.2.0.1升级到10.2.0.4
查看>>
[C#]从URL中获取路径的最简单方法-new Uri(url).AbsolutePath
查看>>
远程桌面的分辨率最大不会超过本机真实物理机的分辨率
查看>>
mysql winxp 本地 10061 错误
查看>>