Está en la página 1de 49

CURSO DE INTELIGENCIA ARTIFICIAL

Febrero 13 a mayo 29 de 2021


Primera Parte:
Análisis de Imágenes y
Reconocimiento de
Formas

Juan Humberto SOSSA AZUELA


E-mail: hsossa@cic.ipn.mx and humbertosossa@gmail.com
Contenido:

1. Introducción.
2. Propiedades deseables de una rasgo.
3. Tipos de bordes.
4. Proceso de detección de un borde.
5. Detectores de bordes.
6. Detección de bordes basada en el cálculo de segundas
derivadas.
7. Detector de bordes de Canny.
8. Otros detectores de bordes.
Segmentación Extracción de
rasgos

Pre-
procesamiento Descripción

BASE DE
CONOCIMIENTO

Adquisición de
imagen Reconocimiento

Entrada Salida

Gonzalez and Woods


Una vez que una imagen ha sido segmentada en sus
respectivas regiones es necesario extraer para cada una de
estas regiones rasgos (características) que permitan
describirlas.

 x1 
 
 x2 
x 

 
x 
 n
Resultado del proceso de etiquetado:

 x1 
 
 x2   x1 
x   
  x2 
  x 
x  
 n 3 1 2  
x 
 n
𝑥1 = área del objeto 6 7 5 4
𝑥2 = perímetro 8 9
𝑥3 = factor de compacidad.
Etcétera. 10
Propiedades
deseables de un
rasgo descriptor:
Para que un rasgo descriptor sea útil para el reconocimiento
de un objeto, debe poseer un conjunto de propiedades
deseables:

Poder de discriminación.
Para que un rasgo descriptor sea útil para el reconocimiento
de un objeto, debe poseer un conjunto de propiedades
deseables:

Poder de discriminación.
Fiabilidad.
Para que un rasgo descriptor sea útil para el reconocimiento
de un objeto, debe poseer un conjunto de propiedades
deseables:

Poder de discriminación.
Fiabilidad.
Incorrelación.
Para que un rasgo descriptor sea útil para el reconocimiento
de un objeto, debe poseer un conjunto de propiedades
deseables:

Poder de discriminación.
Fiabilidad.
Incorrelación.
Rapidez.
Para que un rasgo descriptor sea útil para el reconocimiento
de un objeto, debe poseer un conjunto de propiedades
deseables:

Poder de discriminación.
Fiabilidad.
Incorrelación.
Rapidez. Hay dos maneras de escoger un rasgo:
Economía.
1) Manualmente.
2) De manera automática.
Un rasgo descriptor puede ser:

Una parte del objeto con algunas propiedades especiales, por


ejemplo, una línea, o una región con una textura dada
obtenida a partir de una imagen de intensidad o de parte de la
superficie obtenida a partir de una imagen del objeto.

Una propiedad global del objeto completo o de una parte del


mismo, por ejemplo el promedio del nivel de gris del objeto o el
área en píxeles encerrados por la región del objeto.
Índices visuales:

Un índice visual es una parte local de un objeto, con


significado y que se pueda detectar.

Con significado indica que el índice visual se ha de encontrar


asociado con algún elemento interesante de la escena al
momento de obtener la imagen del objeto. Ejemplos típicos de
índices visuales son las variaciones de intensidad prominentes
creadas por los contornos de los objetos en la escena.

El que se pueda detectar (“detectable”) significa que debe


existir al menos un algoritmo para su localización, de otra
forma los índices visuales no son útiles.
Tipos de bordes:
Un borde en una imagen es un cambio local significativo,
normalmente asociado con una discontinuidad ya sea en la
imagen de intensidad o la primera derivada de dicha imagen.
Discontinuidades de este tipo en una imagen pueden ser:

De tipo escalón. En este caso la intensidad en la imagen


cambia de manera abrupta de un valor en un lado de la
discontinuidad a otro valor muy diferente en el lado opuesto de
la discontinuidad.

Lineales. En este caso la intensidad en la imagen cambia de


nuevo abruptamente de valor pero regresa al valor inicial en
una distancia corta.
Debido a las componentes de baja frecuencia en la señal o el
alisamiento introducido por la mayoría de los dispositivos de
captación, rara vez se presentan discontinuidades agudas en
una imagen real. Los bordes de tipo paso aparecen como
bordes tipo rampa,

mientras que los bordes tipo línea aparecen como bordes tipo
techo.
El ruido en una imagen provoca también variaciones de
intensidad, lo cual resulta en bordes espurios. Un buen
detector de bordes debería ser capaz de suprimir la mayoría
de estos bordes espurios
Fuentes provocadoras de bordes:

Bordes A
A
Fuentes provocadoras de bordes:

Bordes A
Bordes B A

B
Fuentes provocadoras de bordes:

Bordes A
Bordes B A

Bordes C C

B
Fuentes provocadoras de bordes:

Bordes A
Bordes B A

Bordes C C
Bordes D D

B
Fuentes provocadoras de bordes:

Bordes A
Bordes B A

Bordes C C
Bordes D D

Bordes E

E
B
Fuentes provocadoras de bordes:

Bordes A
Bordes B A

Bordes C C
Bordes D D

Bordes E
Bordes F (textura)
E
Etcétera.
B
Proceso de
detección de un
borde:
Proceso de detección de bordes en una imagen:

Alisado de ruido. El objetivo de esta etapa es suprimir tanto


ruido como sea posible de la imagen, sin destruir bordes
verdaderos.

Imagen en Filtrado
niveles de gris del ruido
Proceso de detección de bordes en una imagen:

Alisado de ruido. El objetivo de esta etapa es suprimir tanto


ruido como sea posible de la imagen, sin destruir bordes
verdaderos.
Mejoramiento de bordes. Por filtrado.

Acentuado
Imagen en Filtrado
de los
niveles de gris del ruido
bordes
Proceso de detección de bordes en una imagen:

Alisado de ruido. El objetivo de esta etapa es suprimir tanto


ruido como sea posible de la imagen, sin destruir bordes
verdaderos.
Mejoramiento de bordes. Por filtrado.
Localización del borde. Decidir cuáles de los máximos
producidos por filtro deben ser considerados como verdaderos
bordes y cuáles son causados por el ruido:
- Supresión de no máximos.
- Umbralado.
Acentuado
Imagen en Filtrado Localización
de los
niveles de gris del ruido de los bordes
bordes
Detectores de
bordes:
Detectores de bordes basados en EL CÁLCULO DE la primera
derivada: El gradiente:

G x   f

G f  x, y       f 
x

G y   y 
G f  x, y   Gx2  G y2 , iguala la tasa máxima de crecimiento de:

G f x, y 
Aproximaciones:

G f  x, y   G x  G y 
G f  x, y   max G x , G y 
Otra cantidad importante:  x, y   arctan G y
Gx
donde  se mide con respecto al eje x.
PRIMERA APROXIMACIÓN DEL GRADIENTE:

f  x, y 
Gx    x f x, y   f  x  1, y   f x, y 
x
f x, y 
Gy    y f x, y   f x, y  1  f x, y 
y
 1
máscaras de convolución: G x    y G y   1 1
1

producen valores en la posición interpolada 𝑥, 𝑦 𝑥, 𝑦 + 1

x  1/ 2, y  1/ 2
𝑥 + 1, 𝑦
(x,y) = 7, (x+1, y) = 10, Gx = 10 – 7=3
(x,y) = 7, (1, y+1) = 15, Gy = 15 – 7=8

f  x, y 
Gx    x f x, y   f  x  1, y   f x, y 
x
f x, y 
Gy    y f x, y   f x, y  1  f x, y 
y
¿Qué pasa si (x,y) = (x+1, y)?, es claro que Gx = 0.
Lo mismo se puede decir de Gy.

 1
G x    y G y   1 1
1
SEGUNDA APROXIMACIÓN: GRADIENTE CRUZADO DE
ROBERTS:

G f  x, y   f  x, y   f  x  1, y  1  f  x  1, y   f  x, y  1
G f i, j   G x  G y

Máscaras de convolución: L. G. Roberts,


Machine perception
5 10 1 0 0 1 of three-dimensional
0 -1 -1 0 solids. PhD Thesis.
5 10 MIT.
también en este caso las diferencias son computadas en la
posición interpolada:
x  1/ 2, y  1/ 2
Imagen Magnitud gradiente Roberts

Imagen Salida Resultado de


umbralado con 80
EL MEJORADOR O ENFATIZADOR DE SOBEL:
a0 a1 a2
a7 (x,y) a3
a6 a5 a4

Magnitud: M  s x2  s y2

derivadas parciales sx y sy son calculadas como sigue:

s x  a6  ca5  a 4   a0  ca1  a 2  -1 -2 -1 -1 0 1


0 0 0 -2 0 2
s y  a 2  ca 3  a 4   a 0  ca 7  a 6  1 2 1 -1 0 1

La constante 𝑐 toma el valor de 2.


2 7 7
2 7 7
2 7 7

-1 -2 -1 -1 0 1
0 0 0 -2 0 2
1 2 1 -1 0 1

Dir. 𝑥: -2-14-7+2+14+7 = 0 Dir. 𝑦: -2-4-2+7+14+7 = 20

La segunda máscara dio un valor más alto porque su valor


indica la posición por dónde pasa un borde en la vertical.
Imagen de entrada Imagen de maginitud Imagen binaria
EL MEJORADOR DE PREWITT:
usa las mismas ecuaciones que el operador de Sobel, excepto
que la constante 𝑐 = 1:

-1 -1 -1 -1 0 1
0 0 0 -1 0 1
1 1 1 -1 0 1

Proceso gráfico para la detección de bordes en una imagen.


Una propiedad interesante tanto del operador de Sobel como
el de Prewitt es que ambos incorporan una etapa de alisado
de ruido, cosa que no pasa, por ejemplo, con el gradiente
cruzado de Roberts.
Convolución de: 1 2 1
1 2 1

1
Con:
-1
 1  2  1
1 2 1  1   
sx    
  1  0 0 0 
1 2 1   1 1 
 2

La primera máscara, como se puede ver, es un filtro paso-bajo


mientras que la segunda es la ya vista diferencia SIMPLE en la
dirección x.
(a) y (b) dos imágenes, una
sencilla y una complicada;

(c-h) efecto de aplicar los filtros


de Roberts, Sobel y Prewitt sobre
dichas imágenes
% Porgrama para detectar siluetas de objetos:

clc % limpia pantalla.


clearvars; % remueve todas las variables.
close all;% cierra gráficas, archivos y recursos abiertos.

f=imread('6 objetos.JPG'); % lee imagen de prueba f(x,y).


figure(1)
imshow(f) % muestra imagen de prueba.
title('Imagen original')
[n,m]=size(f); % dimensiones de la imagen f(x,y).

% BW1 = edge(f,'sobel','nothinning'); %'nothinning' omite


adelgazamiento
BW1 = edge(f,'sobel',threshold); devuelve bordes más fuertes
que th.
%BW = edge(___,'nothinning') omite la etapa de adelgazamiento
de bordes.
figure(2)
imshow(BW1)
title('Filtro Sobel');
Imagen original

Imagen Sobel Imagen Prewitt


Otros detectores de
bordes
(máscaras tipo compás):
Otros mejoradores de bordes:
Ventanas de Kirsch:

-3 -3 5 -3 5 5 5 5 5 5 5 -3
K1 -3 0 5 K2 -3 0 5 K3 -3 0 -3 K4 5 0 -3
-3 -3 5 -3 -3 -3 -3 -3 -3 -3 -3 -3
5 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3
K5 5 0 -3 K6 5 0 -3 K7 -3 0 -3 K8 -3 0 5
5 -3 -3 5 5 -3 5 5 5 -3 5 5

1 1 2 1 6
2 1 1 6 5
2 1 5 6 7 K1: -3-3+30-3+0+30-18-18+25 = 40
1 6 6 5 6
5 6 7 5 6
El valor del módulo del gradiente y su dirección se obtienen
como sigue:
Se aplican las ocho máscaras sobre ese punto, como
resultado se obtienen ocho valores. Se obtienen los valores
absolutos de estos ocho valores. El valor más grande
determina el valor del gradiente.
La dirección del gradiente en p se obtiene de manera directa
por el valor asociado a la máscara:
{0,45,90,135,180,225,270,315}.
Ejemplo:
Al aplicar los dos pasos antes dados, se
1 1 2 1 6 tiene: 40, 8, 32, 72, 32, 8, 40, 40.
2 1 1 6 5 Se puede ver que el valor máximo recae
2 1 5 6 7 en la ventana K4.
1 6 6 5 6 La dirección a tomar en cuenta es de 135
5 6 7 5 6 grados.
Máscaras de Robinson:
-1 0 1 0 1 2 1 2 1 2 1 0
R1 -2 0 2 R2 -1 0 1 R3 0 0 0 R4 1 0 -1
-1 0 1 -2 -1 0 -1 -2 -1 0 -1 -2

1 0 -1 0 -1 -2 -1 -2 -1 -2 -1 0
R5 2 0 -2 R6 1 0 -1 R7 0 0 0 R8 -1 0 1
1 0 -1 2 1 0 1 2 1 0 1 2

Ejemplo:
Al considerar la imagen del ejemplo
1 1 2 1 6 anterior, tenemos los siguientes valores:
2 1 1 6 5 14, 0, 14, 19, -14, 0, -14 y -19.
2 1 5 6 7 De nuevo la máscara ganadora es de
1 6 6 5 6 nuevo la número cuatro.
5 6 7 5 6 La dirección del borde es también 135.

También podría gustarte