0
我有300帧RGB mat数据,我想知道是否有方法使用videowriter将这些mat帧转换为avi文件?我曾尝试使用imwrite和videowriter,但无法使代码正常工作。RGB mat to avi matlab
我有300帧RGB mat数据,我想知道是否有方法使用videowriter将这些mat帧转换为avi文件?我曾尝试使用imwrite和videowriter,但无法使代码正常工作。RGB mat to avi matlab
我不知道你的数据是如何格式化的,但这里是一个小程序,以帮助您开始:
% Generate sample frames
for i = 1:300
frames{i} = rand(240, 300, 3);
end
% Write sample frames to disk
v = VideoWriter('c:/data/test.avi');
v.open;
for i = 1:300
v.writeVideo(frames{i});
end
v.close;
有很多的在您的AVI文件的参数,你可以调整,包括文件格式和帧速率。请参阅VideoWriter documentation。
如果通过垫数据您的意思是单独的mat文件包含一个单一的变量与帧信息,您需要加载您的循环内的每个mat文件并将数据写入VideoWriter对象。例如,假设所有毡文件c:/data/frames
文件夹下和名称在frame1.mat
到frame300.mat
格式,并且每个垫文件有一个名为frame
单一变量:
for i = 1:300
load (sprintf('c:/data/frames/frame%d.mat', i), 'frame');
v.writeVideo(frame);
end
谢谢你,我是在复杂的东西,试图使用imwrite。 – zlangley