Borrar filtros
Borrar filtros

What is the problem in the for loop?

2 visualizaciones (últimos 30 días)
Shaila parvin
Shaila parvin el 17 de Mzo. de 2014
Editada: Image Analyst el 17 de Mzo. de 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

Respuesta aceptada

per isakson
per isakson el 17 de Mzo. de 2014
That is hard to tell based on the information you provide. However, here are some links on debugging in Matlab
  2 comentarios
Shaila parvin
Shaila parvin el 17 de Mzo. de 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 el 17 de Mzo. de 2014
Editada: Image Analyst el 17 de Mzo. de 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.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Language Support en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by