0% encontró este documento útil (0 votos)
106 vistas21 páginas

Detección de Bordes en Imágenes

Este documento describe los métodos para la detección de bordes en imágenes digitales. Explica que un borde es cualquier discontinuidad en la intensidad de una imagen. Luego describe los principales métodos para la extracción de bordes, incluidos los operadores derivada, la comparación de funciones locales y la comparación con máscaras orientadas. Finalmente, analiza en detalle los operadores derivada y cómo se pueden discretizar para su implementación computacional.

Cargado por

daniel tovar
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
106 vistas21 páginas

Detección de Bordes en Imágenes

Este documento describe los métodos para la detección de bordes en imágenes digitales. Explica que un borde es cualquier discontinuidad en la intensidad de una imagen. Luego describe los principales métodos para la extracción de bordes, incluidos los operadores derivada, la comparación de funciones locales y la comparación con máscaras orientadas. Finalmente, analiza en detalle los operadores derivada y cómo se pueden discretizar para su implementación computacional.

Cargado por

daniel tovar
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

1

Div. Ingeniería de Sistemas y Automática

Universidad Miguel Hernández


VISIÓN POR COMPUTADOR

DETECCIÓN DE BORDES
EN UNA IMAGEN

GRUPO DE TECNOLOGÍA
INDUSTRIAL

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Tabla de Contenidos 2

 Definición de Borde

É Extracción de Bordes
VISIÓN POR COMPUTADOR

É Operadores Derivada

É Comparación de Funciones Locales

É Comparación con Máscaras Orientadas

É Extracción de esquinas

É Umbralización

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

1
Definición de Borde 3

Ñ Cualquier discontinuidad que sufre alguna


función de intensidad sobre los puntos de la
misma
Ñ Tipos de bordes:
VISIÓN POR COMPUTADOR

Õ Cambio brusco en la distancia cámara - objeto (dc)


Õ Cambio en la normal del objeto (n)
Õ Cambio en la reflectancia del objeto (r)
Õ Cambio en la proyección de la luz incidente (s)
dc
dc dc
r
dc
n
s
n

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Tabla de Contenidos 4

É Definición de Borde

 Extracción de Bordes
VISIÓN POR COMPUTADOR

É Operadores Derivada

É Comparación de Funciones Locales

É Comparación con Máscaras Orientadas

É Extracción de esquinas

É Umbralización

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

2
Extracción de Bordes 5

f(x,y) f1(x,y) g(x,y) b(x,y) y=p(x)

Filtrado Extrac. Umbral Local.


VISIÓN POR COMPUTADOR

Ñ Filtrado + Extracción = Detección de bordes


Ñ Umbralización:
Õ Selecciona pixeles etiquetados como bordes
Ñ Localización:
Õ Suministra información exacta de la posición y
orientación del borde

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Extracción de Bordes 6

É En el dominio espacial
Ñ Operadores derivada de los niveles de intensidad
Ñ Comparaciones de funciones locales de
VISIÓN POR COMPUTADOR

intensidad
Ñ Comparación con máscaras orientadas,
previamente definidas (template matching)
É Características exigibles
Ñ Precisión: El borde detectado debe estar cerca del
borde real.
Ñ Robustez: Pequeños cambios en la imagen (ruido)
no afectan al resultado final.

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

3
Tabla de Contenidos 7

É Definición de Borde

É Extracción de Bordes
VISIÓN POR COMPUTADOR

 Operadores Derivada

É Comparación de Funciones Locales

É Comparación con Máscaras Orientadas

É Extracción de esquinas

É Umbralización

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 8

É Efecto
Ñ La primera derivada
produce un resalte de
VISIÓN POR COMPUTADOR

las zonas en que la


intensidad no es Perfil de
Intensidad
homogénea.
ÑLa segunda derivada 1ª Derivada

origina un cambio de
signo en la posición
de borde. 2ª Derivada

Õ”Zero
- crossing"
(paso por cero)

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

4
Operadores Derivada 9

É Vector Gradiente: El vector gradiente apunta hacia la


dirección de máxima variación de f(x, y).

⎛ ∂f (x ,y ) ⎞ ⎛ ∂f (x ,y ) ⎞
2 2

⎡ ∂f (x, y ) ⎤ Mag[∇f (x ,y )] = ⎜ ⎟ + ⎜⎜ ⎟⎟
⎝ ∂x ⎠ ⎝ ∂y ⎠
VISIÓN POR COMPUTADOR

⎢ ⎥
∇f ( x, y ) = ⎢ ∂f (∂xx, y ) ⎥
⎢ ⎥ ∂f (x ,y )
⎢⎣ ∂y ⎥⎦ θ = arctag ∂x
∂f (x ,y )
∂y

Ñ Vector unitario en la dirección del gradiente


⎛ ∂f (x ,y ) ⎞
⎛ cosθ ⎞ ⎜ ⎟
⋅ ⎜ ∂f (∂xx,y ) ⎟
1
uθ = ⎜⎜ ⎟⎟ =
⎝ senθ ⎠ ⎛ ∂f (x ,y ) ⎞ ⎛ ∂f (x ,y ) ⎞ ⎜ ⎟
2 2

⎜ ⎟ +⎜⎜ ⎟ ⎜ ∂y ⎟
⎟ ⎝ ⎠
⎝ ∂x ⎠ ⎝ ∂y ⎠

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 10

Ñ Discretización del Vector Gradiente


∂f (x ,y )
≈ ∇ x f ( x , y ) = f ( x , y ) − f ( x − 1, y ) -1 1
∂x
VISIÓN POR COMPUTADOR

Õ Desplazamiento de los bordes en una cantidad


positiva de 0.5 píxels

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

5
Operadores Derivada 11

Ñ Discretización del Vector Gradiente (Eje Y)

∂f (x ,y ) -1
≈ ∇ y f (x ,y ) = f (x ,y ) − f (x ,y −1)
∂y 1
VISIÓN POR COMPUTADOR

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 12

Ñ Aproximaciones (Vector Gradiente)



Mag = ∇ x f (x ,y ) + ∇ y f (x ,y )
VISIÓN POR COMPUTADOR


Mag = ∇ r f (x ,y ) + ∇ c f (x ,y )

siendo
-1 0
∇ r f (x ,y ) = f (x ,y )*
0 1

0 -1
∇ c f (x ,y ) = f (x ,y )*
1 0

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

6
Operadores Derivada
VISIÓN POR COMPUTADOR
13

∇ x f ( x ,y ) ∇ y f ( x ,y )

∇ r f ( x ,y ) ∇ c f ( x ,y )

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 14

É Primera Derivada Direccional


Ñ Derivada de la función f(x,y) en la dirección α
∂f (x ,y ) ∂f (x ,y )
Dα f (x ,y ) = ∇f (x ,y )T ⋅ uα = ⋅ cosα + ⋅ senα
VISIÓN POR COMPUTADOR

∂x ∂y

Ñ Derivada de la función f(x,y) en la dirección del


gradiente θ
∂f (x ,y ) ∂f (x ,y )
Dθ f (x ,y ) = ∇f (x ,y )T ⋅ uθ = ⋅ cosθ + ⋅ senθ
∂x ∂y

Õ Escogiendo el propio gradiente como vector

⎛ ∂f (x ,y ) ⎞ ⎛ ∂f (x ,y ) ⎞
2 2

Dθ f (x ,y ) = ∇f (x ,y ) ⋅ ∇f (x ,y ) = ⎜
T
⎟ + ⎜⎜ ⎟⎟
⎝ ∂x ⎠ ⎝ ∂y ⎠

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

7
Operadores Derivada 15

É Primera Derivada Direccional (Ejemplo)


VISIÓN POR COMPUTADOR

Primera Derivada Direccional


(módulo)
Ñ Isotrópico (v)
Ñ No Lineal (i)

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 16

ÕGradiente de Roberts Detector horizontal


-1 -1 -1
VISIÓN POR COMPUTADOR

-1 0 0 -1
0 0 0
0 1 1 0
1 1 1
fy
Õ Detector vertical Detectores diagonales

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

fx

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

8
Operadores Derivada 17

ÕGradiente de Roberts: Umbral T=10, T=20.


VISIÓN POR COMPUTADOR

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 18

Õ Operador de Prewitt Operador de Sobel


VISIÓN POR COMPUTADOR

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

Õ Máscaras de Kirsch
-3 -3 5 -3 5 5 5 5 5 5 5 -3 5 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3
-3 0 5 -3 0 5 -3 0 -3 5 0 -3 5 0 -3 5 0 -3 -3 0 -3 -3 0 5
-3 -3 5 -3 -3 -3 -3 -3 -3 -3 -3 -3 5 -3 -3 5 5 -3 5 5 5 -3 5 5
K0 0º K1 45º K2 90º K3 135º K4 180º K5 235º K6 270º K7 315º
Módulo del Gradiente = Máximo de estos valores
Dirección = Correspondiente al máximo

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

9
Operadores Derivada 19
Ñ Ejemplos de operadores derivada
VISIÓN POR COMPUTADOR

Detector horizontal Detector vertical

Sobel horizontal Sobel vertical Detector de Sobel


Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 20

É Algoritmo de Canny
Ñ Obtención del gradiente
Ñ Supresión no máxima al resultado del gradiente
VISIÓN POR COMPUTADOR

Ñ Histéresis de umbral a la supresión no máxima


Ñ Cierre de contornos abiertos

1. Obtención del gradiente:


I J Em
Gaussiana Gradiente
Suavizado Derivada Ea

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

10
Operadores Derivada 21
2. Supresión de no-máximos al resultado del gradiente
El resultado tiene bordes anchos.
a. Para todo punto se obtiene la dirección más cercana dk a 0º, 45º,
90º y 135º en Ea(i,j)
b. Si Em(i,j) es menor que uno de sus dos vecinos en la dirección dk,
VISIÓN POR COMPUTADOR

IN(i,j)=0. Si no IN(i,j)=Em(i,j)
3. Histéresis de umbral a la supresión no máxima
Permite eliminar máximos procedentes de ruido, etc.
a. Entrada IN, Ea, y dos umbrales T1 y T2 (T2>T1)
b. Para todo punto en IN, y explorando en un orden:
a. Localizar el siguiente punto tal que IN(i,j) > T2
b. Seguir las cadenas de máximos locales a partir de
IN(i,j) en ambas direcciones perpendiculares a la
normal al borde siempre que IN>T1. Marcar los
puntos explorados.
c. La salida es un conjunto de bordes conectados de contornos de la
imagen, así como la magnitud y orientación.

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 22
4. Cierre de contornos abiertos
(Algoritmo de Deriche y Cocquerez)
a. La imagen de entrada es una imagen de contornos
binarizada (1= borde; 0=no borde)
b. Para cada punto de borde de un extremo abierto se le
VISIÓN POR COMPUTADOR

asigna un código que determina las direcciones de


búsqueda para el cierre del contorno. Se utiliza la
convolución con las máscaras:

20 21 22
27 1 23
1 2 4 128 8 64 32 16
26 25 24

c. Para los pixeles marcados con este código se toma como


pixel de borde el del máximo gradiente en las tres
direcciones posibles.
d. Se repiten los pasos hasta que se cierren todos los
contornos (no se añaden nuevos píxeles de borde).

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

11
Operadores Derivada
VISIÓN POR COMPUTADOR
23

IMAGEN BINARIZADA
SUPRESIÓN DE NO
IMAGEN PREVIA
MÁXIMOS
HISTÉRESIS DE ORIGINAL
UMBRAL

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores segunda derivada 24

É Operador Laplaciana
∂ 2 f ( x ,y ) ∂ 2 f ( x ,y )
∇ 2 f (x ,y ) = +
∂x 2 ∂y 2
VISIÓN POR COMPUTADOR

Ñ Discretizaciones aproximadas

∂ 2 f ( x ,y )
≈ ∆ xx f (x ,y ) = f (x + 1,y ) − 2f (x ,y ) + f (x − 1,y )
∂x 2

1 -2 1
1
∂ 2 f ( x ,y )
≈ ∆ yy f (x ,y ) = f (x ,y + 1) − 2f (x ,y ) + f (x ,y −1) -2
∂y 2
1

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

12
Operadores Derivada 25

Ñ Acción conjunta de las dos máscaras

0 1 0
VISIÓN POR COMPUTADOR

1 -4 1

0 1 0

Operador Laplaciana

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 26
É Operadores Laplaciana

0 1 0 1 1 1
1 -4 1 1 -8 1
VISIÓN POR COMPUTADOR

0 1 0 1 1 1

-1 2 -1
2 -4 2
-1 2 -1
Ñ Las máscaras son simétricas rotacionalmente. Pueden
detectar bordes en todas las direcciones del espacio.
Ñ Se detecta el borde de forma precisa mediante la
determinación del paso por cero (zero-crossing).
Ñ En la práctica es muy sensible al ruido.

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

13
Operadores Derivada 27

É Operador Laplaciana de la Gaussiana


Ñ Se aplica la Laplaciana a la imagen suavizada por el filtro gaussiano.
1 2 2 2
G(x, y) = − e −(x + y )/2σ ∇ 2 (f(x, y)* G(x, y)) = f(x, y)* ( ∇ 2G(x, y))
2π σ
VISIÓN POR COMPUTADOR

Ñ Es decir: Se convoluciona la imagen con

⎛ x 2 + y 2 ⎞ −(x 2 + y 2 )/2σ 2
∇ 2G(x, y) = K ⎜⎜ 2 − ⎟e
⎝ σ 2 ⎟⎠
Ñ Al suavizar la imagen se reduce el efecto del ruido.
Ñ Se puede trabajar a diferentes escalas al variar el valor de la desviación
estándar de la Gaussiana. Cuanto mayor es esta desviación, habrá un menor
número de pasos por cero (no se detectan objetos pequeños).
Ñ El filtro obtenido resulta bastante costoso en tiempo de computación.

Positivos – Blanco
Original + LG Pasos por Cero
Negativos - Negro

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Operadores Derivada 28
Ñ Aproximación de Haralick y Shaphiro (para la extracción de bordes)
Õ Se filtra la imagen con la Laplaciana de la Gaussiana
Õ Un pixel es declarado como cero:
; Si es menor que –t y uno de sus ocho vecinos es mayor
VISIÓN POR COMPUTADOR

que t
; Si es mayor que t y uno de sus ocho vecinos es menor
que -t

t=4000
Desviación = 2.0

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

14
Tabla de Contenidos 29

É Definición de Borde

É Extracción de Bordes
VISIÓN POR COMPUTADOR

É Operadores Derivada

 Comparación de Funciones Locales

É Comparación con Máscaras Orientadas

É Extracción de Esquinas

É Umbralización

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Comparación de Funciones Locales 30

É Diferencia de Funciones Gaussianas


Ñ Se filtra la imagen con filtros gaussianos de
distinta sigma y se calcula la diferencia.
f 1 (x ,y ,σ1 ) = f (x ,y )* h(u ,v ,σ1 )
^
VISIÓN POR COMPUTADOR

f 2 (x ,y ,σ 2 ) = f (x ,y )* h(u ,v ,σ 2 )
^

siendo h un filtro Gaussiano


Ñ Realce de los bordes

g(x ,y ) = f 1 (x ,y ,σ1 ) − f 2 (x ,y ,σ 2 )
^ ^

ÑSe considera una aproximación de la Laplaciana


de la Gaussiana.

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

15
Comparación de Funciones Locales
VISIÓN POR COMPUTADOR
31

Filtro: Gaussiano σ=1 Filtro: Gaussiano σ=0.7 Diferencia imágenes previas

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Comparación con Funciones Locales 32

É Funciones Exponenciales simétricas


ÑGeneralización de funciones Gaussianas.
VISIÓN POR COMPUTADOR

É Operaciones Morfológicas
Ñ Imagen dilatada multinivel
Ñ Imagen erosionada multinivel
Ñ Realce de bordes: Diferencia entre ambas
g(x ,y ) = [f (x ,y ) ⊕ e(u ,v )] − [f (x ,y )Θe(u ,v )]

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

16
Comparación con Funciones Locales 33

Imagen Dilatada Multinivel


VISIÓN POR COMPUTADOR

Diferencia Dilatación-Erosión

Imagen Erosionada Multinivel

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Tabla de Contenidos 34

É Definición de Borde

É Extracción de Bordes
VISIÓN POR COMPUTADOR

É Operadores Derivada

É Comparación de Funciones Locales

 Comparación con Máscaras Orientadas

É Extracción de Esquinas

É Umbralización

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

17
Comparación con Máscaras Orientadas 35

É Conjunto de Máscaras
Ñ Cada una resalta la existencia de un borde en
una determinada dirección
VISIÓN POR COMPUTADOR

Ñ Tamaño y número
Õ Dependiente de la precisión requerida
Ñ Obtención de los bordes

g(x ,y ,i) = máx{f (x, y )* h i (u, v )}

ÑSe pueden utilizar máscaras para detectar


también esquinas o configuraciones especiales
de bordes.

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Tabla de Contenidos 36

É Definición de Borde

É Extracción de Bordes
VISIÓN POR COMPUTADOR

É Operadores Derivada

É Comparación de Funciones Locales

É Comparación con Máscaras Orientadas

 Extracción de Esquinas

É Umbralización

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

18
Extracción de Esquinas 37

É Método de Kitchen y Rosenfeld


f xx f y2 + f yyf x2 − 2f xy f x f y
E= ≥ U1
(f x2 + f y2 ) 3/2
VISIÓN POR COMPUTADOR

Siendo fx, fy las primeras derivadas y fxx, fxy, fyy las segundas derivadas. U1 es
un umbral para determinar si hay borde.

É Curvatura Gaussiana (Beaudet)


f xx f yy - f xy2
K= ≥ U2
(1 + f x2 + f y2 ) 2

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Umbralización 38
É Umbralización
Ñ Etiquetado de los pixeles de
borde
Ñ Problemas
Õ Pérdidas de conectividad:
VISIÓN POR COMPUTADOR

; bordes poco definidos


; filtrados muy fuertes
; umbral muy exigente
Õ Generación de bordes de
anchura múltiple:
; efectos del filtrado
; umbral poco exigente
Õ Existencia de falsos
bordes:
; presencia de ruido

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

19
Umbralización 39

Ñ Tipos de umbralización
Õ Operadores basados en la primera derivada
VISIÓN POR COMPUTADOR

• Umbralización simple
• Umbral T único, define la existencia de borde
• g(x, y)>T entonces BORDE
• g(x, y)<T entonces NO BORDE
• Umbralización binivel
• Dos umbrales, los puntos de borde deben
cumplir T1<g(x, y)<T2
• Umbralización ‘inteligente’. Algoritmo de Canny
siguiendo los máximos locales del gradiente.

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

Umbralización 40

Ñ Ejemplos de imágenes de borde umbralizadas

Imagen original Bordes Umbral


VISIÓN POR COMPUTADOR

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

20
Umbralización 41

É Localización de la posición del borde


VISIÓN POR COMPUTADOR

Ñ Imagen umbralizada → Adelgazamiento


Õ Buscamos bordes de anchura unidad
Õ Información a nivel de pixel
Ñ Supresión de no máximos
Õ Bordes de anchura unidad

Detección de Bordes en una Imagen Grupo de Tecnología Industrial

21

También podría gustarte