yapısında idi Bu kod hakkında yardım aldım, ancak kodu derlerken bir hata var gibi görünüyor.Bu türlerden biri olması beklenen girdi: char Bunun yerine yapısı
"Expected input to be one of these types:
char
Instead its type was struct."
ne yanlış olabilir:
function search;
Videoinfo = dir('*videotest.avi');
File = {Videoinfo};
nfiles = length(File);
if nfiles == 0
error('No avi files available in this directory');
end
for objnum = 1 : nfiles
videoobjs(objnum) = VideoReader(File{objnum});
end
outobj = VideoWriter('newvideo.avi');
open(outobj);
while true
someleft = arrayfun(@hasFrame, videoobjs);
if ~all(someleft); break; end
for objnum = 1 : nfiles
thisframe(:,:,:,objnum) = readFrame(videoobjs(objnum));
meanframe = mean(thisframe, 4);
writeVideo(outobj, meanframe);
end
end
close(outobj);
for objnum = 1 : nfiles
close(videoobjs(objnum));
end
end
aşağıdaki hata programı çalıştırırken görünen tutar? (dir
döndü) değişken, VideoInfo
dizeleri bir struct
değil bir hücre dizisi olduğu için
iplik yardım https için burada her bir listeye
File
ayarlamak olacaktır: //www.mathworks .com/matlabcentral/answers/273516-no-avi-files-available –Kodunuzu hata ayıklayıcısını kullanarak adım adım çalıştırın ve veri yapısını kontrol edin. 'dir' bir yapıyı döndürür, bir liste değil. Bu, dosya adı olmayan "File {objnum}" biter. – Daniel