1

VideoWriter を使用して、大量の tiff 画像を avi ビデオに変換しようとしています。画像をビデオに変換する for ループに問題があります。これが私がこれまでに持っているコードです:

function tif2avi

clc; close all;
[imagelist,p]=uigetfile('*.tif','MultiSelect','on',...
     'Select LIST to plot'); pause(0.5); cd(p);
 if ~iscell(imagelist); disp('imagelist not cell'); return; end;

outputVideo = VideoWriter('0424_rat01.avi');
outputVideo.FrameRate = 16;
outputVideo.Quality = 100;
open(outputVideo);

for i=1:numel(imagelist)
    img=imread(imagelist(i));
    writeVideo(outputVideo,img);
end

誰でも私を助けることができますか?問題は for ループにあると思います。

コードを実行しようとすると、次のエラーが表示されます。

Warning: No video frames were written to this file. The file may be invalid. 
> In VideoWriter.VideoWriter>VideoWriter.close at 289
  In VideoWriter.VideoWriter>VideoWriter.delete at 238 
Error using imread>parse_inputs (line 476)
The filename or url argument must be a string.

Error in imread (line 335)
[filename, fmt_s, extraArgs] = parse_inputs(varargin{:});

Error in tif2avi (line 14)
    img=imread(imagelist(i));
4

1 に答える 1