您的位置:首页 > 编程语言 > MATLAB

Matlab 将图片输出视频文件

2020-01-14 07:39 447 查看

Matlab 读取二进制文件输出视频文件实例

clear all;
clc
V = VideoWriter(['filename.avi']); % 输出AVI文件名字
V.FrameRate = 40; % 帧率,40fps
V.Quality = 90;   % 质量,百分比,90%
open(V);
for bnumber=1:1000
fip=fopen(['E:\18.12实验\12_9 有效10组\3:7-xbZ25\A-',num2str(bnumber,'%04d'),'.bin'],'rb');
[SIN,num]=fread(fip,'uint8');  %inf表示读取文件中的所有数据,[M,N]表示
fclose(fip);
M=2560;%%% 横向分辨率,2560;
N=1348;%%% 纵向分辨率,1348;
j=1;
for k1=1:N
for k2=1:1:M
image1(k1,k2)=uint8(SIN(j)); %%% 将二进制文件写入图像文件中
j=j+1;
end
end
disp([num2str(bnumber/10),'%']);%%% 输出进度百分比
img=image1;
writeVideo(V, img); %%% 输出视频文件
end
close(V); %%% 关闭视频输出

如果是利用图片生成视频,则程序应该这样写:

f = getframe(gcf)
writeVideo(V, uint8(f.cdata));

另外,输出视频格式有如下几种:

// 语法
v = VideoWriter(filename,profile)
Profile 说明
‘Archival’ 无损压缩的 Motion JPEG 2000文件
‘Motion JPEG AVI’ Motion JPEG 编码的AVI文件
‘Motion JPEG 2000’ Motion JPEG 2000 文件
‘MPEG-4’ H.264 编码的 MPEG-4文件
‘Uncompressed AVI’ 包含 RGB24 视频的未压缩 AVI 文件
‘Indexed AVI’ 包含索引视频的未压缩 AVI 文件
‘Gray Scale AVI’ 包含灰度视频的未压缩 AVI 文件
  • 点赞
  • 收藏
  • 分享
  • 文章举报
Jr.Cui 发布了8 篇原创文章 · 获赞 2 · 访问量 969 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐