Procesamiento de Imágenes
y Visión Artificial
(WEE2)
Sesión: 3
Ing. José C. Benítez P.
Operaciones, transformaciones y conversiones
Logros de aprendizaje
1. Conocer las operaciones lógicas y aritméticas aplicadas a
los diferentes tipos de imágenes digitales.
2. Procesar espacialmente las imágenes digitales.
3. Conocer los métodos de conversión de las imágenes
digitales RGB a escala de grises.
2
3
Contenido
Operaciones, transformaciones y conversiones:
• Operaciones con imágenes.
• Procesamiento espacial de imágenes.
• Métodos de conversión RGB a escala de grises.
Operaciones con imágenes
� Operaciones lógicas y aritméticas.
o Operaciones lógicas.
o Suma.
o Resta.
� Operaciones geométricas.
o Traslaciones.
o Magnificaciones.
o Rotaciones.
o Interpolaciones
� Procesamiento espacial.
o Convolución.
o Correlación.
o Convolución y correlación.
5
Operaciones lógicas
AND
6
Operaciones lógicas
OR
7
Operaciones lógicas
NOT
8
Operaciones aritméticas
SUMA
9
Operaciones aritméticas
RESTA
10
Operaciones aritméticas
OVERFLOW
11
Operaciones Geométricas
TRASLACIONES
12
Operaciones Geométricas
MAGNIFICACIONES
13
Operaciones Geométricas
ROTACIONES
14
Operaciones Geométricas
INTERPOLACIONES
15
Operaciones Geométricas
INTERPOLACIONES
16
Operaciones Geométricas
INTERPOLACIONES
17
Operaciones Geométricas
INTERPOLACIONES
18
Operaciones Geométricas
INTERPOLACIONES. Formas:
• Vecino más próximo
• Bilineal
• Bicúbica
19
Operaciones Geométricas
INTERPOLACION: Vecino mas próximo
20
Operaciones Geométricas
INTERPOLACION. Bilineal
21
Operaciones Geométricas
INTERPOLACION: Bicúbica
22
Procesamiento espacial
Definición
Procesamiento espacial
23
Dominio espacial: Filtros lineales
Procesamiento espacial
24
Dominio espacial: Filtros lineales
Procesamiento espacial
25
Convolución
Procesamiento espacial
26
Convolución
Procesamiento espacial
27
Convolución
Procesamiento espacial
28
Convolución
Procesamiento espacial
29
Convolución
Procesamiento espacial
30
Convolución. Ejemplo
Procesamiento espacial
31
Convolución. Resultados
Procesamiento espacial
32
Correlación
Procesamiento espacial
33
Correlación
Procesamiento espacial
34
Correlación
Procesamiento espacial
35
Ejemplo de
Correlación
Procesamiento espacial
36
Observaciones y dificultades
Procesamiento espacial
37
Observaciones y dificultades
Procesamiento espacial
38
Tratamiento de bordes
Procesamiento espacial
39
Tratamiento de bordes. Soluciones
Procesamiento espacial
40
Tratamiento de bordes. Soluciones
Procesamiento espacial
41
Tratamiento de bordes. Soluciones
42
Convolución y correlación en MatLab
Procesamiento espacial
>>a = [0 1 2 1 0]>>stem(a)>>b =[1 0 1]>>stem(b)>>c = conv(a,b)>>stem(c)
c = a * b c = [0 1 2 2 2 1 0]
43
Convolución y correlación en MatLab
Procesamiento espacial
>>a=[0 0 0 1 1 1 0 0 0;0 0 0 1 1 1 0 0 0;0 0 0 1 1 1 0 0 0; 0 0 0 1 1 1 0 0 0; 0 0 0 1 1 1 0 0 0];>>imshow(a);>> b=[1 1 1 0 0 0 1 1 1; 1 1 1 0 0 0 1 1 1; 1 1 1 0 0 0 1 1 1]>>imshow(b)>>c = conv2(a,b)>>imshow(c)
>> size(a)ans =
5 9>> size(b)ans =
3 9>> size(c)ans =
7 17
44
Convolución y correlación en MatLab
Procesamiento espacial
45
Convolución y correlación en MatLab
Procesamiento espacial
46
Convolución y correlación en MatLab
Procesamiento espacial
>> a=magic(5)a =
17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9
>> h=[-1 0 1]h =
-1 0 1Filtro usando la correlacion
>> imfilter(a,h)ans =
24 -16 -16 14 -85 -16 9 9 -146 9 14 9 -2012 9 9 -16 -2118 14 -16 -16 -2
Filtro usando la convolucion
>> imfilter(a,h,'conv')ans =
-24 16 16 -14 8-5 16 -9 -9 14-6 -9 -14 -9 20-12 -9 -9 16 21-18 -14 16 16 2
47
Procesamiento espacial
Dominio Frecuencial
48
Procesamiento espacial
Dominio Frecuencial
49
Procesamiento espacial
Dominio Frecuencial
50
¿Cómo convertir una imagen a escala de grises?
Para que una imagen sea vea en tonos de gris se
requiere que los tres componentes básicos del color (en
el computador: rojo, verde, azul – RGB por sus siglas en
inglés) tengan más o menos la misma intensidad,
podemos decir que si queremos convertir un pixel a su
equivalente en escala de grises bastaría con hacer algo
como esto:
• Sumar los valores de los componentes de color del
pixel, es decir sumar R + G + B
• Sacar el promedio de esa suma
• El valor hallado se debe asignar a R, G y B
Con estos tres pasos ya logramos que el pixel sea de
color gris ya que cada uno de sus componentes tiene el
mismo valor.
51
¿Cómo convertir una imagen a escala de grises?
Hay muchas otras formas de hacerlo, incluso alguien que
haya trabajado previamente con imágenes puede tener
su propia versión de como implementarlo de acuerdo a lo
que necesite o al tiempo que tenga.
Pero existe una manera ampliamente conocida y
aceptada en el gremio de las personas que trabajan con
imágenes y visión por computador esa manera es la que
aprenderemos a efectuar.
52
El ojo humano y su sensibilidad
Bien, resulta que el ojo humano es mucho más sensible a los
colores verdes y rojos que al azul, por lo que en cuanto a
precepción de iluminación se trata nuestro ojo reconoce los
patrones de iluminación en color en las siguientes
proporciones para cada componente:
• Rojo: 30%
• Verde: 59%
• Azul: 11%
Así que lo más adecuado es calcular el valor de cada
componente de color con base a esta proporción y de este
modo se obtiene el pixel de color gris con la iluminación
adecuada para que nuestro ojo lo perciba como un mejor
equivalente a su versión en color.
53
Conversión de imágenes RGB a grayscale
En PDI existen generalmente cuatro funciones diferentes
para convertir los colores a escala de grises: "lightness",
"luminosity" y "average".
Para cada píxel: "lightness" promedia los valores de color
máximo y mínimo; "luminosity" le da más peso al verde y
muy poco al azul; "average" calcula el promedio de los tres
colores:
Average = (R + G + B) / 3
Lightness = ( max(R,G,B) + min(R,G,B) ) / 2
Luminosity = 0,21 × R + 0,72 × G + 0,07 × B
Luminancia = R × 0.3 + G × 0.59 + B × 0.11
54
Conversión de imágenes RGB a grayscale
55
Agradecimiento
Procesamiento de Imágenes
y Visión Artificial
Blog del curso:
http://utppdiyva.blogspot.com