я хочу использовать 2D массив для хранения всех значений Img1, Img2 и по сравнению vlaue из Img1 и Img2, Я хочу для того чтобы достигнуть алгоритма любит:MATLAB с использованием 2D массива
% read in the images from a folder one by one:
somefolder = 'folder';
filelist = dir([somefolder '/*.jpg']);
s=numel(filelist);
C = cell(length(filelist), 1);
for k=1:s
C{k}=imread([somefolder filelist(k).name]);
end
%choose any of the two images to compare
for t=1:(s-1)
for r=(t+1):s
img1=C{r};
img2=C{t};
ssim_value[num][1]=img1; % first img
ssim_value[num][2]=img2; % second img
ssim_value[num][3]=mssim; % ssim value of these two images
end
end
Итак, есть ошибка в использовании 2D-массива (ssim_value), который я использовал, что является правильным способом его инициализации и как достичь цели, которая сохраняет значения, которые я хочу сохранить.
Не мог бы кто-нибудь помочь мне. Заранее спасибо.
У вас есть питон фон? Дайте 'ssim_value' попытку без квадратных скобок. Попробуйте что-то вроде: 'ssim_value {num, 1}' – Schorsch
Спасибо, я попробовал ваш метод, он может работать, мне нужно загрузить изображения всей папки, чтобы увидеть, как, tks. – user2753594
Используйте команду 'fullfile' для создания строк для имен файлов/папок:' fullfile (somefolder, '* .jpg') 'лучше, чем' [somefolder '/ *. Jpg'] '. – Shai