t6. contornos - uji
TRANSCRIPT
Fundamentos de Visión por Computador
Sistemas Informáticos Avanzados
T6. Contornos
2T6. Contornos
Índice
DefinicionesGeometría de una curvaCurvas digitalesRepresentaciones de curvasAjustes de curvas• Medidas de error• Ajuste poligonal• Ajuste en arcos circulares• Ajuste en secciones cónicas• Ajuste en splines cúbicas
3T6. Contornos
Definiciones iniciales
Representación de contornos. Criterios:• Eficiente: simple y compacta.• Exacta.• Efectiva: facilitar operaciones.
Definiciones:• Lista de puntos borde:
Conjunto ordenado de puntos o fragmentos.• Contorno:
Curva o lista de puntos borde.• Frontera:
Contorno cerrado que rodea una región.
4T6. Contornos
Índice
DefinicionesGeometría de una curvaCurvas digitalesRepresentaciones de curvasAjustes de curvas• Medidas de error• Ajuste poligonal• Ajuste en arcos circulares• Ajuste en secciones cónicas• Ajuste en splines cúbicas
5T6. Contornos
Geometría de una curva
rk 1=
n
r
u
Longitud de la curva
Vector normalVector unitario tangente
Curvatura
Forma explícita
Forma implícita
Forma paramétrica
6T6. Contornos
Índice
DefinicionesGeometría de una curvaCurvas digitalesRepresentaciones de curvasAjustes de curvas• Medidas de error• Ajuste poligonal• Ajuste en arcos circulares• Ajuste en secciones cónicas• Ajuste en splines cúbicas
7T6. Contornos
Curvas digitales
Puntos borde
K-pendiente
K-pendiente izquierda
K-pendiente derecha
2/2/ kiki pp +− →
iθ
iθ
iki pp →−
kii pp +→
Contorno
8T6. Contornos
Curvas digitales
K-curvatura 11 +− −= iiiK θθ
Longitud del contorno
Variación de la pendiente
9T6. Contornos
Índice
DefinicionesGeometría de una curvaCurvas digitalesRepresentaciones de curvasAjustes de curvas• Medidas de error• Ajuste poligonal• Ajuste en arcos circulares• Ajuste en secciones cónicas• Ajuste en splines cúbicas
10T6. Contornos
Código cadena
566
6
7
),( 11 yx
6,7,6,6,5),( 11 →yx
º45
11T6. Contornos
Representaciones
)(up
u
θ
1θ nθ
)(θH
Signatura o caracterización para reconocimiento
Histograma de pendientes de una curva
12T6. Contornos
Extracción de contornos
1. Barrer imagen hasta encontrar un píxel s de la región: s∈ S
2. c=s; píxel actual.3. b∈ B; píxel fondo.4. Recorrer b=n1, …,ni,…n8 hasta
encontrar un ni∈ S5. c=ni; b=ni-16. Volver a Paso 4 hasta c=s (píxel
inicial).
n2cn1
n3 n4n5
n8 n7 n6b=
13T6. Contornos
Índice
DefinicionesGeometría de una curvaCurvas digitalesRepresentaciones de curvasAjustes de curvas• Medidas de error• Ajuste poligonal• Ajuste en arcos circulares• Ajuste en secciones cónicas• Ajuste en splines cúbicas
14T6. Contornos
Ajuste de curvas
Ajuste de curvas a partir de puntos borde.
Modelos de curvas:• Segmentos de línea• Arcos circulares• Secciones cónicas• “Splines” cúbicas• Polinomios de orden superior
Elección del modelo:• Dependiente de la aplicación.
15T6. Contornos
Medidas de error
Distancia del punto i a la curva
Máximo Error Absoluto
Error Cuadrático Medio
Máximo Error Normalizado
Proporción S/D (líneas)
16T6. Contornos
Índice
DefinicionesGeometría de una curvaCurvas digitalesRepresentaciones de curvasAjustes de curvas• Medidas de error• Ajuste poligonal• Ajuste en arcos circulares• Ajuste en secciones cónicas• Ajuste en splines cúbicas
17T6. Contornos
Representación poligonal
),( 11 yx
),( 22 yx
),( 11 −− nn yx),( nn yx
0=++ cybxa
a b c
18T6. Contornos
Distancia de un punto a una recta
),( 11 yx
),( 22 yx
),( vu
dD
Drd /=
),( 11 yx
),( 22 yx
No aplicable en estos casos
19T6. Contornos
División en poli-líneas
maxd
20T6. Contornos
Unión en segmentos de línea
Añadir píxeles mientras error de ajuste menor que umbral.
21T6. Contornos
División y unión
Alternar unión y división:
• Después de división recursiva• Unir segmentos adyacentes utilizando el “Error
Normalizado”• Hasta no más uniones y divisiones.
Después de una unión, un segmento puede ser dividido por un punto diferente.Error Normalizado
Longitud de la curva
Múltiples segmentos de línea se ajustan con menos error que una sola línea.
22T6. Contornos
Índice
DefinicionesGeometría de una curvaCurvas digitalesRepresentaciones de curvasAjustes de curvas• Medidas de error• Ajuste poligonal• Ajuste en arcos circulares• Ajuste en secciones cónicas• Ajuste en splines cúbicas
23T6. Contornos
Arcos circulares
Origen de coordenadas en p1
Ecuación de la circunferencia
24T6. Contornos
Arcos circulares
321 ,, pppen espacio )','( yx
Resolviendo para
25T6. Contornos
Arcos circulares
qr
Medida de error
26T6. Contornos
Arcos circulares
Punto medio. Criterios:• Vértice más lejano a
cuerda.• Punto de la curva más
lejano a cuerda.• Vértice en mitad de la
secuencia v1,…vn• Punto medio del contorno.
3v
1v2v
4v
5vl
27T6. Contornos
Índice
DefinicionesGeometría de una curvaCurvas digitalesRepresentaciones de curvasAjustes de curvas• Medidas de error• Ajuste poligonal• Ajuste en arcos circulares• Ajuste en secciones cónicas• Ajuste en splines cúbicas
28T6. Contornos
Secciones cónicas
Nódulo
Cada cónica viene definida por:• 2 puntos (nódulos)• 2 tangentes (en los nódulos)• 1 punto adicional
29T6. Contornos
Secciones cónicas
1+iK
iK
Nódulos
Partimos de representación poligonal
iK
1+iV
iV 2+iV1+iK
Tangente
Posición del nódulo
30T6. Contornos
Secciones cónicas
Punto adicional
31T6. Contornos
Secciones cónicas
iK
1+iV
iV 2+iV1+iK
1+iνiν 1
1
Esta representación engloba a otras
111 0 +++ =⇒= iii Vkν Línea recta
111
10
+++ ==⇒
==
iiii
i kVkν
ν
1+ii Vk
Colapsan formando una esquina
32T6. Contornos
Secciones cónicas
Tangentes AC BC
Cuerda AB
AC
BC
AB
AC BC
AB
Forma guiada de una cónica (familia de cónicas)
ρ diferente
33T6. Contornos
Secciones cónicas
Algoritmo:
• Calcular aproximación poligonal del contorno.• Clasificar vértices:
BlandosEsquinas
• Fijar esquinas.• Situar nódulos.• Calcular parámetros cónica de la forma guiada
entre nódulos/esquinas contiguas:Elegir ρ (tipo de cónica de la familia)
34T6. Contornos
Secciones cónicas
Esquina
Vértice blando
A
+<
+>
TAó
TA
º180
º180Esquina
Acercar nódulo a vértice más suave
1+iViV
iA1+iA
1++=
ii
ii AA
Aν
35T6. Contornos
Índice
DefinicionesGeometría de una curvaCurvas digitalesRepresentaciones de curvasAjustes de curvas• Medidas de error• Ajuste poligonal• Ajuste en arcos circulares• Ajuste en secciones cónicas• Ajuste en splines cúbicas
36T6. Contornos
Splines cúbicas
Spline:• Curva a trozos de funciones de cualquier tipo.
Spline cúbica: polinomio de orden 3.
Curvas:• Geométricamente equivalentes:
representan los mismos puntos.• Paramétricamente equivalentes:
ecuaciones idénticas.
37T6. Contornos
Splines cúbicas
Splines cúbicas:• Muy utilizadas.• Curvas de trazo libre.• Utilizan información de:
Punto borde (coordenadas).Valor del gradiente en el punto:- normal a la curva en el punto
∈
3210 ,,,]1,0[aaaa
uson vectores ),( iyix aa
38T6. Contornos
Splines cúbicas
8 parámetros:
• Posiciones puntos inicial y final:4 restricciones.
• Continuidad de la tangente en los nódulos:
2 restricciones:• Minimización de la diferencia de
curvatura en los nódulos.
))0(),0(()0( yxp =
))1(),1(()1( yxp =
39T6. Contornos
Splines cúbicas
)0(1−ip
)0()1(1 ii pp =−
)0()1(1 ii pp =−
)(...),(),( 11 upupup n
1−it it
Spline
Continuidad de la tangente
Minimización de la diferencia de la curvatura
Perpendicular al gradiente en el punto.
40T6. Contornos
Bibliografía
Básico:• Jain, R.; Kasturi, R.; and Schunck, B.G.; Machine
Vision, McGraw-Hill Inc., 1995.
Complementario:• Sonka, M.; Hlavac, V. and Voyle, R.; Image
Processing, Analysis and Machine Vision, Chapman & Hall Ed, 1993.