Loop in a array
Afficher commentaires plus anciens
Hi,
I have a question. I have an image with three bands. How can I apply a loop for do an operation to all the pixels?
image1=imread('image_1.tif'); %I've load the image. Has a length of 4x4x3
band1a= image_1(:,:,1);
band2a= image_1( :,:,2);
band3b= image_1(:,:,3);
for i = 1:numel(band1b)
(...) this is the part of the operation
output= ?
Thanks a lot in advance,
5 commentaires
Sabarinathan Vadivelu
le 26 Nov 2012
Which operation u have to perform on all the pixels?
Emmanuelle
le 26 Nov 2012
Jan
le 26 Nov 2012
Please post a running piece of code. In the original question, "band1b" is not defined and we cannot guess its value. In the comment "l1, l2, t2, interplan, b1abc" is not defined.
Usually interpolations can be performed for a full vector or even a matrix directly without a loop.
Emmanuelle
le 26 Nov 2012
Modifié(e) : Emmanuelle
le 27 Nov 2012
Emmanuelle
le 27 Nov 2012
Réponses (1)
Image Analyst
le 26 Nov 2012
0 votes
What is image_1? All you have shown up until that point is image1, which is a different variable.
3 commentaires
Emmanuelle
le 27 Nov 2012
Image Analyst
le 27 Nov 2012
Regarding "I know it could be something confusing but what I want is to get this last three values (spout1_c, spout2_c and spout3_c) for every pixel, in every band." How about this:
image1(:, :, 1) = spout1_a;
image1(:, :, 2) = spout1_b;
image1(:, :, 3) = spout1_c;
Emmanuelle
le 27 Nov 2012
Catégories
En savoir plus sur Image Arithmetic 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!