CAPÍTULO 3 - Pdi
CAPÍTULO 3 - Pdi
O( x, y ) = f ( I ( x, y )) , ∀( x, y ) ∈ I ( 1)
EJEMPLOS
O( x, y ) = f ( I1 ( x, y ), I 2 ( x, y )) , ∀( x, y ) ∈ I1 , I 2 ( 2)
EJEMPLOS
Objeto Objeto
Con +
Fondo x Fondo
verde negro
Mascara
binaria Fondo
+ +
Objeto
Mascara
inversa
Fondo
Fondo
+
A x Objeto
Apare-
negro
cer
) f ( I ( x + i, y + j )) , ∀(i, j ) ∈ W , ∀( x, y ) ∈ I
O( x, y= ( 3)
X-h X+h
y-h
w=2h+1
(x,y) h=2
W
y+h
w=2h+1
3.3.1.- CONVOLUCIÓN
Es una operación espacial lineal de la forma:
O (=
x, y ) ∑
( i , j )∈W
I ( x + i, y + j ) ⋅ K (i, j ) , ∀( x, y ) ∈ I ( 4)
w× w
Donde K ∈ℜ es el Kernel de convolución.
- Suavizado
- Cálculo del gradiente (detección de bordes), etc.
O= K ⊗ I ( 5)
SOLUCIÓN
N=6, w=3
k1 k2 k3
k 4 k5 k 6 w=3
k7 k8 k9 N =6
W w=3
N =6
I
Figura 3.- Imagen con N=6 y kernel de tamaño w=3.
O ( x, =
y) ∑ I ( x + i, y + j ) ⋅ K (i,=
W
j)
O ( x, y ) =
I ( x − 1, y − 1) ⋅ k1 + I ( x − 1, y ) ⋅ k4 + I ( x − 1, y + 1) ⋅ k7 +
I ( x, y − 1) ⋅ k2 + I ( x, y ) ⋅ k5 + I ( x, y + 1) ⋅ k8 +
I ( x + 1, y − 1) ⋅ k3 + I ( x + 1, y ) ⋅ k6 + I ( x + 1, y + 1) ⋅ k9
3.3.2.- SUAVIZADO
Se consigue suavizado en base a un kernel de volumen unidad (la suma de sus valores es 1). Este
kernel realiza el promedio de los pixeles pertenecientes a la ventana de operación. Desventaja:
desenfoca la imagen.
x0
3 7 0 1 2 3
y0 4 8 2 3 1 5
1 4 6 10 11 2
2 1 2 11 4 2
3 4 8 4 2 1
Figura 4
Kernel (Figura 5):
1/ 9 1/ 9 1/ 9
1/ 9 1/ 9 1/ 9
1/ 9 1/ 9 1/ 9
Matlab:
>>K=ones(3,3)./3^2;
SOLUCIÓN
O( xo , yo ) = 19 3 + 19 7 + 19 0 + 19 4 + 19 8 + 19 2 + 19 1 + 19 4 + 19 6 =
3 + 7 + 0 + 4 + 8 + 2 + 1 + 4 + 6 35
O( xo , y=
o) = = 3.9
9 9
7 + 0 + 1 + 8 + 2 + 3 + 4 + 6 + 10 41
O( xo + 1, yo ) = = = 4.5
9 9
0 + 1 + 2 + 2 + 3 + 1 + 6 + 10 + 11 36
O( xo + 2, yo ) = = = 4
9 9
1 + 2 + 3 + 3 + 1 + 5 + 10 + 11 + 2 38
O( xo + 3, yo ) = = = 4.2
9 9
x0 x0 + 1 x0 + 2 x0 + 3
Figura 6
−
x2 ( 6)
1
G ( x) = e 2σ 2
σ 2π
−
u 2 + v2 ( 7)
1
G (u , v) = e 2σ 2
2πσ 2
Es una función simétrica respecto al origen, y de volumen la unidad, el ancho de la función G
es gobernado por el parámetro σ (desviación standard, en pixeles).
Matlab: “kgauss(sigma)”
EJERCICIO:
>>k=kgauss(0.5)
>>surf(k)
>>total=0;
>>for i=1:numcols(k);
for j=1:numrows(k);
total=total+k(j,i);
end; end;
Nota 3: alternativa: utilizar commando “sum()”.
>>total=sum(sum(k))
3.3.3.1.- BORDE
Es la frontera entre dos regiones con valores de nivel de gris abruptamente distintos. La
detección de bordes se realiza con operadores de “derivación”.
DEMOSTRACIÓN
1.- Cargar y mostrar por pantalla en escala de grises, tipo doble, la imagen “castle_sign.jpg” en
la variable I, añadir ejes.
>>I=imread(‘castle_sign.jpg’);
>>I=rgb2gray(I);
>>I=double(I);
>>imshow(I,gray(256)), axis on
>>p=I(360,:);
>>P2=diff(p);
La derivada en el punto v, puede ser también ser escrita como la derivada de primer orden
“simétrica”:
1 ( 9)
p '[=
v] ( p[v + 1] − p[v − 1])
2
En matrices:
1 1 ( 10)
k = − 0
2 2
Convolucionando la imagen I con este kernel, se muestran los bordes verticales.
Muchos kernels han sido propuestos para calcular el gradiente horizontal. El más común es el
kernel de Sobel:
−1 0 1 ( 11)
Du = −2 0 2
−1 0 1
Concolucionando la imagen I con Du, se muestran los bordes verticales:
−1 −2 −1 ( 12)
Du ' = 0 0 0
1 2 1
>>figure, idisp(iconv(I, Du’),’invsigned’)
NOTACIÓN:
∂I
=∇u I =Iu
∂u ( 13)
∂I
=∇v I =Iv
∂v
En forma operacional:
I u= D ⊗ I ( 14)
=
I v DT ⊗ I
Donde D : kernel derivativo.
De Roberts:
0 1 1 0
−1 0 0 −1
De Prewitt:
−1 0 1 −1 −1 −1
−1 0 1 0 0 0
−1 0 1 1 1 1
Isotrópico:
−1 0 1 −1 − 2 −1
− 2 0 2 0 0 0
−1 0 1 1 2 1
Se puede reducir el efecto del ruido suavizando (mediante una función gaussiana) la imagen
antes de derivar:
D ⊗ ( G (σ ) ⊗ I ) =⊗
Iu = ( D G (σ ) ) ⊗ I =
(D G) ⊗ I ( 15)
−
u 2 + v2 ( 16)
u
G '(u , v)u = − e 2σ 2
2πσ 4
EJERCICIO:
>>Du=ksobel
>>G=kgauss(3);
>>Gu=iconv(Du,G);
>>figure, surf(Gu)
>>figure, surf(Gu’)
>>Gu2=kdgauss(sigma);
>>Iu=iconv(I,kdgauss(2));
>>Iv=iconv(I,kdgauss(2)’);
>>Im=sqrt(Iu.^2+Iv.^2);
>>figure, idisp(Im,’invsigned’)
>>Io=atan2(Iv,Iu);
En base a la primera derivada, se obtienen dos imágenes: una con la magnitud Im, y otra con la
dirección del gradiente Io, a partir de la imagen original previamente filtrada con una máscara
de convolución de tipo gaussiana con desviación estándar sigma.
Se logra el adelgazamiento del ancho de los bordes (hasta 1 pixel) obtenidos con el gradiente,
mediante el siguiente procedimiento:
- Encontrar la dirección dk que mejor se aproxime a la dirección Io(x,y) (que viene a ser la
perpendicular al borde).
- Si Im(x,y) es más pequeño que al menos uno de sus dos vecinos en la dirección dk, entonces
In(x,y)=0 (supresión), caso contrario: In(x,y)=Im(x,y).
OpenCv: “cvCanny()”
EJERCICIO:
>>edges=icanny(I,2);
>>figure, idisp(edges,’invert’)
>>edges2=edge(I,’canny’);
>>figure, idisp(edges2,’invert’)
3.3.3.3.- LAPLACIANO
Otra alternativa es encontrar el gradiente máximo, calculando la 2da derivada y determinar
dónde es cero, entonces se tiene el operador Laplaciano:
∂2 I ∂2 I ( 17)
∇2 I = + = I uu + I vv
∂u 2 ∂v 2
Es la suma de las segundas derivadas espaciales en las direcciones horizontal y vertical.
Matlab:
>>L=klaplace
0 1 0 0 −1 0 −1 −1 −1
1 −4 1 −1 4 −1 −1 8 −1
0 1 0 0 −1 0 −1 −1 −1
PROPIEDADES:
- Es isotrópico.
- El elemento central del kernel es positivo y los otros son negativos, o viceversa.
- La sumatoria de los pesos del kernel es cero.
- En una imagen binaria, al aplicar el kernel laplaciano, si la convolución es diferente de
cero, entonces es un borde.
Usualmente se le utiliza con un operador gaussiano (debido a que es muy sensitivo al ruido).
L ⊗ ( G (σ ) ⊗ I ) =
∇2 I = ( L ⊗ G (σ ) ) ⊗ I =
(L G) ⊗ I ( 18)
Donde
u 2 + v2 ( 19)
∂2 I ∂2 I 1 u 2 + v2 −
L G (u , v) = 2 + 2 = − 1 e 2σ 2
∂u ∂v πσ 4 2σ 2
Es conocido como el operador Marr-Hildreth o kérnel sombrero mexicano invertido.
Matlab:
>>k=klog(sigma);
-4
10
-2
-4
-6
40
30 40
20 30
20
10
10
0 0
>>Lap=iconv(I,klog(2));
>>idisp(Lap,’invsigned’);
>>p=Lap(360,:);
>>zc=zcross(Lap);
>>figure, idisp(zc,’invert’)
O( x, y ) = s (T , W ) , ∀( x, y ) ∈ I ( 20)
( 22)
=S ∑
( x , y )∈I
I1 ( x, y ) − I1 − I 2 ( x, y ) − I 2
∑ ( I ( x, y) − I − I )
2 ( 24)
=S 1 1 2 ( x, y ) − I 2
( x , y )∈I
Al igual que el caso anterior, S=0 si I1 e I 2 son idénticas, S aumenta con la “disimilaridad”.
∑
( x , y )∈I
I1 ( x, y ) ⋅ I 2 ( x, y )
S= ( 25)
∑
( x , y )∈I
I12 ( x, y ) ⋅ ∑
( x , y )∈I
I 22 ( x, y )
∑
( x , y )∈I
I1 ( x, y ) − I1 ⋅ I 2 ( x, y ) − I 2
S= ( 26)
∑ ∑
2 2
I1 ( x, y ) − I1 ⋅ I 2 ( x, y ) − I 2
( x , y )∈I ( x , y )∈I
EJEMPLO
>>lena=iread(‘lena.png’,’double’,’mono’);
>>Imshow(lena)
>>figure, imshow(T)
Imágenes iguales:
>>S=sad(T,T)
>> S=ssd(T,T)
>> S=ncc(T,T)
1
Escalamiento:
>> S=sad(T,T*0.9)
101.9137
>> S=ssd(T,T*0.9)
4.6093
>> S=ncc(T,T*0.9)
Desplazamiento:
>> S=sad(T,T+0.1)
260.1
>> S=ssd(T,T+0.1)
26.01
>> S=ncc(T,T+0.1)
0.9975
>> S=zsad(T,T+0.1)
4.9587e-12
>> S=zssd(T,T+0.1)
9.4550e-27
>> S=zncc(T,T+0.1)
1.00
>> S=zsad(T,T*0.9+0.1)
34.2991
>> S=zssd(T,T*0.9+0.1)
0.6161
>> S=zncc(T,T*0.9+0.1)
1.00
En la imagen “lena.png”
>>S=isimilarity(T,lena,@zncc);
>>[mx p]=peak2(S,1,’npeaks’,5);
>>disp(mx)
>>disp(p)
>>figure(1), hold on
>>plot(p(1,1),p(2,1),’sr’)
EJEMPLO 3
>>crowd=iread(‘wheres_walle.png’,’double’,’mono’);
>>figure, Imshow(crowd)
>>T2=iread(‘bender.png’,’double’,’mono’);
>>figure, imshow(T2)
>>S2=isimilarity(T2,crowd,@zncc);
>>[mx2 p2]=peak2(S2,1,’npeaks’,5);
>>disp(mx2)
>>disp(p2)
>>figure(3), hold on
>>plot(p2(1,1),p2(2,1),’sr’)
O( x, y=
) f ( I [ x + i, y + j ]) , ∀(i, j ) ∈ S , ∀( x, y ) ∈ I ( 27)
3.4.1.- EROSIÓN
“La salida es verdadera si todos los pixeles bajo el elemento estructurante S son verdadero”.
En forma operacional:
O = Iθ S ( 28)
3.4.2.- DILATACIÓN
“La salida es verdadera bajo el elemento estructurante S , si cualquiera de los pixeles bajo el
elemento estructurante es verdadero”. En forma operacional:
O= I ⊕ S ( 29)
( A ⊕ B) ⊕ C = A ⊕ ( B ⊕ C ) ( 30)
( Aθ B )θ C = Aθ ( Bθ C )
Matlab:”imerode()”, “imdilate()”
Ejemplo 3.- Se tiene el elemento estructurante S, y la imagen binaria I 8x8, (Figura 13)
1 1 1 1 1
1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1
Elemento estructurante S
Imagen de entrada
SOLUCIÓN
1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1
1 1 1
Erode Dilate
Figura 14
b) Dilatación, luego erosión:
1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1
Dilate Erode
Figura 15
Matlab:
>>I=logical(zeros(8,8));
>>disp(I)
>>S=logical(ones(3,3))
>>A=imerode(I,S)
>>B=imdilate(A,S)
>>C=imdilate(I,S)
>>D=imerode(C,S)
=
I S ( Iθ S ) ⊕ S ( 31)
I • S = ( I ⊕ S )θ S ( 32)
SOLUCIÓN
>>B1=imopen(I,S)
>>D1=imclose(I,S)
β ( A)= A − ( Aθ B) ( 33)
Ejemplo 5.- Hallar el borde del objeto de la imagen A de la Figura 16, usando el elemento
estructurante B.
1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 11 1
1 1 1 1 1 1 1 1 11 11 1
1 1 1 1 1 1 1 1 1 1
Elemento estructurante B
1 1 1 1 1 1 1 1 1 1
Imagen de entrada A
Figura 16
SOLUCIÓN
Erosión Aθ B
1 1 1 1
1 1 1 1
1 1 1 1 1 1 11
Aplicando β ( A)= A − ( Aθ B ) , se tiene el borde buscado:
1 1 1 1 1 1 1 1
1 1 1 1
1 1 1 1 11
1 1
1 1 1 1 1 1 1 1 1 1
( 34)
=
F ( I S ) •=
S ( I θ S ) ⊕ S •=
S ( I θ S ) ⊕ S ⊕ S θ S
1 1 1 1 1 Elemento estructurante S
1 1
1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 y0 1 1 1 y0 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
Imagen de entrada A
Figura 17
SOLUCIÓN
a) Opening
1 1 1 y0 1
1 1 1 1
1 1 1 1
Imagen A erosionada
1 1 1 1 1 y0 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 y0 1 1 1 y0 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
Imagen A dilatada
1 1
1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 y0 1 1 1 y0 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
>>A=logical(zeros(11,18));
Parte a)
>>S=logical(ones(1,5))
>>B=imerode(A,S)
>>C=imdilate(B,S)
>>imopen(A,S)
Parte b)
>>D=imdilate(A,S)
>>E=imerode(D,S)
>>imclose(A,S)
Ejemplo 7.- Para la imagen A y su elemento estructurante B de la Figura 18 , halle: a) una erosión
seguida de una dilatación, b)una dilatación seguida de una erosión.
1 1 1 1 1 1 1 1
1
1 1 1
1 Elemento estructurante B
1
1
1
Imagen de entrada A
Figura 18
SOLUCIÓN
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
Imagen A dilatada Imagen A dilatada y erosionada
Matlab:
>>A=logical(zeros(8,8));
>>A(2,:)=1; A(2:8,2)=1;
>>disp(A)
>>B=strel([1 1])
Parte a)
>>C=imerode(A;B)
>>D=imdilate(C,B)
>>imopen(A,B)
Parte b)
>>E=imdilate(A;B)
>>F=imerode(E,B)
>>imclose(A,B)
Ejemplo 8.- hallar el hit or miss de la imagen A 6x6 de la (Figura 19) con los elementos
estructurantes B1, B 2 .
1 1 × 0 0 × 1 1
1 1 1 1 1 1 0 0 0 1
1 1 1 1 × 1 × × 0 ×
1 1 B1 B2
1
Imagen de entrada A
Figura 19
NOTA: × : no importa.
SOLUCIÓN
1 1 1 1 1 1
1 1 1 1 1
1 1 1
1 1
1 1 1 1
1 1 1 1 1
AC AC θ B 2
1 1
1 1 1 1
1 1
Aθ B1 ( Aθ B1) ∩ ( ACθ B 2 )
Matlab:
>>A=logical(zeros(6,6));
>>B1=logical(zeros(3,3));
>>B1(2,1:2)=1; B1(3,2)=1;
>>B2=logical(zeros(3,3));
>>B2(1,2:3)=1; B2(2,3)=1;
>>Ac=not(A)
>>C=imerode(A,B1)
>>D=imerode(Ac,B2)
>>HM=C&D
>>bwhitmiss(A,B1,B2)
Ejemplo 9.- hallar el hit or miss de la imagen A 8x8 de la (Figura 20) con los elementos
estructurantes B1, B 2 .
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1 00 0 0 1 0
1 1 1 1 1 1 0 1 0 0 0 0
1 1 1 1 1 1 0 10 0 0 0
1 1 1 1 1 1 B1 B2
Imagen de entrada A
Figura 20
SOLUCIÓN
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1
1 1
1 1
1 1
1 1
1 1 1 1 1 1 1 1
AC AC θ B 2
1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
Aθ B1 ( Aθ B1) ∩ ( ACθ B 2 )
3.5.- SEGMENTACIÓN
Mediante la segmentación se separan los objetos presentes en la imagen. Se basa en tres
principios:
a) Similitud: los pixeles del objeto tienen valores parecidos con respecto a alguna
propiedad determinada.
b) Discontinuidad: El objeto se diferencia o destaca del entorno.
c) Conectividad: Los pixeles de una región son contiguos, formando regiones homogéneas.
T = T ( ( x, y ), p ( x, y ), I ( x, y ) ) ( 36)
p (rk )
Fondo Objeto
T rk
1 si I ( x, y ) ≥ T Objeto ( 37)
g ( x, y ) =
0 si I ( x, y ) < T Fondo
Matlab: “graythresh()”
EJEMPLO
>>I=imread(‘cameraman.tif’);
>>imshow(I)
>>figure,imhist(I)
>>level=graythresh(I)
>>figure,imshow(I<level*255)
3.5.2.2.- MULTINIVEL
p (rk )
Fondo Objeto 1 Objeto 2
T1 T2 rk
si T1 < I ( x, y ) ≤ T2 Objeto1
si I ( x, y ) > T2 Objeto 2 ( 38)
si I ( x, y ) ≤ T1
Fondo
3.6.- COLOR
Es una propiedad que poseen los cuerpos que se manifiesta al recibir iluminación y cuyo reflejo
es percibido por nuestros órganos visuales. Todos los colores están contenidos en el espectro
de luz visible (400nm-700nm) pero en diferente longitud de onda. De dónde viene el color?
(Figura 23)
Sensación de color
Iluminancia Reflectancia ∫ E (λ ) R (λ ) M (λ ) d λ
E (λ ) R (λ ) Luminancia
L (λ ) = E (λ ) R (λ )
Figura 23
3.6.1.- ILUMINANCIA (INTENSIDAD LUMÍNICA)
Cantidad de luz que cae sobre el objeto (Lux)=(Lumen/m2). Ejemplo: noche de luna llena: 1Lux,
medio día: 32,000 Lux
3.6.2.- LUMINANCIA
Es proporcional a la luz percibida por el ojo. Cantidad de luz emitida (reflejada) por un objeto
iluminado (Cd/m2).
nm
350 400 700
Figura 24
El sensor en una cámara digital es análogo a la retina, pero en vez de conos y rodillos, posee un
arreglo de elementos sensitivos basados en silicio, cada uno de tamaño entre 1 a 10
micrómetros cuadrados, con señal de salida proporcional a la cantidad de luz que cae en su
superficie.
white
cian
black red
green
yellow
Figura 25
3.6.5.1.- CROMATICIDAD
Los valores triestímulos normalizados son la cromaticidad r , g , b .
R G B ( 39)
r= g= b=
R+G+ B R+G+ B R+G+ B
Los cuales son invariantes al brillo (iluminación). Además, cumplen con:
r + g +b =
1 ( 40)
Lo que significa que sólo dos valores de cromaticidad son necesarios para describir el color,
generalmente r , g (Figura 26).
verdePuro
1
0.75 NoPosible
0.5
0.25 RojoPuro
Ejemplo 10.- Se tiene los siguientes valores triestímulo en soleado (0.6, 0.4, 0.2) y nublado
(0.3,0.2,0.1)
a) Codificar con γ .
b) Hallar la cromaticidad r , g para soleado y nublado
SOLUCIÓN
a) Codificación gamma:
b) Cálculo de la cromaticidad r , g .
Soleado:
0.795
=r = 0.409
0.795 + 0.662 + 0.485
0.662
=g = 0.341
0.795 + 0.662 + 0.485
0.485
=b = 0.250
0.795 + 0.662 + 0.485
Nublado:
0.582
=r = 0.409
0.582 + 0.485 + 0.355
0.485
=g = 0.341
0.582 + 0.485 + 0.355
0.355
=b = 0.250
0.582 + 0.485 + 0.355
Conclusión: en soleado o nublado, la cromaticidad es la misma.
C 1 R
M= 1 − G
( 41)
Y 1 B
Nota: R,G,B: valores normalizados.
SATURACIÓN (S): monto de color que está presente (p.e. rojo y rosa).
OBSERVACIÓN:
Si I=0, S es indefinida
1
I= [ R + G + B]
3
min ( R, G, B )
S = 1− ( 43)
I
0.5 ( R − G ) + ( R − B )
H = a cos
( R − G ) + ( R − B )( G − B )
2
Ejemplo 11.- Hallar los valores HSI para los valores triestímulo en soleado del Ejemplo 10
SOLUCIÓN:
1
I= [0.6 + 0.4 + 0.2=] 0.4
3
min ( 0.6, 0.4, 0.2 )
S=1− = 0.5
I
0.5 ( 0.6 − 0.4 ) + ( 0.6 − 0.2 )
H a= cos 0.5236
( 0.6 − 0.4 ) + ( 0.6 − 0.2 )( 0.4 − 0.2 )
2
3.6.8.1.- REPRESENTACIÓN
Se representa por un doble cono invertido (Figura 27), donde
blanco
verde amarillo
H
cian rojo
azul magenta
negro
H: Angulo en el plano horizontal con referencia al rojo (p.e. si H=0°, entonces es rojo, H=60°,
entonces amarillo), rango teórico: [0 360]. Nota: OpenCv: [0 180].
S: en el plano horizontal, distancia hacia la línea vertical central. Más cerca a la línea, entonces,
menor saturación, rango teórico: [0 1]. Nota: OpenCv: [0 255].
I: Se mide según la línea central vertical de los conos. En el cono inferior los colores son más
oscuros hasta llegar al negro, en el cono superior, más claros hasta llegar al blanco, rango
teórico: [0 1], OpenCv: [0 255].
Nota: en imágenes muy claras o muy oscuras, el valor de S es bajo (ver Figura 27), y H es muy
ruidoso, por lo tanto, no es conveniente.
La técnica de falso color, asigna artificialmente colores a la escala de grises. Existen varias
técnicas.
3.6.9.1.- DIVISIÓN DE INTENSIDAD
Se puede interpretar como la colocación de planos paralelos horizontales que dividen a la
función I ( x, y ) , por ejemplo, la división en dos regiones por el plano en I ( x, y ) = li : cada
región es asignada un color diferente (Figura 28).
I ( x, y )
li
DEFINICIÓN:
I ( x , y ) = Ck si I ( x, y ) = Rk ( 44)
C2
C1
DESVENTAJAS
p (rk ) = nk ( 45)