PhD defense Marcos Nieto 23/11/2010

103
Autor: Marcos Nieto Ingeniero de Telecomunicación - UPM Director de tesis: Luis Salgado Profesor titular – UPM 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)

description

PhD defense presentation.Marcos Nieto(more info at http://marcosnieto.zymichost.com)

Transcript of PhD defense Marcos Nieto 23/11/2010

Page 1: PhD defense Marcos Nieto 23/11/2010

Autor: Marcos Nieto

Ingeniero de Telecomunicación - UPM

Director de tesis: Luis Salgado

Profesor titular – UPM

Detección y seguimiento de puntos de fuga en entornos

dinámicos

Presentación de la Tesis Doctoral

E. T. S. Ing. TelecomunicaciónUniversidad Politécnica de Madrid (UPM)

Page 2: PhD defense Marcos Nieto 23/11/2010

2 / 71

Í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

Page 3: PhD defense Marcos Nieto 23/11/2010

3 / 71

Í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

Page 4: PhD defense Marcos Nieto 23/11/2010

4 / 71

Introducción – Motivación

Rectificación del plano

Estimaciónde puntos de fuga

Extracción de características

Extracción de características

Rectificación del plano

Estimación de puntos de fuga

Page 5: PhD defense Marcos Nieto 23/11/2010

5 / 71

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

Page 6: PhD defense Marcos Nieto 23/11/2010

6 / 71

Í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

Page 7: PhD defense Marcos Nieto 23/11/2010

7 / 71

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

Page 8: PhD defense Marcos Nieto 23/11/2010

Método Velocidad Inliers/outliers Parámetros de usuario

Robustez frente a ruido

PPHT Rápido Muy baja Sí Baja

LSD Lento Media No Alta

SSWMS Rápido Alta No Alta

Extracción de características – SSWMS

“Slice Sampling Weighted Mean Shift”

8

Cálculo fdp

Nivel de imagen

MuestreoGeneración

del segmento

Muestreo secuencial

Mean ShiftSlice samplerAutovalores

Método Velocidad Inliers/outliers Parámetros de usuario

Robustez frente a ruido

PPHT Rápido Muy baja Sí Baja

LSD Lento Media No Alta

Page 9: PhD defense Marcos Nieto 23/11/2010

9 / 71

Extracción de características – SSWMS

Cálculo de ● Composición de funciones

Penaliza zonas homogénas

Penaliza esquinas

Líneas

Esquinas

Zonas homogéneas

Page 10: PhD defense Marcos Nieto 23/11/2010

10 / 71

Extracción de características – SSWMS

Cálculo de ● Ejemplo

Page 11: PhD defense Marcos Nieto 23/11/2010

11 / 71

Extracción de características – SSWMS

Muestreo secuencial● Algoritmo “Slice sampling”

Page 12: PhD defense Marcos Nieto 23/11/2010

12 / 71

Extracción de características – SSWMS

Muestreo secuencial● Mean Shift para refinar la muestra

Page 13: PhD defense Marcos Nieto 23/11/2010

13 / 71

Extracción de características – SSWMS

Generación de segmentos● Mean Shift refina la posición de los extremos

Page 14: PhD defense Marcos Nieto 23/11/2010

14 / 71

Extracción de características – SSWMS

Comparación con métodos del estado del arte● Tiempo de procesado

Page 15: PhD defense Marcos Nieto 23/11/2010

15 / 71

Extracción de características – SSWMS

Comparación con métodos del estado del arte

Page 16: PhD defense Marcos Nieto 23/11/2010

16 / 71

Extracción de características – SSWMS

Ejecución online

Page 17: PhD defense Marcos Nieto 23/11/2010

17 / 71

Í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

Page 18: PhD defense Marcos Nieto 23/11/2010

18 / 71

Retos / Dificultades Estado del arte Contribuciones

Estimación de puntos de fuga

Puntos de fuga en el infinito

Funciones de error lineales (calibradas)

Funciones de error no lineales

Función de error no lineal (eficiencia y versatilidad)

Detección múltiples puntos de fuga

RANSAC

Hough y búsqueda de máximos

RANSAC con optimización no lineal (robustez, precisión)

Seguimiento de puntos de fuga

EM Propuesta modificación RANSAC (rapidez)

Estimación múltiples puntos de fuga y líneas

EM (plano de imagen) EM (plano de imagen) mejorado (robustez, eficiencia)

EM plano proyectivo

Page 19: PhD defense Marcos Nieto 23/11/2010

19 / 71

Í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

Page 20: PhD defense Marcos Nieto 23/11/2010

20 / 71

Función de error

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

Page 21: PhD defense Marcos Nieto 23/11/2010

21 / 71

Función de error

Función de error propuesta● Orientación (O)● Orientación con escala (OS)

Optimización● Ruido gaussiano

● Levenberg-Marquardt (MLE)

Page 22: PhD defense Marcos Nieto 23/11/2010

22 / 71

Función de error

Evaluación

Error reducidoError elevado

Distancia calibrada punto-línea

Extremos min. Extremos max. Función propuesta

Funciones no linealesFunción lineal

Page 23: PhD defense Marcos Nieto 23/11/2010

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

Extremos min. Extremos max. Método propuesto

Page 24: PhD defense Marcos Nieto 23/11/2010

24 / 71

Í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

Page 25: PhD defense Marcos Nieto 23/11/2010

25 / 71

Algoritmo● Para un conjunto de características● Iterativamente

Elegir el “Minimal Sample 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 MSAC MLESAC

Suma de inliers “M-estimator” Verosimilitud

RANSAC

Page 26: PhD defense Marcos Nieto 23/11/2010

26 / 71

RANSAC

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

Page 27: PhD defense Marcos Nieto 23/11/2010

27 / 71

RANSAC

Evaluación● Se han implementado y evaluado diferentes combinaciones● Base de datos YUDB

Función de error Tipo de RANSAC Tasa de det. promedio (%)

OS MSAC 94,35O MSAC 94,01

EP min. MSAC 93,36

EP max. MSAC 91,03

OS MLESAC 90,05

EP min. RANSAC 89,98

O MLESAC 89,70

CPL MSAC 85,38

Page 28: PhD defense Marcos Nieto 23/11/2010

28 / 71

RANSAC

Seguimiento mediante RANSAC

Segmentos con SSWMS Clasificación MSAC

Estimación direcciones principales (puntos de fuga)

Rectificación del plano

Page 29: PhD defense Marcos Nieto 23/11/2010

29 / 71

RANSAC

Seguimiento mediante RANSAC

Segmentos con SSWMS Clasificación MSAC

Estimación direcciones principales (puntos de fuga)

Rectificación del plano

Page 30: PhD defense Marcos Nieto 23/11/2010

30 / 71

Í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

Page 31: PhD defense Marcos Nieto 23/11/2010

31 / 71

Refinado EM

ObservaciónLas características que se encuentran agrupadas en torno a líneas son menos ruidosas que características aisladas, incluso cuando todas ellas están orientadas hacia el mismo punto de fuga

PropuestaLa estimación de líneas permitiría seleccionar las características menos ruidosas y por tanto obtener estimaciones más precisas de los puntos de fuga

Método Se propone un esquema EM para la estimación simultánea de puntos de fuga y líneas principales

Page 32: PhD defense Marcos Nieto 23/11/2010

32 / 71

Refinado EM

Líneas principalesS

IN lí

neas

CO

N lí

neas

Page 33: PhD defense Marcos Nieto 23/11/2010

33 / 71

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

Verosimilitud dato i línea j

Parámetros línea

Page 34: PhD defense Marcos Nieto 23/11/2010

34 / 71

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

Page 35: PhD defense Marcos Nieto 23/11/2010

35 / 71

Refinado EM

“Image-plane” EM● Verosimilitud

Posición Orientación

Page 36: PhD defense Marcos Nieto 23/11/2010

36 / 71

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”

Posición Posición + orientación

Componente outliers Líneas principales

Page 37: PhD defense Marcos Nieto 23/11/2010

37 / 71

Pesos

Desviaciones típicas del ruido

Parámetros de las líneas

Punto de fuga

Refinado EM

“M-step”● Obtener los parámetros que maximizan la verosimilitud

Page 38: PhD defense Marcos Nieto 23/11/2010

38 / 71

Refinado EM

“Image-plane” EM● Ejemplo típico

Características Píxeles de gradiente (umbralizados)

Inicialización modelo Aproximada

Peso “outliers” 0.5

Número de líneas 2

Número de iteraciones hasta convergencia

15

Page 39: PhD defense Marcos Nieto 23/11/2010

39 / 71

Refinado EM

“Image-plane” EM● Inicialización y convergencia

Inicialización

Resultado

Page 40: PhD defense Marcos Nieto 23/11/2010

40 / 71

Posición Orientación

Refinado EM

“Projective-plane” EM● Verosimilitudes en coordenadas calibradas● Proyección en la esfera: direcciones 3D (puntos de fuga en el infinito)

Page 41: PhD defense Marcos Nieto 23/11/2010

41 / 71

Refinado EM

“Projective-plane” EM● Esquema iterativo

E-step(1) Obtener prob. condicional

M-step(1) Obtener Utilizar Levenberg-Marquardt y función de error OS con escala igual a la probabilidad condicional

M-step(2) Recolocar las líneas

E-step(2) Actualizar probabilidad condicional

M-step(3) Obtener parámetros de las líneas

Page 42: PhD defense Marcos Nieto 23/11/2010

42 / 71

Refinado EM

Resultados - York Urban Data Base (YUDB)

MSAC-OS

EM

Error > 10º

Error ~ 3º

Error < 1º

284 / 301 = 94 %

9 / 301 = 3 % 28 / 301 = 9,3 % 264 / 301 = 87,7 %

Page 43: PhD defense Marcos Nieto 23/11/2010

43 / 71

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)

Problema / Objetivo Método

Un punto de fuga en la imagen “Image-plane” EM

Seguimiento un punto de fuga en la imagen

“Image-plane” EM

Varios puntos de fuga MSAC-OS

Varios puntos de fuga y líneas MSAC-OS para inicializar “Projective-plane” EM

Seguimiento varios puntos de fuga MSAC-OS con seguimiento

Seguimiento varios puntos de fuga con líneas

“Projective-plane” EM

Page 44: PhD defense Marcos Nieto 23/11/2010

44 / 71

Í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

Page 45: PhD defense Marcos Nieto 23/11/2010

45 / 71

Rectificación de planos

Rectificación de planosSe transforma la imagen de un plano mediante un movimiento virtual de la cámara

Z

X

Y

Page 46: PhD defense Marcos Nieto 23/11/2010

46 / 71

Rectificación de planos

Aplicación en entornos de carretera

Y

Z

Δθ

θ = θ0 - Δθθ0

Y

Z

Δθ

θ = θ0 + Δθθ0

θ0

Y

Z

Rectificacióndel plano

Estimaciónde puntos de fuga

ADAS

Esquema estático Esquema dinámico

Calibración fija Cálculo calibración instantáneo

Rectificación incorrecta Elevado coste

Incoherencia temporal

Nuestra propuesta

Realimentar rectificación

Adaptable

Temporalmente coherente

Page 47: PhD defense Marcos Nieto 23/11/2010

47 / 71

Í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

Page 48: PhD defense Marcos Nieto 23/11/2010

48 / 71

Escenario de carretera

ADAS basado en análisis de vídeo

Rectificacióndel plano

Estimaciónde puntos de fuga

ADAS

Clasificador bayesiano

Modelo lineal de carretera

Page 49: PhD defense Marcos Nieto 23/11/2010

49 / 71

Escenario de carretera – Clasificación bayesiana

Clasificación bayesiana

Pavimento Marcas de carril Objetos oscurosiX

Mediante la regla de Bayes calculamos la probabilidad a posterior de cada clase

Desconocido

La verosimilitud se puede expresarcomo 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

Page 50: PhD defense Marcos Nieto 23/11/2010

50 / 71

Escenario de carretera – Clasificación bayesiana

Clasificación líneas de carril Marcas de carril

Page 51: PhD defense Marcos Nieto 23/11/2010

51 / 71

Escenario de carretera – Clasificación bayesiana

Ejemplo

Page 52: PhD defense Marcos Nieto 23/11/2010

52 / 71

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 usando

el SSWMS sobre los píxeles de carril

Cambio a izquierdas

Cambio a derechas

Page 53: PhD defense Marcos Nieto 23/11/2010

53 / 71

Escenario de carretera

Aplicación a corrección de la rectificación

Rectificación adaptada Rectificación fija Punto de fuga y líneas (EM)

Punto de fuga fijo

Page 54: PhD defense Marcos Nieto 23/11/2010

54 / 71

Í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

Page 55: PhD defense Marcos Nieto 23/11/2010

55 / 71

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

Page 56: PhD defense Marcos Nieto 23/11/2010

56 / 71

Rectificación del plano de carretera

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)

Page 57: PhD defense Marcos Nieto 23/11/2010

57 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

1 K (θ,γ,β) c -Reducir P a H ProyectivaAfínSimilar

Page 58: PhD defense Marcos Nieto 23/11/2010

58 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

2.1 K β=0 c vz -Calibrar vz

-Obtener (θ,γ) a partir de v’z

-Construir P

ProyectivaAfínSimilar

Page 59: PhD defense Marcos Nieto 23/11/2010

59 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

2.2 K β=0 vz -Obtener l∞ con (vz , β=0)-Calibrar y obtener v’x

-Obtener 4 puntos y DLT

ProyectivaAfín

Page 60: PhD defense Marcos Nieto 23/11/2010

60 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

2.2 K β=0 vz -Obtener l∞ con (vz , β=0)-Calibrar y obtener v’x

-Obtener 4 puntos y DLT

ProyectivaAfín

Page 61: PhD defense Marcos Nieto 23/11/2010

61 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

3.1 K c (l∞ , vz) -Calibrar (l∞ , vz)-Obtener (θ,γ,β)-Construir P

ProyectivaAfínSimilar

Page 62: PhD defense Marcos Nieto 23/11/2010

62 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

3.1 K c (vx, vz) -Calibrar (vx , vz) y obtener l∞

-Obtener (θ,γ,β)-Construir P

ProyectivaAfínSimilar

Page 63: PhD defense Marcos Nieto 23/11/2010

63 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

3.2 K c (l∞ , vz) -Calibrar (l∞ , vz)-Obtener (θ,γ,β)-Construir P

ProyectivaAfínSimilar

Page 64: PhD defense Marcos Nieto 23/11/2010

64 / 71

Rectificación del plano de carretera – casos

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

6.1 vz -Asumir vx

horizontal-Obtener 4 puntos y DLT

Proyectiva

Page 65: PhD defense Marcos Nieto 23/11/2010

65 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

2.1 K β=0 c vz -Calibrar vz

-Obtener (θ,γ) a partir de v’z

-Construir P

ProyectivaAfínSimilar

2.2 K β=0 vz -Obtener l∞ con (vz , β=0)-Calibrar y obtener v’x-Obtener 4 puntos y DLT

ProyectivaAfín

3.2 K c (l∞ , vz) -Calibrar (l∞ , vz)-Obtener (θ,γ,β)-Construir P

ProyectivaAfínSimilar

Page 66: PhD defense Marcos Nieto 23/11/2010

66 / 71

Í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

Page 67: PhD defense Marcos Nieto 23/11/2010

67 / 71

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

Page 68: PhD defense Marcos Nieto 23/11/2010

68 / 71

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

Page 69: PhD defense Marcos Nieto 23/11/2010

69 / 71

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

Año Publicación Tema

2010 Machine Vision and Applications (IF 2009: 0,952) Rectificación del planoClasificador BayesianoModelo de carretera

2010 IEEE International Conference on Image Processing MSAC-OS

2010 IEEE International Conference on Image Processing EM plano de imagen

2010 SPIE Real Time Image & Video Processing MLESAC-OS y seguimiento

2008 IEEE International Conference on Image Processing Estimación de puntos de fugaModelo de carretera

2008 IEEE Intelligent Vehicles Symposium Modelo de carretera

2008 IEEE Context Based Multimedia Indexing Modelo de carretera

2007 IEEE Intelligent Vehicles Symposium Rectificación de planos

2007 Lecture Notes in Computer Science 4768 Estimación de puntos de fuga

Page 70: PhD defense Marcos Nieto 23/11/2010

70 / 71

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

Page 71: PhD defense Marcos Nieto 23/11/2010

71 / 71

Fin de la presentación

Page 72: PhD defense Marcos Nieto 23/11/2010

72 / 71

Page 73: PhD defense Marcos Nieto 23/11/2010

73 / 71

Discusión Capítulo 2

Page 74: PhD defense Marcos Nieto 23/11/2010

74 / 71

Extracción de características – SSWMS

Cálculo de● Matriz de covarianza y sus autovalores y autovectores

Línea Esquina Homogéneo

Page 75: PhD defense Marcos Nieto 23/11/2010

75 / 71

Extracción de características – SSWMS

Comparación de ruido● Segmentos vs píxeles de gradiente

Distribution of error between data sample and vertical vanishing point

Lin

e s

egm

ent

sG

rad

ien

t-pi

xels

Page 76: PhD defense Marcos Nieto 23/11/2010

76 / 71

Extracción de características – SSWMS

Distribution of error between data sample and central vanishing point

Lin

e s

egm

ent

sG

rad

ien

t-pi

xels

Comparación de ruido● Segmentos vs píxeles de gradiente

Page 77: PhD defense Marcos Nieto 23/11/2010

77 / 71

Extracción de características – SSWMS

Slice sampler

1D

2D

Page 78: PhD defense Marcos Nieto 23/11/2010

78 / 71

Extracción de características – SSWMS

Weighted Mean Shift

Mean shift vector

Page 79: PhD defense Marcos Nieto 23/11/2010

79 / 71

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

Page 80: PhD defense Marcos Nieto 23/11/2010

80 / 71

Extracción de características – SSWMS Complejidad del algoritmo

SSWMS LSDOperations for the whole image, with size N = Width x Height pixels.

Gradients and/or eigenvectors -Sobel for Gx and Gy: O(N)

-Gradient orientation: O(N)

-Eigendecomposition: O(N)

-Sobel for Gx, Gy: O(N)

-Gradient orientation: O(N)

-Gradient module: O(N)Additional operations -Computation of the mean of p(x,: O(N) -Pseudo sorting of gradient magnitudes:

<O(logN)

Total O(N) O(N)Comments Since all the operations are done at pixel level, we can consider that both methods work in linear time operation (the number of required

operations is proportional to the number of pixels in the image).

Operations done for each line segment or cluster

Average number of line segments found (M).

-Small images (320x240) ≈ 100

-Medium images (900x600) ≈ 400

- Small images (320x240) ≈ 100

-Medium images (900x600) ≈ 700

Growing strategy for a line segment of length L

-Bresenham algorithm & Mean Shift: O(L+4.5R)

O(L) refers to the computation of the position of each candidate pixel in the growing strategy.

The operations required are sums and multiplications.

O(3*1.5*R) reflects the execution of 3 Mean Shift procedures, one for setting the starting point of the growing strategy, and one for each end-point to refine its position. Typically MS converges in one or two iterations. In average is 1,5 times checking a window of R=r x r pixels.

The required are sums.

-8-CCA: O(W*L)

The result is a cluster of length L and some width W > 1, in the figures they show in their paper it is exemplified as Width = 3 pixels.

The operations required are sines and cosines of angles.

Other computations -Compute regions mass, inertia moment and NFA: O(W*L)

Total As a result, the complexity of the SSWMS algorithm associated to a single line segment is O(L+4.5R), while it is O(2WL) for the LSD algorithm. Note that O(L+4.5R) < O(2WL).

Example M*(L+3R)

Example: Detected M = 400 line segments, with average length L = 80, R = 9:

Cost = 400*(80+4.5*9) = 48200

M*(2W*L)

Example: Detected M = 400, with average length L=80, Width =3:

Cost = 400*(2*80*3)= 192000

Page 81: PhD defense Marcos Nieto 23/11/2010

81 / 71

Extracción de características – SSWMS

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

Page 82: PhD defense Marcos Nieto 23/11/2010

82 / 71

Extracción de características – SSWMS

Tiempo de ejecución● C++● Core2Duo @ 2.2 GHz

Page 83: PhD defense Marcos Nieto 23/11/2010

83 / 71

Extracción de características – SSWMS

“Recall” y “Precision”

● Variando el tamaño● Variando la cantidad de ruido● Variando la perspectiva

Recall: “cuántos de los segmentos de ground truth se han detectado”

Precision: “cuántas detecciones son correctas frente a la cantidad total de detecciones”

Page 84: PhD defense Marcos Nieto 23/11/2010

84 / 71

Discusión Capítulo 3

Función de error

Page 85: PhD defense Marcos Nieto 23/11/2010

85 / 71

Función de error

Tabla comparativa de funciones de error

Page 86: PhD defense Marcos Nieto 23/11/2010

86 / 71

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

Page 87: PhD defense Marcos Nieto 23/11/2010

87 / 71

Función de error

Tests datos sintéticos

Page 88: PhD defense Marcos Nieto 23/11/2010

88 / 71

Discusión Capítulo 3

RANSAC

Page 89: PhD defense Marcos Nieto 23/11/2010

89 / 71

RANSAC

Parametrización RANSAC● Umbral inlier-outlier

● Función chi-cuadrado

● Máximo error cometido por el SSWMS

● Si

Page 90: PhD defense Marcos Nieto 23/11/2010

90 / 71

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”

Page 91: PhD defense Marcos Nieto 23/11/2010

91 / 71

Discusión Capítulo 4

Page 92: PhD defense Marcos Nieto 23/11/2010

92 / 71

Escenario de carretera – Clasificación Bayesiana

Modelo de verosimilitud – nivel de gris

Page 93: PhD defense Marcos Nieto 23/11/2010

93 / 71

Escenario de carretera – Clasificación Bayesiana

Modelo de verosimilitud – detector de marcas de carril

Page 94: PhD defense Marcos Nieto 23/11/2010

94 / 71

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

Page 95: PhD defense Marcos Nieto 23/11/2010

95 / 71

Escenario de carretera – Clasificación Bayesiana

Modelo de verosimilitud – detector de marcas de carril

Page 96: PhD defense Marcos Nieto 23/11/2010

96 / 71

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

Page 97: PhD defense Marcos Nieto 23/11/2010

97 / 71

Escenario de carretera

Page 98: PhD defense Marcos Nieto 23/11/2010

98 / 71

Discusión Capítulo 5

Page 99: PhD defense Marcos Nieto 23/11/2010

99 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

3.2 K c (l∞ , vz) -Calibrar (l∞ , vz)-Obtener (θ,γ,β)-Construir P

ProyectivaAfínSimilar

Page 100: PhD defense Marcos Nieto 23/11/2010

100 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

2.2 K β=0 vz -Obtener l∞ con (vz , β=0)-Calibrar y obtener v’x

-Obtener 4 puntos y DLT

ProyectivaAfín

DLT

Page 101: PhD defense Marcos Nieto 23/11/2010

101 / 71

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

4.1 K (vx, vz) -Obtener 4 puntos y DLT ProyectivaAfín

4.2 K (l∞ , vz) -Calibrar y obtener v’x

-Obtener 4 puntos y DLTProyectivaAfín

Page 102: PhD defense Marcos Nieto 23/11/2010

102 / 71

Rectificación del plano de carretera – casos

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

5.1 K,(vx, vz) o (l∞ , vz)

-Obtener IAC y descomponer en K-Obtener 4 puntos y DLT

ProyectivaAfín

Page 103: PhD defense Marcos Nieto 23/11/2010

103 / 71

Rectificación del plano de carretera – casos

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

Caso Conocimiento a priori

Obtener Procedimiento Distorsión eliminada

6.1 vz -Asumir vx

horizontal-Obtener 4 puntos y DLT

Proyectiva