1. Detección y seguimiento de puntos de fuga en entornos dinámicos Presentación de la Tesis Doctoral E. T. S. Ing. Telecomunicación Universidad Politécnica de Madrid (UPM) Autor: Marcos Nieto Ingeniero de Telecomunicación - UPM Director de tesis: Luis Salgado Profesor titular – UPM
2. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 2
3. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 3
4. Introducción – Motivación 4 Extracción de características Rectificación del plano Estimación de puntos de fuga Rectificación del plano Estimación de puntos de fuga Extracción de características
5. Introducción – Objetivos Detección y seguimiento de puntos de fuga Desarrollo de un detector de características rectilíneas (segmentos) Diseño de estrategias robustas de detección de puntos de fuga Aplicación en la rectificación de planos en entornos dinámicos Modelado de la carretera (extracción de características específicas) Análisis de alternativas en rectificación de planos 5
6. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 6
7. Extracción de características Características que definen líneas en imágenes Píxeles de gradiente Información de dirección de gradiente a nivel de píxel Puede calcularse eficientemente con aproximaciones como el operador de Sobel Segmentos Agrupan información de un conjunto de píxeles Cálculo más complejo y costoso 7
8. Extracción de características – SSWMS “SliceSamplingWeighted Mean Shift” Slicesampler Mean Shift Autovalores Cálculo fdp Muestreo Generación del segmento Nivel de imagen Muestreo secuencial 8
9. Extracción de características – SSWMS Cálculo de Composición de funciones 9 Penaliza zonas homogénas Penaliza esquinas Esquinas Zonas homogéneas Líneas
17. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 17
19. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 19
20. Función de error 20 Supongamos un conjunto de características alineadas hacia un “punto” Características ruidosas Es necesario definir una función de error Se puede encontrar el “punto” que minimiza la suma del error mediante métodos de optimización
21. Función de error Función de error propuesta Orientación (O) Orientación con escala (OS) Optimización Ruido gaussiano Levenberg-Marquardt (MLE) 21
22. Función de error Evaluación 22 Funciones no lineales Función lineal Error reducido Error elevado
23. Comparaciones – convergencia Se consigue reducir la cantidad de iteraciones de los procesos de optimización Función de error Histogramas acumulados de iteraciones para las 102 imágenes de la YUDB
24. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 24
25. Algoritmo Para un conjunto de características Iterativamente Elegir el “MinimalSample Set” (MSS) y su punto de fuga Determinar el “Consensus Set” (CS) del MSS Evaluar CS: Al terminar, obtener el punto de fuga de los “inliers” Eliminar “inliers” y comenzar de nuevo para buscar más puntos de fuga RANSAC 25
26. RANSAC 26 RANSAC + optimización no lineal (OS) Definimos el CS mediante la función de error propuesta Los puntos de fuga se tratan como direcciones 3D del espacio
27. RANSAC Evaluación Se han implementado y evaluado diferentes combinaciones Base de datos YUDB 27
28. RANSAC Seguimiento mediante RANSAC 28 Segmentos con SSWMS Clasificación MSAC Estimación direcciones principales (puntos de fuga) Rectificación del plano
29. RANSAC Seguimiento mediante RANSAC 29 Segmentos con SSWMS Clasificación MSAC Estimación direcciones principales (puntos de fuga) Rectificación del plano
30. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 30
33. Refinado EM “Expectation-Maximization” Se define un modelo mixto (M líneas principales) Esquema iterativo en dos pasos “E-step”: se determina la probabilidad condicional de las características dado el modelo paramétrico de la iteración anterior “M-step”: actualiza los parámetros del modelo utilizando el conjunto de características y sus probabilidades Requiere inicialización Se puede utilizar para seguimiento temporal de puntos de fuga, dado que la estimación del instante t-1 sirve como inicialización para el instante t 33 Parámetros línea Verosimilitud dato i línea j
34. Refinado EM “Image-plane EM” Mejora la propuesta de Minagawa et al. (Eficiencia) Utilizamos la información de orientación (Robustez) Se añade una componente de “outliers” Se definen los puntos de fuga en 2D “Projective-plane EM” Propuesta innovadora en la literatura relacionada Se pueden manejar múltiples puntos de fuga, finitose infinitos Se calculan múltiples líneas principales para cadapunto de fuga Se puede utilizar con MSAC-OS 34
36. Refinado EM “E-step” Calcular la probabilidad condicional de cada muestra con respecto del modelo Ejemplo: Tres líneas (j=1, 2, 3) + componente “outliers” Cada característica obtiene 4 probabilidades – clasificación “ponderada” 36 Componente outliers Líneas principales Posición + orientación Posición
40. Refinado EM “Projective-plane” EM Verosimilitudes en coordenadas calibradas Proyección en la esfera: direcciones 3D (puntos de fuga en el infinito) 40
42. Refinado EM Resultados - York Urban Data Base (YUDB) 42 Error > 10º Error ~ 3º Error < 1º 284 / 301 = 94 % MSAC-OS 28 / 301 = 9,3 % 264 / 301 = 87,7 % 9 / 301 = 3 % EM
43. Estimación de puntos de fuga Resumen contribuciones Función de error OS (eficiencia y versatilidad) Estimación automática puntos de fuga con RANSAC (robustez y seguimiento) Estimación simultánea de puntos de fuga y líneas con EM (precisión y solución integrada) 43
44. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 44
45. Rectificación de planos 45 Rectificación de planos Se transforma la imagen de un plano mediante un movimiento virtual de la cámara Z Y X
46. Rectificación de planos Aplicación en entornos de carretera 46 Rectificación del plano Estimación de puntos de fuga ADAS
47. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 47
48. Escenario de carretera ADAS basado en análisis de vídeo 48 Rectificación del plano Estimación de puntos de fuga ADAS Clasificador bayesiano Modelo lineal de carretera
49. Escenario de carretera – Clasificación bayesiana Clasificación bayesiana 49 Pavimento Marcas de carril Objetos oscuros Desconocido Mediante la regla de Bayes calculamos la probabilidad a posterior de cada clase La verosimilitud se puede expresar como combinación de distintas fuentes de información Verosimilitud intensidad píxel (x,y) clase i Verosimilitud respuesta a detector de líneas de carril
50. Escenario de carretera – Clasificación bayesiana Clasificación líneas de carril 50 Marcas de carril
52. Escenario de carretera – Modelo lineal Modelo de carretera De píxeles a carriles Seguimiento de carriles: filtro de Kalman Múltiples carriles flexibles Las medidas se pueden tomar usandoel SSWMS sobre los píxeles de carril 52 Cambio a izquierdas Cambio a derechas
53. Escenario de carretera Aplicación a corrección de la rectificación 53 Rectificación adaptada Rectificación fija Punto de fuga y líneas (EM) Punto de fuga fijo
54. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 54
55. Rectificación del plano de carretera Rectificación mediante el cálculo de puntos de fuga Sistema de coordenadas de la cámara Sistema de coordenadas de la carretera Distorsión proyectiva, afín y similar: diferentes tipos de rectificaciones 55
56. Rectificación del plano de carretera 56 Parámetros extrínsecos Matriz de rotación: 3 ángulos de rotación (θ,γ,β) Vector de traslación: 1 vector de posición c γ- Guiñada (yaw) θ- Cabeceo (pitch) β– Alabeo (roll)
57. Rectificación del plano de carretera – casos 1.- Conociendo los parámetros extrínsecos e intrínsecos de la cámara Se reduce la proyección de puntos 3D… … a una homografía entre planos (plano de imagen y plano de carretera) Ésta es el método básico: otros métodos se reducen a él si encontramos K, R y c 57
58. Rectificación del plano de carretera – casos 2.1.- Suponer β=0, con los otros ángulos desconocidos β =0 si la cámara se instala horizontalmente y permanece estable (θ,γ) varían según el coche gira o aparecen cuestas en la carretera El punto de fuga de las líneas de carril permite calcular estos ángulos 58
59. Rectificación del plano de carretera – casos 2.2.- Suponer β=0, con los otros ángulos desconocidos y c desconocido Si desconocemos la traslación de la cámara no podemos reconstruir P No obstante se pueden obtener rectificaciones con distorsión similar Si β =0 , la línea del infinito es horizontal, y pasa por el punto de fuga Entonces se pueden calibrar el punto de fuga y la línea del inifinito para obtener el segundo punto de fuga de la imagen, correspondiente a la dirección transversal 59
60. Rectificación del plano de carretera – casos 2.2.- Suponer β=0, con los otros ángulos desconocidos y c desconocido Se pueden trazar rectas que pasen por la imagen y seleccionar 4 puntos Se corresponden con un rectángulo en el plano de carretera 60
61. Rectificación del plano de carretera – casos 3.1.- Rotación desconocida Sin asumir βconocido Es necesario calcular la línea del infinito además del punto de fuga 61
62. Rectificación del plano de carretera – casos 3.1.- Rotación desconocida Una forma de hacerlo es mediante la obtención de dos puntos de fuga Aunque es un método poco robusto 62
63. Rectificación del plano de carretera – casos 3.2.- Rotación desconocida Es más eficaz detectar 3 líneas correspondientes a 3 líneas paralelas equiespaciadas en el plano Se puede utilizar el método EM propuesto 63
64. Rectificación del plano de carretera – casos 64 6.- Parámetros extrínsecos e intrínsecos desconocidos Si no se puede autocalibrar… … y solo se puede obtener un punto de fuga… Tendremos distorsión afín
65. Rectificación del plano de carretera – casos Resumen contribuciones Análisis opciones siguiendo conceptos de geometría proyectiva Identificación de soluciones plausibles Diseño de varios métodos 65
66. Índice Introducción Estimación de puntos de fuga Extracción de características Función de error Clasificación RANSAC Refinado EM Rectificación de planos Escenario de la carretera Rectificación del plano de carretera Conclusiones 66
67. Conclusiones Puntos de fuga Análisis del problema de detección y seguimiento Evaluación de las estrategias existentes Identificación de sus problemas Propuesta de alternativas así como métodos novedosos Rectificación de planos Análisis geometría proyectiva Diseño de alternativas de rectificación Aplicación de un esquema recursivo 67
68. Conclusiones Puntos de fuga Detector de segmentos (SSWMS) – rápido, automático y fiable Función de error (OS) – eficiencia y versatilidad Estimación robusta (RANSAC) con optimización no lineal – robustez, seguimiento Refinado EM – estimación simultánea de puntos y líneas Rectificación de planos Clasificador Bayesiano – adaptabilidad Modelo de carretera – coherencia Análisis de rectificación de planos – casos prácticos 68
69. Conclusiones Contribuciones científicas Como primer autor: 11 (1 revista, 10 congresos) + un artículo en revista en proceso de 2º revisión (SSWMS) Como coautor: 6 (1 revista, 5 congresos) Publicaciones destacadas 69
70. Trabajo futuro Extracción de características Aplicar los conceptos del SSWMS para extraer características más complejas (polígonos, formas geométricas, etc.) Estimación de puntos de fuga Incluir relaciones entre puntos de fuga mediante MRF (ortogonalidad) Integrar seguimiento de puntos de fuga junto con SLAM basado en puntos Modelo de carretera Múltiples cámaras: rectificación de planos alrededor del vehículo para visualizar un entorno 360º Autocalibración de la cámara mediante análisis de puntos de fuga 70
74. Extracción de características – SSWMS 74 Cálculo de Matriz de covarianza y sus autovalores y autovectores Línea Esquina Homogéneo
75. Extracción de características – SSWMS Comparación de ruido Segmentos vs píxeles de gradiente 75 Line segments Gradient-pixels Distribution of error between data sample and vertical vanishingpoint
76. Extracción de características – SSWMS 76 Comparación de ruido Segmentos vs píxeles de gradiente Line segments Gradient-pixels Distribution of error between data sample and central vanishingpoint
79. Extracción de características – SSWMS Algoritmo de crecimiento Proceso iterativo: se crece en la dirección que determina Se crece según Bresenham mientras con Se evalúa el error de la línea Se termina cuando 79
81. Extracción de características – SSWMS 81 Parametrización El ancho de banda de Mean-Shift se puede utilizar para reducir la cantidad resultante de segmentos Por defecto, ancho de banda = 3
83. Extracción de características – SSWMS “Recall” y “Precision” Variando el tamaño Variando la cantidad de ruido Variando la perspectiva 83 Recall: “cuántos de los segmentos de groundtruth se han detectado” Precision: “cuántas detecciones son correctas frente a la cantidad total de detecciones”
86. Función de error Evaluación Los mapas de error permiten comparar diferentes funciones de error Podemos proyectar los elementos del plano de imagen en una esfera centrada en el centro óptico 86
90. RANSAC MLESAC Similar al EM Para un conjunto de características Supongamos un modelo mixto ON-OFF 1D EM para calcular las probabilidades a priori “Log-likelihood” 90
92. Escenario de carretera – Clasificación Bayesiana Modelo de verosimilitud – nivel de gris 92
93. Escenario de carretera – Clasificación Bayesiana Modelo de verosimilitud – detector de marcas de carril 93
94. Escenario de carretera Estimación de puntos de fuga con EM El modelo de carretera inicializa las líneas principales Clasificación Bayesiana + SSWMS = segmentos de marcas viales Esquema recursivo: la estimación anterior se usa como inicialización 94
95. Escenario de carretera – Clasificación Bayesiana Modelo de verosimilitud – detector de marcas de carril 95
96. Escenario de carretera Modelo de carretera El resultado del sistema… Un proceso recursivo que actualiza una correcta rectificación del plano de carretera Un modelo de carretera basado en el clasificador Bayesiano y el filtro de Kalman 96
99. Rectificación del plano de carretera – casos 3.2.- Rotación desconocida Es más eficaz detectar 3 líneas correspondientes a 3 líneas paralelas equiespaciadas en el plano Se puede utilizar el método EM propuesto 99
100. Rectificación del plano de carretera – casos 2.2.- Suponer β=0, con los otros ángulos desconocidos y c desconocido Se pueden trazar rectas que pasen por la imagen y seleccionar 4 puntos Se corresponden con un rectángulo en el plano de carretera 100 DLT
101. Rectificación del plano de carretera – casos 4.- Rotación y traslación desconocidas Mediante el cálculo de puntos de fuga se puede llegar como mucho a una rectificación con distorsión similar Se trata de buscar 4 correspondencias entre puntos a través del cálculo de dos puntos de fuga Cálculo directo Cálculo a través de la línea del infinito 101
102. Rectificación del plano de carretera – casos 102 5.- Parámetros extrínsecos e intrínsecos desconocidos Si se desea eliminar la distorsión afín (como los casos anteriores), es necesario calibrar la cámara Se puede autocalibrar la cámara mediante el cálculo de al menos 3 pares de puntos de fuga ortogonales entre sí Tres direcciones ortogonales del espacio Dos direcciones ortogonales durante varias imágenes
103. Rectificación del plano de carretera – casos 103 6.- Parámetros extrínsecos e intrínsecos desconocidos Si no se puede autocalibrar… … y solo se puede obtener un punto de fuga… Tendremos distorsión afín