Matlab - Problema con un bucle para una imagen

 
Vista:

Problema con un bucle para una imagen

Publicado por Emma (13 intervenciones) el 23/11/2012 09:59:21
Hola,

Tengo una pregunta. Tengo un proceso de código elaborado para poder aplicarlo a una imagen, pero solo se me ejecuta para el primer píxel. No sé bien como hacer el bucle. Os muestro el código

[
indent]image1=imread('image234.tif'); % Aquí cargo la imagen y la divido entre las tres bandas
band1a= image234(:,:,1);
band2a= image234(:,:,2);
band3b= image234(:,:,3);

for i = 1:numel(band1b) % aquí empezaría la parte que no sé como hacer un bucle. quiero que me haga esto para todos los píxeles de la imagen
ma = zeros(100,1);
ma(10) = banda1b(i);
end
for i = 1:numel(band2b)
ma(25) = banda2b(i);
end
for i = 1:numel(band3b)
ma(50) = band3b(i);
end

vec1= [10, 25, 50]';
pos1= ma(10);
pos2= ma(25);
pos3= ma(50);
vec2= [pos1 pos2 pos3];
t= 0:100;
xi= 0:1:100;
interplan= interp1(vec1,vec2,t,'spline');
sp1_a= spb1y.*interplan; %estas variables ya estan definidas anteriormente
sp1_b= sp1_a./spsum1;
sp2_a= spb2y.*interplan;
sp2_b= sp2_a./spsum2;
sp3_a= spb3y.*interplan;
sp3_b= spout3_a./spsum3;
spout1_c= sum(spout1_b);
spout2_c= sum(spout1_b);
spout3_c= sum(spout1_b);

Y una vez con estos tres últimos resultados, me gustaría poder guardar el resultado del spout1_c en la misma posición del píxel en la banda 1, el siguiente en la 2, etc.

Si alguien me pudiera ayudar la estaría muy agradecida. Muchas gracias de antemano y saludos,

Núria
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder