
Como binarizar pixeles en base a una condición
Publicado por Javi (4 intervenciones) el 10/10/2014 13:30:28
Hola, estoy intentando hacer un algoritmo para recorrer una imagen e identificar los objetos que aparecen en ella. Mi objetivo es según los valores que me de 'resta' de niveles de gris, binarizar los pixeles que aparecen en la imagen ImgGray.
Por ejemplo pixeles que tengan los valores por encima de 20 que se coloreen en negro y los demás en blanco. Algo estoy haciendo mal porque me sale o todo en blanco o todo en negro. Pienso que es porque cojo la imagen entera y no pixel por pixel. Como podría hacerlo pixel por pixel?
Gracias.

Por ejemplo pixeles que tengan los valores por encima de 20 que se coloreen en negro y los demás en blanco. Algo estoy haciendo mal porque me sale o todo en blanco o todo en negro. Pienso que es porque cojo la imagen entera y no pixel por pixel. Como podría hacerlo pixel por pixel?
Gracias.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
x=10;
[filas,columnas]=size(ImgGray);
for i=1:filas
resta = ImgGray(i,x:columnas)-ImgGray(i,1:columnas-x+1);
for j=1:columnas
if resta(j) > 20
im2bw(ImgGray,1);
else
im2bw(ImgGray,0);
end
end
end

Valora esta pregunta


0