Error using == Number of array dimensions must match for binary array op.

1 vue (au cours des 30 derniers jours)
Solmon Raju
Solmon Raju le 14 Fév 2020
Commenté : Walter Roberson le 14 Fév 2020
myFolder = 'C:\Users\cse\Desktop\images';
% if ~isdir(myFolder)
% errorMessage = sprintf('Error: The following folder does not exist:\n%s', myFolder);
% uiwait(warndlg(errorMessage));
% return;
% end
a=uigetfile('C:\Users\cse\Desktop\1.jpg');
filePattern = fullfile(myFolder, '*.jpg');
jpegFiles = dir(filePattern);
for k = 1:length(jpegFiles)
baseFileName = jpegFiles(k).name;
fullFileName = fullfile(myFolder, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
imageArray = imread(fullFileName);
figure(k),imshow(imageArray);
if(a==imageArray)
disp('yes');
end
end

Réponses (1)

Bhaskar R
Bhaskar R le 14 Fév 2020
Modifié(e) : Bhaskar R le 14 Fév 2020
You are comparing character array with image matrix that is why you got error
if(a==imageArray)
disp('yes');
end
% a - Char array
% imageArray - Image numeric matrix
I think you are trying to compare filenames so replace if condition as
if(strcmp(a,baseFileName)
disp('yes');
end
  2 commentaires
Solmon Raju
Solmon Raju le 14 Fév 2020
can u explain elabroately??
Walter Roberson
Walter Roberson le 14 Fév 2020
uigetfile returns the name of a file, not the contents of the file. But imageArray is the contents of one of the files, not the name of a file.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Startup and Shutdown dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by