나는 VideoWriter를 사용하여 다량의 tiff 이미지를 avi 비디오로 변환하려고합니다. for 루프를 사용하여 이미지를 비디오로 변환하는 데 문제가 있습니다. 지금까지 가지고있는 코드는 다음과 같습니다.tiff 이미지를 avi로 matlab에 변환
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));
"문제가 있습니다"에 대해 자세히 설명해 주시겠습니까? – Oleg
코드를 실행하려고하면이 오류가 발생합니다. 경고 :이 파일에는 비디오 프레임이 기록되지 않았습니다. 파일이 유효하지 않을 수 있습니다. VideoWriter.VideoWriter에서 >> imread> parse_inputs를 사용하여 238 오류 (라인 476)에서 VideoWriter.VideoWriter 289 > VideoWriter.delete에서 VideoWriter.close 파일명 또는 URL 인수는 문자열이어야한다. imread (줄 335)에서 오류가 발생했습니다. [filename, fmt_s, extraArgs] = parse_inputs (varargin {:}); tif2avi의 오류 (줄 14) img = imread (imagelist (i)); – zlangley