![Page 1: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/1.jpg)
Detectores de Borde
![Page 2: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/2.jpg)
Extracción de Características
• Detección de Líneas.
• Detección de Puntos de Borde.
• Detección de Contornos.
![Page 3: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/3.jpg)
Puntos de Borde
• Puntos de la imagen en que hay un cambio brusco o discontinuidad en los valores de intensidad.
![Page 4: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/4.jpg)
Métodos de Detección de Bordes
–Operadores de gradiente.–Operadores de segunda derivada.–Múltiples respuestas a diferentes
orientaciones.–Detector de Canny
![Page 5: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/5.jpg)
Máscaras
w1 w2
w4 w5
w3
w6
w7 w8 w9
992211 wIwIwIR
Imagen de Entrada
![Page 6: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/6.jpg)
Detección de Bordes
Gonzales Wood
Perfil
Primera derivada
Segunda derivada
![Page 7: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/7.jpg)
Operadores de gradiente
• Se basan en calcular aproximaciones del gradiente:
f = (df/dx, df/dy)
• Magnitud del gradiente:
f| = [ (df/dx)2 + (df/dy)2 ]1/2
![Page 8: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/8.jpg)
Aproximación del gradiente
• Se utiliza diferencia de valores de intensidad.
• Para una sección de 2 x 2:
df/dx = I 1,2 - I 1,1
df/dy = I 2,1 - I 1,1
1,1 1,2
2,1 2,2
![Page 9: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/9.jpg)
Aproximación del gradiente
• Otra opción es considerar las diferencias cruzadas:
df/dx = I 1,1 - I 2,2
df/dy = I 1,2 - I 2,1
1,1 1,2
2,1 2,2
![Page 10: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/10.jpg)
Aproximación del gradiente
• Podemos también considerar una sección de 3 x 3 y aproximar el gradiente de la siguiente forma:
df/dx = ( I 1,3 + I 2,3 + I 3,3 ) - ( I 1,1 + I 2,1 + I 3,1 )
df/dy = ( I 3,1 + I 3,2 + I 3,3 ) - ( I 1,1 + I 1,2 + I 1,3 )
1,1 1,2
2,1 2,2
1,3
2,3
3,1 3,2 3,3
![Page 11: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/11.jpg)
Las aproximaciones anteriores se implementan como filtros espaciales (máscaras)
Operadores como el deRoberts, Prewitt y Sobel,se implementan con dosmáscaras: una para dx y otra para dy, luego se hace una síntesis con ambas.
Implementación
Síntesis
Máximo
Mínimo
Promedio
![Page 12: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/12.jpg)
Operadores de Roberts
Corresponden a las diferencias cruzadas de 2 x 2
0 1
-1 0
1 0
0 -1
![Page 13: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/13.jpg)
Ejemplo: Operador de Roberts
![Page 14: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/14.jpg)
Operadores de Prewitt
Corresponden a las diferencias en secciones de 3 x 3
-1 -1
0 0
-1
0
1 1 1
-1 0
-1 0
1
1
-1 0 1
![Page 15: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/15.jpg)
Ejemplos con los operadores de Prewitt
![Page 16: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/16.jpg)
Operadores de Sobel
-1 -2
0 0
-1
0
1 2 1
-1 0
-2 0
1
2
-1 0 1
![Page 17: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/17.jpg)
Ejemplos con operadores de Sobel
![Page 18: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/18.jpg)
Comparación
Prewitt RobertsSobel
![Page 19: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/19.jpg)
Operadores de segunda derivada
• Ejemplos de estos detectores son:– Laplaciano.– Laplaciano del Gaussiano (LOG).
– Y luego buscar los cruces por cero.
![Page 20: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/20.jpg)
Detector basado en el Laplaciano
• Laplaciano de una función de 2 variables:
2f = (d2f/dx2, d2f/dy2)
• El cual se puede aproximar en forma discreta como:
2f = 4 * I 2,2 - I 1,2 - I 2,1 - I 2,3 - I 3,2
![Page 21: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/21.jpg)
Máscara para el operador Laplaciano
0 -1
-1 4
0
-1
0 -1 0
![Page 22: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/22.jpg)
Ejemplo
original Máscara Cruces por cero
![Page 23: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/23.jpg)
Problema:
Se observan muchos bordes falsos
Solución:Evaluación Local de la varianza
![Page 24: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/24.jpg)
Evaluación Local de la Varianza
,...2,1
,),(12
1),(
2
2212
1
1
2
2
M
kjmkjfM
nnMn
Mnj
Mn
Mnkff
Estimación de la varianza:
Mn
Mnj
Mn
Mnkf kjf
Mnnm
1
1
2
2
),(12
1),( 221
![Page 25: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/25.jpg)
Evaluación local de la varianza (cont.)
• La varianza se compara con un umbral.
• Se calcula localmente, solo para aquellos puntos (n1,n2) para los cuales hay un cambio de signo en el laplaciano.
• Esto reduce la posibilidad de encontrar bordes falsos.
![Page 26: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/26.jpg)
Ejemplos
20
10
30
![Page 27: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/27.jpg)
Laplaciano del Gaussiano
• Combina el efecto de una suavizamiento gaussiano con el Laplaciano, en una sola máscara.
• El Laplaciano del Gaussiano (LOG) es:
2G= (d2G/dx2, d2G/dy2)• El cual también se puede aproximar con una
máscara.
![Page 28: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/28.jpg)
Máscara para el operador Laplaciano del Gaussiano
1 -2
-2 4
1
-2
1 -2 1
![Page 29: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/29.jpg)
Ejemplos con operador LOG
![Page 30: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/30.jpg)
Operadores direccionales
• A veces es útil conocer no sólo la magnitud del borde sino también su dirección:
• Esto se puede obtener con los operadores de de Prewitt y Sobel, así como con otros operadores direccionales más sofisticados
dxdf
dydftan
/
/1
![Page 31: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/31.jpg)
Operadores de Kirsch
• Detectan la máxima respuesta en direcciones espaciadas 45°, es decir en orientaciones de 0, 45, 90 y 135 grados - 4 máscaras
• Se pueden definir a diferentes tamaños: 2x2, 3x3, 5x5
![Page 32: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/32.jpg)
Máscaras para operadores de Kirsch de 3x3
5 5
-3 0
5
-3
-3 -3 -3
5 -3
5 0
-3
-3
5 -3 -3
5 5
5 0
-3
-3
-3 -3 -3
-3 -3
5 0
-3
-3
5 5 -3
![Page 33: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/33.jpg)
Otros Detectores• Al aplicar los detectores básicos de borde se tienen
varios problemas, como:– Bordes estriados– Ruido– Bordes falsos
• Operadores más sofisticados utilizan técnicas para mejorar los resultados. Algunas son:– Detector de Canny– Detector de SUSAN
![Page 34: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/34.jpg)
Canny
3 etapas:1. Suavizamiento y diferenciación
• Convolución con una gaussiana• Obtener las derivadas, dx, dy• Calcular magnitud y dirección
2. Supresión de no máximos• Eliminar bordes que no sean máximos en la dirección
perpendicular al borde.
• Umbralización con Histéresis
![Page 35: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/35.jpg)
Supresión de no máximos
1. Computar la magnitud de borde en 4 direcciones utilizando máscaras de borde.
2. Para cada pixel con magnitud de borde no cero, inspeccionar los pixels adyacentes indicados en la dirección de su borde.
3. Si la magnitud de cualquiera de los dos pixels adyacentes es mayo que la del pixel en cuestión, entonces borrarlo como borde.
![Page 36: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/36.jpg)
Umbralización con histéresis
Pueden ocurrir respuestas falsas a un borde causadas por ruido, formando un estriado.
1. Elegir dos umbrales t1,t2.
2. Marcar todos los pixels con magnitud mayor que t2 como correctos y los menores que t1 como incorrectos.
3.Los pixels cuya magnitud de borde está entre t1 y t2 y están conectados con un borde, se marca también como borde. La conectitud puede ser 4- conexo u 8 –conexo.
![Page 37: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/37.jpg)
Ejemplo
Canny
Prewitt
Sobel
![Page 38: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/38.jpg)
S.U.S.A.N(Smallest Univaluate
Segment Assimilating Nucleus)
1.Ubicar una máscara circular alrededor de cada pixel.
2. Calcular la cantidad de pixels dentro de la máscara que tienen el mismo nivel de gris que el núcleo, salvo un umbral.
r0 pixel central
r otro pixel dentro de la máscara.
casootroen
trIrIsirrc
0
)()(1),( 0
0
t=27
![Page 39: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/39.jpg)
Susan
r
rrcrn ),()( 00
N
rnrs
)(1)( 0
0
75.0)(
5.0)(
0)(
0
0
0
rs
rs
rs r0 no es un borde
r0 es un borde
r0 es una esquina
![Page 40: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/40.jpg)
Susan: Ventajas
1.Detecta bordes y esquinas.
2. No usa derivadas.
3.No necesita eliminar el ruido.
4. Usa una máscara circular de 37 pixels.
![Page 41: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/41.jpg)
Ejemplos
![Page 42: Detectores de Borde. Extracción de Características Detección de Líneas. Detección de Puntos de Borde. Detección de Contornos](https://reader035.vdocuments.co/reader035/viewer/2022062305/5665b4611a28abb57c9108f5/html5/thumbnails/42.jpg)
Ejercicios• Implementar detectores de borde:1.Hacer un programa para implementar las
máscaras de Sobel en x, y; desplegando c/u y la magnitud.
2.Mejorar las bordes utilizando el esquema de post-procesamiento de Canny (después de Sobel), desplegando los bordes antes y después del post-procesamiento.
3. Impementar el detector de SUSAN.