getting absurd result in For loop
Afficher commentaires plus anciens
multi = dir('D:\testing\abrupt\*.jpg');
for i = 1:2:length(multi)
filename = strcat('D:\testing\abrupt\',num2str(i),'.jpg');
I = imread(filename);
I1 = rgb2gray(I);
mat1(:,:,i)= I1;
end
In the folder "multi" images are saved as 1.jpg 3.jpg 5.jpg...etc.the total number of images in "multi"was 133 and it is like 1,3,5,7....265, means only odd number of images are saved. when this code was run, the I am getting m-by-n-by-133 mat1(:,:,i) values but problem encountered is that mat1(:,:,2), mat1(:,:,4), mat1(:,:,6) or mat1(:,:,even no.) are having all matrix elements as zero whereas mat1(:,:,odd number) are giving correct result? How can I solve this problem??
Réponse acceptée
Plus de réponses (1)
In the for loop you are taking only even numbers....change it to 1:1:length(multi)
multi = dir('D:\testing\abrupt\*.jpg');
for i = 1:1:length(multi)
filename = strcat('D:\testing\abrupt\',num2str(i),'.jpg');
I = imread(filename);
I1 = rgb2gray(I);
mat1(:,:,i)= I1;
end
1 commentaire
NAVNEET NAYAN
le 31 Mar 2017
Catégories
En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!