What is the problem in the for loop?

1 Ansicht (letzte 30 Tage)
Shaila parvin
Shaila parvin am 17 Mär. 2014
Bearbeitet: Image Analyst am 17 Mär. 2014
I've a problem in the for loop to extract texture features of images of a folder. The problem is in this line:
Im2=ComputeRankTransform(filename);
Can anyone please help me to access all images??
clc;
Im1=ComputeRankTransform('bi4.jpg');
folder = fullfile('E:\4-2\Thesis_codes\texture\code\dependencies');
srcFiles = dir(fullfile(folder, '*.jpg'));
for i = 1 : length(srcFiles)
% determins how many images are there in the folder,
filename = fullfile(folder,srcFiles(i).name);
thisImage = imread(filename);
Im2=ComputeRankTransform(thisImage);
sizeOfIm1=size(Im1);
sizeOfIm2=size(Im2);
if(sizeOfIm1==sizeOfIm2)
if(Im1==Im2)
fprintf('Yes\n');
else
fprintf('No\n');
end
else
fprintf('No Dimension\n');
end
end

Akzeptierte Antwort

per isakson
per isakson am 17 Mär. 2014
That is hard to tell based on the information you provide. However, here are some links on debugging in Matlab
  2 Kommentare
Shaila parvin
Shaila parvin am 17 Mär. 2014
You can ask me any information you need:
My code is:
clc;
Im1=ComputeRankTransform('bi4.jpg');
%Im2=ComputeRankTransform('bi9.jpg');
folder = fullfile('E:\4-2\Thesis_codes\texture\code\dependencies');
srcFiles = dir(fullfile(folder, '*.jpg'));
loopCount=0;
srcFiles = dir(fullfile(folder, '*.jpg'));
for i = 1 : length(srcFiles)
fprintf('for loop %i',i);
% determins how many images are there in the folder,
filename = fullfile(folder,srcFiles(i).name);
%filename
thisImage = imread(filename);
%a=size(thisImage);
%a
%Im2=ComputeRankTransform(thisImage);
Im2=ComputeRankTransform(filename);
Im2
sizeOfIm1=size(Im1);
sizeOfIm2=size(Im2);
%sizeOfIm2
sizeOfIm2
sizeOfIm1
if(sizeOfIm1==sizeOfIm2)
if(Im1==Im2)
fprintf('Yes\n');
else
fprintf('No\n');
end
else
fprintf('No Dimension\n');
end
loopCount=loopCount+1;
end
loopCount
The function is:
function RT = ComputeRankTransform(I);
%Computes the rank transform of an image
%Input: I (one-channel image)
%Output: RT (rank transform
[rows cols] = size(I);
nPixels = rows*cols;
I = reshape(I, 1, nPixels);
[sorted, indices] = sort(I, 'descend');
RT(indices(1:nPixels)) = 1:nPixels;
RT = reshape(RT, rows, cols);
end
Image Analyst
Image Analyst am 17 Mär. 2014
Bearbeitet: Image Analyst am 17 Mär. 2014
The problem is we don't know what you mean when you say "help me to access all images" You say
thisImage = imread(filename);
so as far as we can tell, you're accessing the image right there with that line of code, and we don't know why you're asking.
By the way, you don't need to put useless tags (which I deleted) like "matlab" or "code" or similar on your post. All posts here are on MATLAB code.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by