92
EMPAREJAMIENTO EN IMÁGENES DE ACUMULACIÓN ESPACIO-TEMPORAL PARA LA ESTIMACIÓN DE LA VELOCIDAD MEDIA DE UNA VÍA VEHICULAR. NICOLÁS LAVERDE ALFONSO TRABAJO DE GRADO PARA OPTAR POR EL TÍTULO DE INGENIERO ELECTRÓNICO DIRECTOR ING. FRANCISCO CARLOS CALDERÓN BOCANEGRA, M.Sc. PONTIFÍCIA UNIVERSIDAD JAVERIANA FACULTAD DE INGENIERÍA DEPARTAMENTO DE ELECTRÓNICA BOGOTA DC, 2012

Emparejamiento en imágenes de acumulación espacio-temporal

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Emparejamiento en imágenes de acumulación espacio-temporal

EMPAREJAMIENTO EN IMÁGENES DE ACUMULACIÓN

ESPACIO-TEMPORAL PARA LA ESTIMACIÓN DE LA

VELOCIDAD MEDIA DE UNA VÍA VEHICULAR.

NICOLÁS LAVERDE ALFONSO

TRABAJO DE GRADO PARA OPTAR POR EL TÍTULO DE

INGENIERO ELECTRÓNICO

DIRECTOR

ING. FRANCISCO CARLOS CALDERÓN BOCANEGRA, M.Sc.

PONTIFÍCIA UNIVERSIDAD JAVERIANA

FACULTAD DE INGENIERÍA

DEPARTAMENTO DE ELECTRÓNICA

BOGOTA DC, 2012

Page 2: Emparejamiento en imágenes de acumulación espacio-temporal
Page 3: Emparejamiento en imágenes de acumulación espacio-temporal

PONTIFICIA UNIVERSIDAD JAVERIANA

FACULTAD DE INGENIERÍA

DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA

RECTOR MAGNÍFICO:

P. Joaquín Emilio Sánchez García, S.J.

DECANO ACADÉMICO:

Ing. Luis David Prieto Martínez

DECANO DEL MEDIO UNIVERSITARIO:

P. Sergio Bernal Restrepo, S.J.

DIRECTOR DE CARRERA

Ing. Jairo Hurtado, PhD.

DIRECTOR DE PROYECTO:

Ing. Francisco Carlos Calderón Bocanegra, M.Sc.

Page 4: Emparejamiento en imágenes de acumulación espacio-temporal
Page 5: Emparejamiento en imágenes de acumulación espacio-temporal

ARTICULO 23 DE LA RESOLUCIÓN No. 13 DE JUNIO DE 1946

“La Universidad no se hace responsable de los conceptos emitidos por sus alumnos en sus proyectos de

grado.

Solo velará porque no se publique nada contrario al dogma y a la moral católica y por que los trabajos no

contengan ataques o polémicas puramente personales. Antes bien, que se vea en ellos el anhelo de buscar

la verdad y la justicia.”

Page 6: Emparejamiento en imágenes de acumulación espacio-temporal
Page 7: Emparejamiento en imágenes de acumulación espacio-temporal

I

TABLA DE CONTENDIO

TABLA DE CONTENDIO .......................................................................................................................... I

ÍNDICE DE FIGURAS ............................................................................................................................. III

ÍNDICE DE TABLAS ............................................................................................................................... IV

LISTADO DE ANEXOS ............................................................................................................................. V

1. INTRODUCCIÓN .................................................................................................................................... 1

2. DESCRIPCIÓN ........................................................................................................................................ 3

2.1. OBJETIVOS. ...................................................................................................................................... 3

2.1.2. Objetivos Específicos. .................................................................................................................. 3

2.2. DESCRIPCIÓN GENERAL. .............................................................................................................. 3

2.3. MATERIAL USADO EN EL DESARROLLO DEL PROYECTO. .................................................. 4

3. MARCO DE REFERENCIA .................................................................................................................. 5

3.1. IMÁGENES DE ACUMULACIÓN ESPACIO-TEMPORALES. ..................................................... 5

3.2. ESTIMACIÓN DE LAVELOCIDAD MEDIA. ................................................................................. 6

3.2.1. Visión Estéreo. ............................................................................................................................. 6

3.2.2. Disparidad. ................................................................................................................................... 7

3.2.3. Estimación de la Velocidad. ....................................................................................................... 10

3.3. TÉCNICAS DE EMPAREJAMIENTO. ........................................................................................... 11

3.3.1. Restricciones. ............................................................................................................................. 11

3.3.2. Clasificación de las técnicas de emparejamiento. ...................................................................... 12

3.4. CORRELACIÓN CRUZADA 2D (CC). .......................................................................................... 13

3.5. CORRELACIÓN CRUZADA NORMALIZADA (NCC). ............................................................... 15

3.6. SUMAS DE DIFERENCIAS ABSOLUTAS (SAD). ....................................................................... 15

3.7. SUMA DE DIFERENCIAS AL CUADRADO (SSD). .................................................................... 17

4. DESARROLLOS. ................................................................................................................................... 19

4.1. DISEÑO PRELIMINAR. .................................................................................................................. 19

4.1.2. Algoritmos preliminares basados en las técnicas de emparejamiento estéreo. .......................... 19

4.1.2. Aplicación de los algoritmos preliminares para el cálculo de la disparidad. ............................. 22

4.1.3. Espacio de color. ........................................................................................................................ 25

4.1.4. Limitación de la imagen y el concepto de carriles. .................................................................... 29

4.1.5. Líneas de acumulación. .............................................................................................................. 31

Page 8: Emparejamiento en imágenes de acumulación espacio-temporal

II

4.2. EFICIENCIA DE LOS ALGORITMOS PRELIMINARES PARA EL CÁLCULO DE LA

DISPARIDAD. ......................................................................................................................................... 33

4.3. ALGORITMOS DE IDENTIFICACIÓN. ........................................................................................ 43

4.4. EFICIENCIA DE LOS ALGORITMOS PARA LA ESTIMACIÓN DE LA VELOCIDAD

MEDIA. .................................................................................................................................................... 46

4.4.1. Videos de diseño. ....................................................................................................................... 46

4.4.2. Disparidad. ................................................................................................................................. 47

4.4.3. Estimación de la velocidad. ........................................................................................................ 48

4.4.4. Velocidad calculada manualmente. ............................................................................................ 49

4.4.5. Resultados de la estimación de la velocidad media.................................................................... 49

4.4.6. Observaciones. ........................................................................................................................... 51

5. ALGORITMO PROPUESTO PARA LA ESTIMACIÓN DE LA VELOCIDAD .......................... 55

5.1. ENTRADAS Y SALIDAS DEL ALGORITMO PROPUESTO. ..................................................... 55

5.2. LECTURA DEL VIDEO. ................................................................................................................. 57

5.3. GENERACIÓN DE LAS IMÁGENES DE ACUMULACIÓN ESPACIO-TEMPORAL. .............. 57

5.4. ESTIMACIÓN DE LA VELOCIDAD MEDIA. .............................................................................. 57

5.5. IMPLEMENTACIÓN. ...................................................................................................................... 59

6. RESULTADOS. ...................................................................................................................................... 61

6.1. VIDEOS DE PRUEBA CAPTURADOS.......................................................................................... 61

6.2. RESULTADOS OBTENIDOS. ........................................................................................................ 62

6.3. ANALISIS DE RESULTADOS. ...................................................................................................... 63

6.4. RESTRICCIONES Y RECOMENDACIONES. .............................................................................. 63

7. CONCLUSIONES .................................................................................................................................. 65

8. BIBLIOGRAFIA .................................................................................................................................... 69

ANEXOS ....................................................................................................................................................... i

Page 9: Emparejamiento en imágenes de acumulación espacio-temporal

III

ÍNDICE DE FIGURAS

Figura 1. Concepto de imagen de acumulación espacio-temporal. ................................................................ 5 Figura 2. Imágenes estéreo. ............................................................................................................................ 7 Figura 3. Modelo "pinhole". ........................................................................................................................... 8 Figura 4. Proyección 3d sobre un plano 2D. .................................................................................................. 8 Figura 5. Configuración estéreo de un arreglo de dos cámaras [14]. ............................................................. 9 Figura 6. Arreglo estéreo calibrado. ............................................................................................................... 9 Figura 7. Relación entre la profundidad y la disparidad [12]. ...................................................................... 10 Figura 8. Representación grafica de la correlación cruzada. ........................................................................ 14 Figura 9. Matrices ejemplo para el algoritmo SAD. .................................................................................... 16 Figura 10. Curvas características de las técnicas SAD y SSD. .................................................................... 18 Figura 11. Imágenes sintéticas para el diseño preliminar de los algoritmos. ............................................... 19 Figura 12. Resultados de la Correlación Cruzada sobre la imágenes sintéticas. .......................................... 24 Figura 13. Resultados de la Correlación Cruzada Normalizada sobre las imágenes sintéticas. ................... 24 Figura 14. Resultados de la Suma de Diferencias Absolutas sobre las imágenes sintéticas. ....................... 25 Figura 15. Par de imágenes sintéticas a color usadas. .................................................................................. 26 Figura 16. Resultados de la escena sintética por componentes usando CC y NCC. ................................... 27 Figura 17. Resultados de la escena sintética por componentes usando técnicas SAD y SSD. ..................... 27 Figura 18. Resultados obtenidos al aplicar las 4 técnicas sobre la escena sintética en Grises. .................... 28 Figura 19. Limitación de la escena sintética por carriles. ............................................................................ 29 Figura 20. Resultados de aplicar las 4 técnicas a la escena sintética, en Grises y por Carriles. ................... 30 Figura 21. Situaciones no deseadas según la ubicación de las líneas de acumulación................................. 32 Figura 22. Situación no deseada: frenado de vehículos sobre las líneas. ..................................................... 33 Figura 23. Par de imágenes de diseño 1. ...................................................................................................... 34 Figura 24. Correspondencia carril 1 (Imágenes de diseño 1). ...................................................................... 35 Figura 25. Correspondencia carril 2 (Imágenes de diseño 1). ...................................................................... 35 Figura 26. Correspondencia carril 3 (Imágenes de diseño 1) ....................................................................... 36 Figura 27. Correspondencia completa (Imágenes de diseño 1). ................................................................... 36 Figura 28.Par de imágenes de diseño 2. ....................................................................................................... 37 Figura 29. Par de imágenes de diseño 3. ...................................................................................................... 38 Figura 30. Tiempos invertidos por las técnicas de emparejamiento (método de carriles). .......................... 41 Figura 31. Tiempos invertidos por las técnicas de emparejamiento (método imagen completa=. ............... 41 Figura 32. Disparidades calculadas por las técnicas de emparejamiento. .................................................... 42 Figura 33. Curvas características de las técnicas de correlación. ................................................................. 43 Figura 34. Curvas características de las técnicas de sumas de diferencias. ................................................. 44 Figura 35. Derivadas correspondientes a las curvas SAD y SSD. ............................................................... 45 Figura 36. Derivada de la curva característica de la técnica SAD. .............................................................. 45 Figura 37. Duplicación al separar la vía en carriles. .................................................................................... 52 Figura 38. Ausencia de vehículos en un carril. ............................................................................................ 52 Figura 39. Disparidad nula. .......................................................................................................................... 53 Figura 40. Efecto del frenado sobre las líneas de acumulación. .................................................................. 53 Figura 41. Diagrama en bloques del algoritmo propuesto. .......................................................................... 55 Figura 42. Archivo de salida. ....................................................................................................................... 58 Figura 43. Evolución del proceso para la estima de la velocidad media en una vía. ................................... 60 Figura 44. Irregularidades en el fondo. ........................................................................................................ 63 Figura 45. Ejemplo a 4 FPS. ........................................................................................................................ 65 Figura 46. Ejemplo a 9 FPS. ........................................................................................................................ 65 Figura 47. Precisión vs FPS. ........................................................................................................................ 66 Figura 48. Propuesta para la reducción del tiempo de ejecución. ................................................................ 67

Page 10: Emparejamiento en imágenes de acumulación espacio-temporal

IV

ÍNDICE DE TABLAS

Tabla 1. Disparidades de las 4 imágenes sintéticas. ..................................................................................... 20 Tabla 2. Aplicación de los algoritmos sobre las imágenes sintéticas. .......................................................... 23 Tabla 3. Disparidad promedio de la escena sintética. .................................................................................. 26 Tabla 4. Disparidad de la escena sintética usando CC y NCC por componentes......................................... 27 Tabla 5. Disparidad de la escena sintética usando SAD y SSD por componentes. ...................................... 28 Tabla 6. Disparidad de la escena sintética en Grises. ................................................................................... 28 Tabla 7. Comparación del tiempo invertido entre el método Imagen Completa y Carriles ......................... 30 Tabla 8. Disparidad calculada por el método Carriles. ................................................................................ 31 Tabla 9. Resultados al aplicar las técnicas de emparejamiento sobre la escena sintética. ........................... 31 Tabla 10. Disparidades obtenidas manualmente las imágenes de diseño 1. ................................................ 34 Tabla 11. Disparidades promedio por carriles las imágenes de diseño 1. .................................................... 34 Tabla 12. Disparidades obtenidas manualmente las imágenes de diseño 2. ................................................ 37 Tabla 13. Disparidades promedio por carriles las imágenes de diseño 2. .................................................... 38 Tabla 14. Disparidades obtenidas manualmente las imágenes de diseño 3. ................................................ 38 Tabla 15. Disparidades promedio por carriles las imágenes de diseño 3. .................................................... 38 Tabla 16. Tiempos invertidos (par de entrenamiento 1). ............................................................................. 39 Tabla 17. Disparidades calculadas (par de entrenamiento 1). ...................................................................... 39 Tabla 18. Tiempos invertidos (par de entrenamiento 2). ............................................................................. 39 Tabla 19. Disparidades calculadas (par de entrenamiento 2). ...................................................................... 40 Tabla 20. Tiempos invertidos (par de entrenamiento 3). ............................................................................. 40 Tabla 21. Disparidades calculadas (par de entrenamiento 3). ...................................................................... 40 Tabla 22. Eficiencias de las técnicas de emparejamiento. ........................................................................... 42 Tabla 23. Configuración de la cámara PlayStationEYE. ............................................................................. 47 Tabla 24. Características de los videos de entrenamiento. ........................................................................... 47 Tabla 25. Características de las imágenes de acumulación. ......................................................................... 47 Tabla 26. Disparidad del video de entrenamiento 2. .................................................................................... 48 Tabla 27. Velocidad estimada aplicando el algoritmo NCC (video 2). ........................................................ 49 Tabla 28. Velocidad estimada aplicando el algoritmo SAD (video 2). ........................................................ 50 Tabla 29. Velocidad media del video de entrenamiento 2. .......................................................................... 50 Tabla 30. Resultados de la estimación de la velocidad en los videos de entrenamiento. ............................. 51 Tabla 31. Eficiencia de la estimación de la velocidad en los videos de entrenamiento. .............................. 51 Tabla 32. Entradas del algoritmo propuesto. ................................................................................................ 56 Tabla 33. Salidas del algoritmo propuesto. .................................................................................................. 56 Tabla 34. Algoritmos y funciones diseñadas para la solución del problema. .............................................. 59 Tabla 35. Características de los videos capturados. ..................................................................................... 61 Tabla 36. Parámetros definidos para estimar la velocidad. .......................................................................... 61 Tabla 37. Velocidad y disparidad media estimadas por el algoritmo propuesto. ......................................... 62 Tabla 38. Eficiencia del algoritmo propuesto al estimar la velocidad media. .............................................. 62

Page 11: Emparejamiento en imágenes de acumulación espacio-temporal

V

LISTADO DE ANEXOS

ANEXO N° 1. CORRESPONDENCIA DE LAS IMÁGENES DE DISEÑO

ANEXO N° 2. DISPARIDAD DE LOS VIDEOS DE DISEÑO

Page 12: Emparejamiento en imágenes de acumulación espacio-temporal

VI

Page 13: Emparejamiento en imágenes de acumulación espacio-temporal

1

1. INTRODUCCIÓN

La movilidad o desplazamiento en una ciudad supone un factor de gran importancia para su desarrollo, ya

que el crecimiento de las ciudades, como fenómeno de evolución social, económico y político, trae

consigo, entre otros, problemas relacionados con este aspecto. Como consecuencias del incremento

poblacional, los diferentes medios de transporte utilizados por los habitantes de la ciudad para

movilizarse aumentan, al igual que la demanda de espacio para su desplazamiento.

En ciudades principales y de gran desarrollo urbano, existe la infraestructura necesaria para manejar la

mayoría del tráfico vehicular de manera eficiente. Es por eso que hay autopistas y avenidas con la

capacidad suficiente de proveer el espacio necesario para la movilidad por los principales puntos de la

cuidad. Muchas veces en las horas pico existen grandes embotellamientos y trancones en estas vías, a

pesar de la infraestructura, la señalización y el manejo de semáforos para regular la densidad vehicular.

La principal causa de los trancones se debe a la falta de un sistema de control que maneje los tiempos de

los semáforos para liberar las vías que son más transitadas a ciertas horas, mientras otras presentan bajo

tránsito. Otras veces se debe a la falta de un estudio de tránsito en ciertos puntos, cuyos resultados pueden

ser usados para un mejor diseño de infraestructura y señalización que permitan mejorar la circulación por

la ciudad.

La ingeniería del tráfico es una rama de la ingeniería civil que se encarga de planear, diseñar y organizar la

operación del tráfico en calles y autopistas, con el fin de obtener una movilidad segura y eficiente [3].

Como herramienta en el diseño de vías, se usan modelos de predicción, que son diseñados basándose en

muestras de los tres principales parámetros de tráfico, volumen e intensidad de circulación, densidad y

velocidad.

El volumen y la intensidad de circulación indican el número de vehículos que pasan por un segmento de

vía durante un intervalo de tiempo determinado. El intervalo de tiempo para el volumen de circulación

varía desde años, meses o días, hasta horas. La intensidad expresa la cantidad de vehículos en un tramo de

vía por hora. La densidad indica el número de vehículos que ocupan un segmento específico de vía; sus

unidades son vehículos por kilómetro [2].

La velocidad se define como la distancia recorrida por un vehículo por unidad de tiempo. Para caracterizar

el tráfico, se usa como valor representativo la velocidad media, la cual es obtenida al promediar las

velocidades individuales de cada vehículo.

La medición de velocidad en una vía vehicular es de suma importancia en cuanto a planificación vial y

regulación de tránsito, ya que permite tomar decisiones para mejorara la movilidad y reducir la

accidentalidad en la vía. Actualmente, existen técnicas basadas en el uso de pistolas radar para la

obtención de la velocidad de un vehículo, la cual utiliza el principio del efecto Doppler (diferencia de

frecuencia entre una onda incidente y una reflejada) para tal fin [1]. Para esto, un operario debe apuntar la

pistola al vehículo objetivo hasta obtener una medida de la velocidad del vehículo, con un error de ±2

km/h, a una distancia de aprox. 450 m.

Este método trae consigo varias limitaciones: la mayoría de estas pistolas solo pueden calcular la

velocidad de un vehículo a la vez, y es necesario que en el rango “visual” de la pistola solo este dicho

vehículo, ya que en el caso que haya más de uno, se producirá una lectura errada. Existen unas que pueden

determinar la velocidad de varios vehículos a la vez, pero son demasiado costosas. Además, el sistema no

está exento de interferencias causadas por factores no controlables.

Page 14: Emparejamiento en imágenes de acumulación espacio-temporal

2

El uso de visión artificial en sistemas de monitoreo de velocidad ofrece mayores ventajas frente a otras

tecnologías. Mediante visión artificial es posible extraer varias variables de manera simultánea (en caso de

ser necesario) a más de un objetivo en tiempo real, permitiendo transmitir la información de manera

remota para su posterior análisis [5]. Además, es posible elegir la escena a procesar, abarcando un amplio

rango que permite una mejor obtención de variables, sin necesidad de realizar modificaciones físicas

considerables.

El implementar un sistema de visión artificial reduce el porcentaje de errores en la toma de las variables y

se aumenta de manera considerable la eficiencia, siendo este un sistema automático y de procesamiento de

información en tiempo real. Su instalación no supone un alto costo y la invasión a la vía es mínima.

En Estados Unidos y muchos países europeos existen cámara conocidas como cámaras de refuerzo,

cámaras de luz roja, cámaras de velocidad o de seguridad vial, las cuales son instaladas al lado o sobre las

vías o en vehículos policiales con el fin de detectar infracciones a las normas de tránsito, incluyendo

exceso de velocidad, vehículos pasándose en rojo y el uso no autorizado de carriles especiales, así como

para recoger información sobre el tráfico en zonas de congestión [4].

Actualmente, en Bogotá, con el sistema integrado de transporte, se ha comenzado a implementar este

sistema de vigilancia de transito usando cámaras. Para la detección electrónica se cuenta con cámaras que

tienen dispositivos de reconocimiento de caracteres, cámaras tipo domo de vigilancia, comparenderas

electrónicas y cámaras especializadas.

Utilizando la técnica de emparejamiento de imágenes de acumulación, la cual consiste en acumular

secciones de cada cuadro del video en una matriz, puede estimarse la velocidad de un vehículo calculando

la diferencia del vehículo en el eje temporal de las dos imágenes resultantes. De esta manera, se pretende

diseñar un algoritmo capaz de estimar de la velocidad una vía, con la finalidad de proponer un sistema

basado en visión artificial capaz de obtener información sobre la dicha variable de tránsito, con la cual

será posible en un futuro el determinar acciones que puedan despejar vías en congestión, re direccionando

el tráfico y controlando los tiempos en los semáforos, así como el de detectar infracciones de tránsito

(caso especial, aplicando el algoritmo a un vehículo en particular) con el fin de mejorar la seguridad en las

vías.

Page 15: Emparejamiento en imágenes de acumulación espacio-temporal

3

2. DESCRIPCIÓN

2.1. OBJETIVOS.

2.1.1. Objetivo General.

Diseñar un algoritmo de estimación de la velocidad media en una vía vehicular, usando emparejamiento

entre imágenes de acumulación espacio-temporal.

2.1.2. Objetivos Específicos.

Revisar y evaluar las técnicas estándar de emparejamiento de imágenes en estéreo, aplicadas a pares de

imágenes de acumulación espacio-temporal.

Diseñar el algoritmo de estimación de velocidad media vehicular, basado en emparejamiento de imágenes

espacio-temporales.

Capturar videos de prueba teniendo en cuenta el protocolo de toma de muestras establecido en el grupo de

investigación SIRP.

2.2. DESCRIPCIÓN GENERAL.

El trabajo de investigación se ha dividido en 5 partes fundamentales: captura del material a procesar,

revisión de técnicas de emparejamiento, desarrollo de pruebas, diseño del algoritmo y resultados

obtenidos.

La captura del material consiste simplemente en la toma de videos del escenario en cuestión. Se pretende

capturar algunos videos utilizando una cámara estándar sobre vías de la ciudad de Bogotá. La idea es

tomar videos sobre vías en distintos puntos de la ciudad y a diferentes horas, con el fin de obtener una

amplia gama de selección a la hora de realizar las pruebas pertinentes. La captura del video deberá hacerse

durante el día.

Luego de capturar videos, y junto con los que se encuentran disponibles en la base de datos del grupo de

investigación SIRP, se procederá a la revisión de técnicas de emparejamiento estándar con el fin de

registrar resultados para su posterior comparación, análisis e implementación parcial para el algoritmo

final. Para tal fin, así como para la siguiente etapa, se utilizaran bibliotecas de software, las cuales

consisten en un conjunto de funciones orientadas hacia un tema específico. El desarrollo del proyecto en

su totalidad se hará utilizando el software matemático MATLAB.

Después de la revisión de estas técnicas, se procederá entonces al desarrollo del algoritmo orientado a la

solución del problema planteado: estimar la velocidad media en una vía utilizando emparejamiento de

imágenes. Con los resultados obtenidos de la revisión, se pretende diseñar un algoritmo utilizando como

Page 16: Emparejamiento en imágenes de acumulación espacio-temporal

4

referencia las técnicas revisadas y en caso dado, modificar o extrapolar los conceptos para la solución del

escenario planteado.

Una vez diseñado el algoritmo, se procederá a la realización de pruebas utilizando el material capturado.

Las pruebas deberán hacerse con diferentes videos, de características diferentes, con el fin de probar el

algoritmo en distintos escenarios. Se registraran los resultados obtenidos a modo de conclusión del

trabajo, indicándose cuales fueron los aciertos y cuales los errores encontrados, así como posibles

soluciones y modificaciones que mejorarían el desempeño del algoritmo.

2.3. MATERIAL USADO EN EL DESARROLLO DEL PROYECTO.

A lo largo del documento se menciona cuatro tipos de recursos utilizados para el diseño del algoritmo

propuesto para la estimación de la velocidad media. Estos recursos están conformados por imágenes y

videos que fueron usados para la realización de las diferentes etapas del proyecto.

En primer lugar se cuenta con unas imágenes sintéticas generadas para la etapa de pre diseño de los

algoritmos basados en las técnicas de estéreo que serán revisadas. Estas imágenes son una representación

básica de lo que serían las imágenes de acumulación sobre las vías, cuya finalidad es la de simular el

material real con el que se trabajará.

El segundo tipo de material utilizado son imágenes de acumulación espacio-temporal extraídas de videos

sobre vías de tránsito de la base de datos del grupo de investigación SIRP: Estas imágenes de diseño son

utilizadas para analizar y comprobar la eficiencia de los algoritmos diseñados para el cálculo de la

disparidad entre el par de imágenes. La eficiencia hace referencia al porcentaje de acierto que presenta

cada una de las técnicas al calcular la disparidad en relación con la disparidad hallada manualmente. Esta

etapa permitió concebir una idea general sobre el funcionamiento de los algoritmos.

Los videos de diseño son videos tomados sobre vías de la ciudad que fueron usados para seleccionar el

algoritmo y la técnica más apropiada para estimar de la velocidad media. Son videos de la base de datos

del grupo SIRP que permitieron analizar la eficiencia (porcentaje de aciertos) de los algoritmos diseñados

para la estimación de la velocidad en comparación con la velocidad media hallada manualmente. Se

emplearon 3 videos con características diferentes y sobre vías diferentes.

Finalmente están los videos de prueba, los cuales fueron tomados como parte de unos de los objetivos

específicos del proyecto. Estos videos son 10 videos de vías tomados en diferentes puntos de la ciudad y

con diferentes características. Su finalidad es la de evidenciar el funcionamiento y la eficiencia que

presenta el algoritmo propuesto para la estimación de la velocidad media sobre la vía.

Page 17: Emparejamiento en imágenes de acumulación espacio-temporal

5

3. MARCO DE REFERENCIA

3.1. IMÁGENES DE ACUMULACIÓN ESPACIO-TEMPORALES.

Un video puede ser considerado como un volumen, con sus tres respectivas dimensiones. A diferencia de

un volumen físico, cuyas dimensiones son altura, profundidad y largo, un video no es más que un arreglo

de imágenes (cuadros) en secuencia, donde cada una de ellas existe en un tiempo diferente, obteniéndose

así dos dimensiones espaciales y una dimensión temporal. Las dimensiones espaciales son propias a una

imagen, ya que esta tiene una altura y un largo determinado; mientras que la dimensión temporal es

originada al situar secuencialmente una imagen tras otra.

Al rebanar este “paralelepípedo” a través del eje del tiempo, se obtienen dos partes en donde las caras de

cada medio paralelepípedo representan un plano en dos dimensiones. De esta manera es posible reducir la

dimensionalidad de 3 a 2, con el fin de reducir el tiempo y los recursos de procesamiento. En otras

palabras, al aplicar la técnica de acumulación espacio-temporal o “Spatio-temporal Slice” a un video, se

obtiene una imagen en 2 dimensiones (con un largo y un alto), en la que la información temporal está

implícita.

Para construir una imagen de acumulación, basta con analizar una línea sobre cada cuadro de video. El

objetivo es ir almacenando de manera sucesiva los pixeles sobre dicha línea específica (ya sea una fila o

una columna) en cada cuadro, para obtener al final una imagen que ha acumulado la información a través

de todo el video. Así, la primera fila o columna contiene la información del primer cuadro, la segunda, la

del segundo cuadro y así sucesivamente, obteniéndose al final una imagen 2D cuyas dimensiones

dependen del número de cuadro del video y del largo de la línea de acumulación.

Figura 1. Concepto de imagen de acumulación espacio-temporal. Como se observa en la figura, las imágenes son generadas al almacenar y concatenar la información cuadro a cuadro sobre cada una de las líneas

de acumulación. El algoritmo simplemente detecta los pixeles sobre la línea en cada cuadro, y los va acumulando de manera secuencial. Imagen

tomada de [5]

Page 18: Emparejamiento en imágenes de acumulación espacio-temporal

6

Este concepto fue introducido inicialmente por Edward Adelson y James Bergen [7], hacia 1985, y desde

entonces ha sido usado para muchas otras aplicaciones a nivel de procesamiento de imágenes y video. En

el trabajo documentado en [8] fue aplicado para detectar las transiciones entre tomas o “shots” de un

video, ya que permite observar de manera más fácil los cambios abruptos entre una toma y otra; también

se ha propuesto el uso de la acumulación por líneas en conjunto al uso de sensores laser como detectores

de parqueo [9], como una técnica de análisis de movimiento en la escena y de segmentación [10] y de

partición, caracterización, segmentación y representación de la información de un video [11].

En este caso particular, es necesario capturar dos imágenes de acumulación para analizarlas y procesarlas,

para posteriormente hallar la velocidad media en una vía. Para esto, se deben analizar dos líneas ubicadas

de manera perpendicular a la vía; cada una de estas líneas acumulara los pixeles horizontales en cada

cuadro de video. De esta manera se trabajará en todo momento con un par de imágenes de acumulación de

un mismo video para estimar la velocidad de los vehículos.

Este método de imágenes de acumulación espacio-temporal es aplicado en este trabajo de investigación

como continuación de trabajos de investigación previos del grupo SIRP [5] y [6], y como una técnica que

permite disminuir la cantidad de información a ser procesada y por ende, reducir el tiempo de

procesamiento por cuadro y aumentar la eficiencia del algoritmo.

3.2. ESTIMACIÓN DE LAVELOCIDAD MEDIA.

3.2.1. Visión Estéreo.

Antes de entrar en materia sobre como estimar la velocidad de un vehículo utilizando imágenes de

acumulación espacio-temporal, es necesario tratar el problema del cual se encarga la visión estéreo o

estereoscópica y de cómo este es abordado. Esto con el fin de entender de donde salió la idea que se

pretende aplicar para estimar la velocidad, ya que fue inspirada en visión estéreo.

El sistema visual humano, compuesto principalmente por los ojos y el cerebro, tiene la capacidad de

generar imágenes estéreo. Dada la posición de los ojos, las imágenes que se reciben en cada ojo son

prácticamente idénticas, con una diferencia en la posición de los objetos. Estas diferencias relativas en la

posición en cada imagen, tiene una relación directa con la distancia (profundidad) a la que se encuentran

los objetos entre sí, y al observador. El cerebro es capaz de interpretar esa diferencia y reconstruir la

estructura de la escena que ve el observador.

Según los autores en [17], existen tres pasos en el proceso de recuperación de la estructura de una escena.

Estas son, primero, seleccionar un punto característico de un objeto en una de las imágenes (vistas por

cada ojo), segundo, encontrar el mismo punto característico en la otra imagen (correspondencia), y

tercero, medir la diferencia relativa entre la posición de estos dos puntos. Esta última etapa es conocida

como disparidad.

La pregunta que surge de aquí es hasta qué punto las computadoras puede lograr la misma tarea, la de

encontrar la correspondencia entre puntos que son vistos en una imagen, con los mismos puntos vistos en

una segunda imagen, con el objetivo de recrear una escena. Se llama visión estéreo entonces a esta

capacidad de recuperar la estructura tridimensional de una escena a partir de, por lo menos, dos vistas o

imágenes diferentes de la misma.

Page 19: Emparejamiento en imágenes de acumulación espacio-temporal

7

En visión estéreo se busca principalmente construir un mapa de profundidad para reconocer que objetos

están más cerca o lejos entre sí y del observador, para recrear el entorno de la misma manera en que el

cerebro lo hace. En este caso, el arreglo de cámaras estéreo genera dos vistas de un mismo objetivo

(fondo), simulando la función que realizan los ojos; una vista derecha y una vista izquierda.

Figura 2. Imágenes estéreo.

Imágenes capturadas con un arreglo estéreo de cámaras [13].

Hallando la correspondencia entre los objetos, usando ambas imágenes, y conociendo la separación entre

las cámaras del arreglo estéreo, es posible determinar la profundidad de cada uno de los objetos en la

imagen [12]. Entre las aplicaciones que tiene la visión estéreo se encuentran la navegación de robots,

creación de realidad virtual, codificación de imágenes estéreo, seguimiento y vigilancia.

3.2.2. Disparidad.

A pesar de que el cálculo de la correspondencia entre puntos puede llegar a ser costoso a nivel

computacional, es posible reducir los costes conociendo las características del arreglo de cámaras estéreo,

aplicando principios de geometría. Este proceso es conocido como reproyección, y el resultado es un mapa

de profundidad de la escena.

Inicialmente se asumirá que la escena es completamente estática, es decir que los objetos en la imagen no

cambian de posición ni sufren deformaciones, y que se cuenta con un arreglo estéreo perfectamente

alineado, calibrado y sin distorsión; dos cámaras con características similares, cuyos planos de imagen son

coplanares, donde los ejes ópticos paralelos entre sí.

Page 20: Emparejamiento en imágenes de acumulación espacio-temporal

8

Las cámaras cumplen con el modelo pinhole, el cual describe la relación matemática entre las coordenadas

3D de un punto y su respectiva proyección en un plano 2D (Figura 3), donde la apertura de la cámara es

descrita como un punto u orificio, llamado foco, sin el uso de lentes que focalicen la luz [18]. El modelo

se caracteriza por la distancia del plano imagen al foco (distancia focal) y el tamaño del sensor.

Figura 3. Modelo "pinhole".

Figura 4. Proyección 3d sobre un plano 2D.

En la Figura 5, se muestra un arreglo estéreo de dos cámaras. Como se mencionó, los ejes ópticos de las

cámaras son paralelos,

. Las cámaras presentan la misma distancia focal , cuyos centros y

están separados una distancia , llamada línea base; las imágenes formadas e se encuentran el

plano paralelos (coplanares). Se asume que un punto físico en el mundo físico, genera dos proyecciones,

y , en las imágenes e . Gracias al modelo pinhole, el punto de coordenadas tridimensionales

( ) es proyectado en ambos planos 2D, con coordenadas ( ) y ( ) respectivamente.

El plano que contiene a los puntos , y , interseca a las imágenes en dos rectas y . Estas son

dos rectas epipolares entre sí; es decir que un punto , en la recta de la imagen tiene su

correspondiente en algún punto de la recta . Esto reduce la búsqueda del correspondiente de de toda

la imagen a la recta . Aunque esta delimitación reduce el espació de búsqueda (reduciendo costes

computacionales al mismo tiempo), el problema de la correspondencia presenta otras dificultades; es

posible que los puntos sobre una imagen estén ocultos en la otra (oclusión) y que la similitud entre dos

puntos sea confundida con el ruido presente en las imágenes.

Page 21: Emparejamiento en imágenes de acumulación espacio-temporal

9

Figura 5. Configuración estéreo de un arreglo de dos cámaras [14].

Con base a la geometría (Figura 6) del arreglo estéreo y a las restricciones impuestas, es posible llegar a

una expresión para la profundidad de los objetos en la escena.

Figura 6. Arreglo estéreo calibrado.

Conociendo la correspondencia entre puntos, es posible hallar la profundidad con triángulos semejantes [12].

En [12], el autor deduce una expresión que relación la profundidad de los objetos con la disparidad o

diferencia entre las coordenadas horizontales de los puntos y . De esta manera, considerando los

triángulos , y y utilizando semejanza entre triángulos se llega a qué:

( )

Basados en la expresión anterior es posible recuperar la profundidad de cada píxel en cada una de las

imágenes a partir de la disparidad calculada. Asimismo, se observa que la profundidad es inversamente

Page 22: Emparejamiento en imágenes de acumulación espacio-temporal

10

proporcional a la disparidad. Como consecuencia, la visión estéreo tiene mayor resolución de profundidad

para los objetos que están relativamente más cerca de la cámara, como se observa en la Figura 7.

Figura 7. Relación entre la profundidad y la disparidad [12].

El resultado de análisis previo, son mapas de profundidad de la escena (ver ¡Error! No se encuentra el

origen de la referencia.¡Error! No se encuentra el origen de la referencia.). Para esto existen

numerosos algoritmos y métodos para hallar la disparidad de los objetos, y así construir los mapas. Cabe

resaltar que para una correcta construcción de los mapas, en necesario realizar 3 pasos previos, los cuales

no serán discutidos en el trabajo, puesto que hacen parte del tema de visión estéreo. Estos pasos son:

calibración de las cámaras, rectificación de las imágenes y correspondencia de todos los puntos.

3.2.3. Estimación de la Velocidad.

Del problema abarcado por visión estéreo, de generar mapas de profundidad para recrear escenas, se

deriva el concepto utilizado para el cálculo de la velocidad de los vehículos en una vía. Inicialmente se

cuenta con dos imágenes de acumulación que representarían las dos vistas de un arreglo de cámaras

estéreo. Esta imágenes, a diferencia de las capturaras en el arreglo estéreo, presentan dos rectas epipolares

verticales; es decir que la correspondencia se limita solo al eje vertical. Esto solo sí se supone que los

vehículos mantienen su trayectoria sobre el carril, lo cual genera una primera limitación a suponer para

usar.

La velocidad se define como distancia recorrida sobre tiempo gastado en recorrerla. Al colocar dos líneas

sobre las cuales se acumula la información cuadro a cuadro, la separación entre ellas es conocida, del

mismo modo en que es conocida la distancia entre las dos cámaras en el arreglo estéreo; esta información

viene siendo la distancia recorrida por un vehículo.

Para calcular el tiempo que invirtió recorriendo dicha distancia es necesario hallar la disparidad o

diferencia entre las coordenadas verticales (correspondencia), ya que como fue mencionado anteriormente,

la información temporal está implícita en las imágenes de acumulación; este número de pixeles de

diferencia indica cuanto demoro un vehículo en recorrer la distancia entre las líneas de acumulación, ya

que cada fila de la imagen representa un cuadro del video. Así, al multiplicar la disparidad por el tiempo

de muestreo de la cámara es posible obtener el tiempo invertido en recorrer esta distancia.

De esta manera, la velocidad queda definida como

Page 23: Emparejamiento en imágenes de acumulación espacio-temporal

11

donde V es la velocidad en pixeles por segundo, d la diferencia en pixeles o disparidad entre los dos

puntos superiores del mismo vehículo en ambas imágenes , L la distancia de separación entre las líneas de

acumulación, y Ts el periodo de muestreo de la cámara. Para encontrar un equivalente en metros por

segundo basta usar los parámetros intrínsecos de la cámara calibrada y convertir esta medida en metros

por segundo o kilómetros por hora.

Se observa que la velocidad es inversamente proporcional a la disparidad, como sucede con la

profundidad en el arreglo estéreo; si la disparidad es mínima, es indicio que el vehículo cruzo por ambas

líneas casi al mismo tiempo, reduciendo la diferencia entre las coordenadas vertical en ambas imágenes.

Para que haya cruzado las líneas casi al mismo tiempo, la velocidad del vehículo debe de ser alta (Figura

45, Figura 46 y Figura 47).

3.3. TÉCNICAS DE EMPAREJAMIENTO.

Para estimar la velocidad utilizando imágenes de acumulación espacio-temporales es necesario calcular la

correspondencia entre las imágenes. Para esto, existen numerosas técnicas y algoritmos computacionales

que pueden ser aplicados para la obtención de la disparidad. El problema de hallar la correspondencia

consiste en encontrar que punto de la imagen izquierda corresponde con qué punto de la imagen derecha,

es decir, encontrar los puntos en cada imagen que son proyección del mismo punto del espacio.

3.3.1. Restricciones.

Existen hipótesis que se aplican a los algoritmos para el cálculo de la disparidad. Estas hipótesis o

restricciones están basadas en propiedades físicas y geométricas de los objetos en la escena, mas adelante

se explicarán las equivalencias de estas restricciones aplicadas al problema de estimación de la velocidad.

Las restricciones comúnmente nombradas en la literatura [27] [33] son:

Restricción epipolar. Está dada por la geometría epipolar del par estéreo, e implica que el

correspondiente de un punto en una imagen debe estar en la recta epipolar del punto en la otra

imagen. Gracias a esta restricción, la búsqueda de la correspondencia se reduce a una recta.

Restricción de orden. Implica que si la proyección del objeto Q está a la izquierda de la

proyección del objeto P en la imagen izquierda, entonces la proyección de Q estará también a la

izquierda de la proyección de P en la imagen derecha.

Restricción de unicidad. Implica que cada punto de una imagen puede tener no más de un

correspondiente en la otra imagen. Esta restricción contempla que pueda no existir ningún

correspondiente, como puede ser en el caso que este oculto en la otra imagen (oclusión).

Restricción de semejanza o compatibilidad. Implica que las características de los puntos en una

imagen (intensidad, color, etc.) no deben cambiar mucho entre ambas imágenes.

Page 24: Emparejamiento en imágenes de acumulación espacio-temporal

12

3.3.2. Clasificación de las técnicas de emparejamiento.

Los algoritmos para calcular la disparidad puede ser clasificados en dos, según autores como Brown [36],

de acuerdo a como utilizan la información de la imágenes para encontrar la correspondencia entre puntos.

De acuerdo a esto, se dividen en los que utilizan restricciones locales en una ventana alrededor del punto

en cuestión y aquellos que imponen restricciones globales en la imagen. Los métodos locales son bastante

eficientes a nivel computacional pero son muy sensibles a regiones locales ambiguas, como oclusiones o

regiones con texturas uniformes; los métodos globales reducen esta sensibilidad al contar con más

información que permiten solucionar estas ambigüedades, pero gracias a que toman la imagen como un

todo, son mucho más costosos a nivel computacional.

A su vez, los algoritmos locales son subclasificados según el método que usan para hallar la

correspondencia, en:

Emparejamiento por bloques (Block Matching). Se basa en encontrar el punto correspondiente

comparando una región (plantilla) alrededor del punto con un conjunto de regiones iguales en la

otra imagen. La región que presenta mayor semejanza es la elegida y se selecciona el punto

correspondiente. Como se mencionó anteriormente, la restricción epipolar reduce la búsqueda a

una sola dimensión. Las medidas usadas para la semejanza son: la correlación normalizada

(NCC), suma de diferencias absolutas (SSA), suma de diferencias al cuadrado (SSD) y un conteo

de los intensidades de gris mayores que la intensidad de gris del centro de la región (rank

transformation, census transformation).

Basados en el gradiente o flujo óptico (Optical Flow). Buscan determinar disparidades pequeñas

entre dos imágenes planteando una ecuación diferencial relacionando el desplazamiento y el brillo

de la imagen. Para realizar esto, se asume que el brillo de un punto en la escena es constante entre

ambas vistas,

Emparejamiento de características (Feature Matching). Se basa en buscar los puntos

correspondientes en regiones de la imagen donde existen características relevantes, como vértices

y bordes. Estos puntos no son muchos, y los mapas de disparidad que se pueden calcular no son

densos; se obtienen puntos ubicados en el espacio pero no un mapa de disparidad con la

profundidad estimada para cada punto de la imagen.

La correspondencia global, como fue mencionado, se basa en restricciones no-locales para reducir la

sensibilidad a regiones locales de la imagen, debido a oclusiones, texturas uniformes, etc. El uso de estas

restricciones globales aumenta la complejidad computacional significativamente. Existen comúnmente

tres tipos de búsqueda:

Programación dinámica (Dynamic Programming). Reduce la complejidad de cálculo en problemas

de optimización descomponiendo el problema en subproblemas menores. Las restricciones

globales que se imponen con este método son, generalmente, la restricción epipolar y la

restricción de orden. Para esto se construye una representación de las posibles correspondencias

para cada punto construyendo una imagen que se denomina imagen del espacio de disparidad

(DSI) donde se busca un camino que recorra este espacio y minimice un cierto costo.

Curvas intrínsecas (Intrinsic Curves). Este método se basa en la búsqueda de correspondencias

globales utilizando una representación alternativa de las imágenes, las curvas intrínsecas. Estas

Page 25: Emparejamiento en imágenes de acumulación espacio-temporal

13

curvas son la representación vectorial de los descriptores de las imágenes, obtenidos al aplicar

operadores a los píxeles, como operadores de bordes o esquinas.

Cortes de grafos (Graph Cuts). Se basa en armar un grafo a partir de los datos de las imágenes y

buscar un corte mínimo. Dependiendo como se arma el grafo, el resultado obtenido es la

minimización de una cierta expresión de energía. Este procedimiento se puede considerar análogo

al de hallar el mejor camino en una imagen bidimensional, con Programación Dinámica, pero

extendido a tres dimensiones, con coherencias en las dos dimensiones.

Debido a la alta complejidad y al alto coste computacional del cálculo de la correspondencia con

restricciones globales, estos algoritmos no serán aplicados ni estudiados; la idea principal del trabajo es

hallar un algoritmo simple, eficiente y de bajo coste computacional que resuelva el problema, por lo que

estas tres aproximaciones serán descartadas. De la misma manera, solo serán abordados los algoritmos con

restricciones locales que calculan el emparejamiento por bloques, ya que son los de menor coste y de fácil

implementación.

A continuación se estudiarán las técnicas con las cuales se trabajará a lo largo del proyecto de

investigación. Se explicaran detalladamente, teniendo en cuenta ya las modificaciones o limitaciones

necesarias para acondicionarlas a la solución del problema. Como se ha menciona, son técnicas usadas

para el mapeo de densidades en arreglos estéreo, por lo que es necesario realizar ciertas consideraciones

con el fin de aplicarlas a la problema de estimar la velocidad media de los vehículos en una vía.

3.4. CORRELACIÓN CRUZADA 2D (CC).

La correlación cruzada es una medida que da información sobre la similitud entre dos señales diferentes;

generalmente es usada para caracterizar señales desconocidas a partir de la comparación con señales

conocidas. Matemáticamente consiste en desplazar una señal sobre otra, realizando una sumatoria entre

cada punto sobrepuesto entre las dos señales. Difiere de la convolución clásica en que no existe inversión

de una de las señales.

La correlación cruzada entre dos imágenes consiste en la suma del producto de los pixeles al desplazar una

imagen sobre otra. Inicialmente una imagen esta “estática”, mientras la otra imagen está siendo desplazada

de derecha a izquierda (filas) y de arriba hacia abajo (columnas), para posteriormente realizar el producto

entre los pixeles que se sobreponen y finalmente sumar todos los productos obtenidos. Las dimensiones

del resultado serán iguales a la suma de las dimensiones correspondientes a cada imagen menos un pixel.

( )

Los resultados que realmente son significativos y de interés son los contenidos en la columna de la mitad

de la matriz resultante. Esto se debe a que esta columna coincide con los resultados obtenidos al desplazar

la imagen A sobre la imagen B en sentido vertical (de arriba hacia abajo), caso particular que es de

completo interés para el desarrollo de este proyecto, asumiendo una restricción epipolar vertical.

Page 26: Emparejamiento en imágenes de acumulación espacio-temporal

14

Asimismo, el valor de la mitad de la columna de “interés” es el resultado obtenido al sumar los productos

de los pixeles de las imágenes cuando la imagen A esta completamente sobre la imagen B.

∑[ ( )] [ ( )]

Los valores de la columna interés brindan información necesaria para obtener el número de filas que debe

desplazarse (verticalmente) una imagen respecto a la otra para obtener el mejor emparejamiento posible.

De esta manera es posible hallar la disparidad de las imágenes, o el número de “pixeles” que debe

desplazarse una imagen respecto a la otra para que sean prácticamente iguales.

Si estos valores son representados gráficamente, el resultado obtenido será una gráfica en forma de

triángulo. El pico de la gráfica representa el punto donde las dos imágenes coinciden de la mejor manera

posible. El eje Y da información sobre que tanto se parece una imagen a otra, mientras que el eje X indica

cuanto fue necesario desplazar la imagen para que obtener este valor. Es así como al realizar la correlación

ente una misma imagen de MxN dimensiones, se espera que el pico de la gráfica indicará que fue

necesario moverla M pixeles para lograr el máximo emparejamiento; moverse M pixeles, para este caso,

significa que una imagen está completamente sobre la otra.

Lo anterior se debe a que inicialmente se cuenta con que la imagen B esta quieta, mientras la imagen A se

va desplazando verticalmente (fila por fila) sobre la imagen A, inicialmente sin “contacto” alguno. Así es

como el primer valor se interpreta como que la imagen A ha sido desplazada una fila sobre la imagen B; el

segundo, que ha sido desplazada dos filas; y el m-ésimo valor es cuando la imagen A ha sido desplazada

M filas sobre la imagen B, que coincide con que están una está completamente sobre la otra. Es decir que

la primera mitad de los valores son obtenidos cuando la imagen A esta “entrando” sobre la imagen B hasta

que queden una totalmente sobre la otra (m pixeles), mientras que la segunda mitad (m + 1 pixeles) de los

valores, hacen referencia a cuando la imagen A esta “saliendo” sobre la imagen B.

Figura 8. Representación grafica de la correlación cruzada.

La imagen A (roja) y la imagen B (azul) son de dimensiones . (a) Inicialmente la imagen A no está sobre la imagen B; (b) la imagen A

desplazada una fila sobre la imagen B; (c) desplazada filas (x ); (d) desplazada m filas (una totalmente sobre la otra); (e) desplazada

filas ( ); (f) desplazada filas; (g) desplazada filas (la imagen A ya ha pasado del todo sobre la imagen B).

A partir de este punto de referencia, es necesario calcular el número de pixeles neto que fue desplazada la

imagen. Si la imagen estaba “entrando” cuando se encontró el mejor emparejamiento, la coordenada en X

será menor que el punto de referencia (a la izquierda); si por otro lado, la imagen estaba “saliendo”, la

coordenada será mayor al punto de referencia (a la derecha). El resultado se obtiene restando el punto de

referencia con la coordenada en donde se encuentra el mayor pico, y tomando solo su magnitud (valor

Page 27: Emparejamiento en imágenes de acumulación espacio-temporal

15

absoluto). De esta manera es posible obtener el número de pixeles relativos que fue desplazada una

imagen respecto a la otra. El signo del resultado no es importante ya que no brinda información

significativa para el proyecto.

3.5. CORRELACIÓN CRUZADA NORMALIZADA (NCC).

La correlación cruzada normalizada es, al igual que la correlación cruzada normal, la sumatoria del

producto de los pixeles sobrepuestos de una imagen al ser desplazada sobre la otra, donde la intensidad de

cada pixel ha sido normalizada. Esto se logra al restar de cada pixel el valor medio o promedio de

intensidad de la imagen correspondiente al pixel, y dividiendo por la raíz cuadrada del producto de cada

una de estas restas al cuadrado. Es decir que

∑[( ( )) ] [( ( ) )]

√[( ( )) ] [( ( ) )]

Gracias a esto, el resultado es independiente de los cambios de brillo o contraste de la imagen, los cuales

están relacionados con el valor medio y la desviación estándar [34]. Esto reduce los errores obtenidos a

causa de características propias del video (iluminación, nitidez, etc.), lográndose así un resultado que se

aproxima más a lo esperado.

Las dimensiones del resultado no varían a las dimensiones obtenidas al usar la correlación cruzada 2D no

normalizada. Del mismo modo, aquí el punto de interés es el pico más alto obtenido al graficar los valores

obtenidos, ya que se espera un máximo, indicando que allí se obtuvo la correspondencia más aproximada.

Solo basta con hallar este máximo, y sustraerlo al número de filas de la imagen, obteniéndose como

resultado la disparidad.

3.6. SUMAS DE DIFERENCIAS ABSOLUTAS (SAD).

El algoritmo de suma de diferencias absolutas es una técnica usualmente usada para medir la similitud

entre dos imágenes. Este algoritmo consiste en sumar la diferencia absoluta entres cada pixel de una

imagen o ventana “original” y el correspondiente pixel en una imagen o ventana usada “plantilla”. Este

método es útil para encontrar un bloque de una imagen en otra, para reconocer alguna parte específica de

la imagen o, como es el caso, determinar qué tan similar es una imagen a otra.

∑ ( ) ( )

Este algoritmo fue implementado en el proyecto como otra manera de calcular la disparidad entre dos

imágenes de acumulación y, de esta manera, obtener una medida de la velocidad promedio de los

vehículos en la imagen. Para esto, se procedió de manera similar al algoritmo de correlación cruzada en

2D; se deja una imagen estática, mientras la otra es desplazada sobre la primera, calculando cada vez la

sumatoria de las diferencias absolutas de cada fila. Una vez más se mantiene la hipótesis de que el

Page 28: Emparejamiento en imágenes de acumulación espacio-temporal

16

desplazamiento relativo al eje horizontal no es significativo, por lo que solo es necesario desplazar la

imagen verticalmente.

De esta manera es posible determinar el número de pixeles que es necesario mover una imagen respecto a

la otra para maximizar la similitud entre las dos imágenes de acumulación. Cabe aclarar nuevamente, que

se habla de número de pixeles que hay que mover la imagen, pero en realidad esto puede verse como el

número de filas que debe desplazarse la imagen.

Al graficar los resultados de las sumas parciales de las diferencias absolutas obtenidas a partir del

desplazamiento de una imagen sobre la otra, el resultado obtenido es una curva con un punto de inflexión

notable, el cual indica el lugar donde se minimizo la diferencia entras imágenes. Al igual que con la

correlación cruzada, el resultado está conformado por ( ) valores, donde son el numero

de filas de las imágenes de acumulación.

( )

( )

Es así como al aplicar el algoritmo SAD entre la misma imagen, se esperaría que el punto de inflexión

notable cayera en el valor de la mitad, significando esto que no es necesario desplazar la imagen para

minimizar el error (ya que es idéntica). En este caso, ese valor de la mitad será igual a cero, ya que al

sumar la diferencia entre una imagen consigo misma, el resultado es cero. A continuación se ilustra de

manera más clara el proceso descrito:

Figura 9. Matrices ejemplo para el algoritmo SAD.

A la izquierda, la imagen ; a la derecha, la imagen

∑ ∑ ( ) ( )

|( )| |( )| |( )| ( ) ( ) ( )

∑( ) ∑ ( ) ( ) ∑ ( ) ( )

Page 29: Emparejamiento en imágenes de acumulación espacio-temporal

17

∑( ) ∑ ( ) ( ) ∑ ( ) ( ) ∑ ( ) ( )

∑( ) ∑ ( ) ( ) ∑ ( ) ( )

∑ ∑ ( ) ( )

[ ]

Como puede observarse, las dos imágenes del ejemplo anterior tenían dimensiones , por lo que se

espera que el resultado del algoritmo SAD, tenga valores. Se observa también

que, como se había mencionado, el punto de inflexión ocurre en el tercer valor, indicando que es necesario

mover 3 filas la imagen I sobre la imagen J para que sean iguales; en otras palabras, la disparidad entre las

imágenes es de

3.7. SUMA DE DIFERENCIAS AL CUADRADO (SSD).

Este algoritmo es básicamente igual al de algoritmos de sumas de diferencias absolutas (SAD), solo que

éste en vez de acumular las sumas de las diferencias absolutas, se acumulan las diferencias de los pixeles

al cuadrado.

∑[ ( ) ( )]

Esto permite simplemente obtener valores espacialmente más distantes entre sí; si se grafican dichos

valores, puede observarse que los puntos de inflexión son más prominentes, lo que puede llevar a una

manera más fácil y rápida de reconocer dichos puntos de interés para el cálculo de la disparidad. Una vez

más, el punto importante en la gráfica, el cual brinda información sobre la disparidad, es la inflexión

abrupta que aparece hacia el medio del eje x.

Cabe aclarar que son las restas entre cada par de pixeles la que son elevadas al cuadrado, y no la suma de

las restas de toda la fila; el segundo caso sería simplemente tomar el resultado aplicando SAD y elevar

dicho resultado al cuadrado. Para entender mejor, considérese el mismo ejemplo de la Figura 9, el

resultado al aplicar el algoritmo de suma de diferencias al cuadro es el siguiente:

∑( ) ∑[( ) ( )]

( )

( ) ( )

( )

( ) ( ) ( )

Page 30: Emparejamiento en imágenes de acumulación espacio-temporal

18

∑[( ) ( ) ] ∑[( ) ( )] ∑[( ) ( )]

∑( ) ( ) ( ) ∑[( ) ( )] ∑[( ) ( )] ∑[( ) ( )]

∑( ) ( ) ∑[( ) ( )] ∑[( ) ( )]

∑( ) ∑[( ) ( )]

[ ]

El resultado obtenido es igual al resultado obtenido mediante SAD; esto simplemente fue una

coincidencia y es causa de que el resultado de las restas sea 1, por lo que al elevarlos al cuadrado no

denotan diferencia alguna.

Figura 10. Curvas características de las técnicas SAD y SSD.

0 200 400 600 800 1000 12000

0.5

1

1.5

2

2.5

3

3.5

4

4.5x 10

4 SAD

0 200 400 600 800 1000 12000

2000

4000

6000

8000

10000

12000SSD

Page 31: Emparejamiento en imágenes de acumulación espacio-temporal

19

4. DESARROLLOS.

Una vez expuestos los diferentes algoritmos utilizados para el cálculo de la disparidad para la generación

de mapas de profundidad en problemas de visión estéreo, es necesario aplicar dichas técnicas,

acondicionándolas a la solución del problema de la estimación de la velocidad media, con el fin de

analizar cuál es el algoritmo que presenta mayor eficiencia a nivel de recursos usados y complejidad.

A continuación se presentan los cuatro algoritmos utilizados para tal fin, basados en las técnicas expuestas

anteriormente. Se pretende recopilar el desarrollo del proceso llevado a cabo para la solución del problema

planteado en el proyecto de investigación, así como de las pruebas y consideración que se fueron haciendo

a través del mismo. El desarrollo se llevó a cabo utilizando el software matemático MATLAB, el cual se

basa en operaciones y la manipulación de matrices para la solución de problemas numéricos.

4.1. DISEÑO PRELIMINAR.

4.1.2. Algoritmos preliminares basados en las técnicas de emparejamiento estéreo.

Como se mencionó anteriormente, las 4 técnicas básicas que se utilizaran para solucionar el problema son

la correlación cruzada en 2D no normalizada (CC) y normalizada (NCC), y la suma de diferencias

absolutas (SAD) y al cuadrado (SSD). Las dos primeras técnicas se basan principalmente en sumas de

productos, mientras que las dos últimas en sumas de diferencias.

(1A) (1B)

(1C) (1D)

Figura 11. Imágenes sintéticas para el diseño preliminar de los algoritmos.

X: 70 Y: 90

RGB: 0, 0, 0

X: 190 Y: 110

RGB: 0, 0, 0

X: 70 Y: 100

RGB: 0, 0, 0

X: 190 Y: 120

RGB: 1, 1, 1

X: 70 Y: 122

RGB: 0, 0, 0

X: 190 Y: 142

RGB: 0, 0, 0

X: 92 Y: 122

RGB: 0, 0, 0

X: 210 Y: 142

RGB: 0, 0, 0

Page 32: Emparejamiento en imágenes de acumulación espacio-temporal

20

Inicialmente se contó con imágenes generadas con el fin de comprobar la correcta implementación de los

algoritmos. Estas imágenes fueron generadas sintéticamente. Se crearon 4 imágenes compuestas de un

fondo negro con un bloque blanco, el cual simulaba un automóvil. La imagen A fue considerada la

original, mientras que las tres imágenes restantes B,C y D, presentaban corrimientos en el eje vertical y/o

horizontal con el fin de generar tres casos diferentes a los cuales se les iba a encontrar la correspondencia,

corroborando la correcta implementaciones de las 4 técnicas.

Las 4 imágenes son de dimesiones 300x300 pixeles. El bloque blanco, de 120x20 píxeles, era el mismo en

todas las imágenes. Tomando como referencia el vertice superior izquierdo del bloque de la imagen 1A, se

desplazaron los 3 restantes bloques un número definido de pixeles a largo del eje vertical (1B y 1C), y del

eje vertical y horizontal (1D). De esta manera, las disparidad gerenadas fueron:

IMAGEN VERTICE SUPERIOR

IZQUIERDO DESPL.

VERTICAL

DESPL.

HORIZONTAL

DISPARIDAD

RESPECTO A 1A

1A (70,90) - - 0

1B (70,100) 10 0 10

1C (70,122) 32 0 32

1D (90,122) 32 20 32

Tabla 1. Disparidades de las 4 imágenes sintéticas.

La idea básicamente era la de aplicar los 4 algoritmos en base a las técnicas expuestas, y corrobar, usando

la Tabla 1, su correcta implementación. Los casos usados para el diseño previo son: disparidad entre 1A-

1A, 1A-1B, 1A-1C y 1A-1D. El bloque de la imagen 1D fue desplazada a lo largo de ambos ejes con el fin

de observar el comportamiento de los algoritmos ante pequeños desplazamiento horizontales. Como se

presume que no existe variación entre las dos imágenes de acumulación a lo largo del eje horizontal,

suponiendo esto que los automóviles mantienen una trayectoria recta sobre el mismo carril al cruzar por

las “líneas de acumulación” en el video, el problema se reduce a encontrar la correspondencia en una sola

dimensión; esta hipótesis es equivalente a la conocida en el problema de estéreo como restricción epipolar

[26]. Lo que se pretende con este desplazamiento horizontal es observar que implicaciones trae consigo

diferencias en este eje, ya que en imágenes de acumulación de las vías los vehículos pueden llegar a

presentar movimiento horizonta.

Inicialmente se utilizó la función que trae por defecto MATLAB para realizar la correlación cruzada 2D,

llamada xcorr2(A,B), la cual computa la correlación cruzada entre las matrices A y B. El problema que

trae consigo esta función es el gasto computacional debido a información que no es necesaria. Esto sucede

debido a que la función comienza a desplazar la matriz A sobre la matriz B, de derecha a izquierda y de

arriba hacia abajo; como se ha mencionado, la restricción epipolar limita la correspondencia a un solo

ejes, en este caso el vertical, por lo que no es necesario desplazar la matriz A sobre la matriz B de derecha

a izquierda (sentido horizontal). Esto conlleva a realizar operaciones que no aportan información

relevante, invirtiéndose mayor cantidad de recursos computacionales en el cálculo de dichas operaciones.

Se decidió implementar una función más sencilla que solamente computara el desplazamiento vertical de

una matriz sobre la otra. Se planteó un algoritmo en base a iteraciones, el cual simplemente acumula la

operación ente los pixeles en un vector del largo adecuado (2M-1, según el número de filas de las

matrices), el cual desplaza cada fila de la matriz a lo largo de la otra.

Supóngase que se tienen dos matrices de 3x2, la matriz A y B. A continuación se explicará el algoritmo

paso a paso, utilizando estas matrices de menor tamaño.

Page 33: Emparejamiento en imágenes de acumulación espacio-temporal

21

[

] [

]

Como es de esperarse, el resultado de desplazar una matriz de 3x2 sobre otra matriz de 3x2 tendrá

dimensiones

( ) ( ) ( )

[ ]

El algoritmo entonces comienza por desplazar fila por fila sobre la otra matriz, realizando la operación

indicada y guardando ese resultado en un vector. Esto puede verse como que se generan M vectores

resultado (dx), uno por cada fila de la matriz A que es desplazada sobre la matriz B, los cuales al final se

sumaran punto a punto para obtener el resultado total. Se inicia con la última fila de la matriz A y la

primera de la matriz B.

[

]

[

]

[

]

( ) ( )

( ) ( )

( ) ( )

( ) ( )

( ) ( )

[ ( ) ( )( ) ( )( ) ( )( ) ( )( ) ( )]

[ ( ) ( )( ) ( )( ) ( )( ) ( )( ) ( )]

[ ]

Una vez desplazada la última fila de la matriz A sobre la matriz B, se procede a desplazar la fila

inmediatamente anterior a la última fila de A. Otra vez es generado un vector resultado, con la diferencia

que los resultados comienzan a almacenarse un valor después.

( )

( ) ( )

( ) ( )

( ) ( )

( ) ( )

Page 34: Emparejamiento en imágenes de acumulación espacio-temporal

22

[ ( ) ( )( ) ( )( ) ( )( ) ( )( ) ( )]

[ ( ) ( )( ) ( )( ) ( )( ) ( )( ) ( )]

[ ]

Finalmente, se realiza el mismo procedimiento con la fila inmediatamente anterior a la última fila

desplazada, así:

( )

( )

( ) ( )

( ) ( )

( ) ( )

[ ( ) ( )( ) ( )( ) ( )( ) ( )( ) ( )]

[ ( ) ( )( ) ( )( ) ( )( ) ( )( ) ( )]

[ ]

Ya con los vectores resultado obtenidos, solo basta con sumarlos para obtener el resultado total.

[ ]

[

]

[ ]

[ ]

[ ]

[ ]

De esta manera se ha representado el proceso de desplazar una matriz sobre otra, sumando el producto

entre los pixeles que se sobrelapan. Con este algoritmo fueron generados los otros, ya que básicamente la

idea es la misma: desplazar una imagen sobre otra y acumular una operación entre sus pixeles.

4.1.2. Aplicación de los algoritmos preliminares para el cálculo de la disparidad.

Como se ha mencionado, lo que se busca al aplicar los algoritmos basados en las técnicas estéreo entre dos

imágenes es la de encontrar el número de pixeles que la primera imagen esta “desfasada” respecto a la

segunda. Para obtener el número de pixeles, es necesario analizar los resultados obtenidos mediante su

Page 35: Emparejamiento en imágenes de acumulación espacio-temporal

23

grafica. Debe ubicarse el punto más alto de la gráfica (para CC y NCC) o el punto de inflexión (SAD y

SDD) según el caso, cuya coordenada X indicará de manera indirecta cuantos pixeles fue necesario

desplazara la imagen.

Para la correcta interpretación de la coordenada, debe tenerse en cuenta que el punto medio de la gráfica

es el punto de referencia, ya que es allí donde una imagen está totalmente sobre la otra; en otras palabras,

es en ese punto donde se encontraría el pico más alto al realizar la correlación cruzada entre la misma

imagen, ya que como es de esperarse, la mayor coincidencia de pixeles se da cuando la imagen esta sobre

si misma (no es necesario desplazamiento alguno, ya que son la misma imagen). Asimismo, será en ese

punto de la mitad donde se encontraría la inflexión más prominente al realizar las sumas de diferencias, ya

que se espera que el resultado sea 0.

A continuación se muestran las disparidades halladas al aplicar los 4 algoritmos sobre las imágenes

sintéticas creadas para el diseño previo. En la Tabla 2 se comparan estos resultados obtenidos.

Correlación Cruzada 2D

Caso Máx. Pico (en ‘x’) Disparidad

1A – 1A 300 0

1A – 1B 310 10

1A – 1C 332 32

1A – 1D 332 32

Suma de Diferencias Absolutas

Caso Inflexión (en ‘x’) Disparidad

1A – 1A 300 0

1A – 1B 310 10

1A – 1C 332 32

1A – 1D 332 32

Tabla 2. Aplicación de los algoritmos sobre las imágenes sintéticas.

Como se observa en la Tabla 2, los algoritmos funcionan correctamente con las imágenes generadas

sintéticamente. Cabe resaltar que las imágenes son muy básicas al estar compuestas de una sola figura y

estar en blanco y negro; gracias a la presencia de solo dos colores (binaria, solo unos «blanco» y ceros

«negro») las operaciones realizadas no implican un coste alto al tratarse de aritmética entre 1 y 0.

Si se observa (Figura 13), la correlación cruzada normalizada presenta un error al calcular la disparidad

del cuarto caso; esto es posiblemente causado por la cantidad de fondo vs bloque que hay presente en la

imagen, y que el fondo es negro.

Más adelante se mostrará el desempeño del algoritmo de manera real, utilizando imágenes más acordes a

la realidad (ya que es obvio que nunca se obtendrán imágenes binarias en las imágenes acumuladas sobre

la vía). Hay que recordar que la idea de normalizar cada pixel es la de reducir la influencia que tiene el

brillo, ocasionado por la iluminación en el video; una imagen binaria no presenta problemas de intensidad,

ya que o es negro o es blanco.

Correlación Cruzada Normalizada

Caso Máx. Pico (en ‘x’) Disparidad

1A – 1A 300 0

1A – 1B 310 10

1A – 1C 332 32

1A – 1D 300 0

Suma de Diferencias al Cuadrado

Caso Inflexión (en ‘x’) Disparidad

1A – 1A 300 0

1A – 1B 310 10

1A – 1C 332 32

1A – 1D 332 32

Page 36: Emparejamiento en imágenes de acumulación espacio-temporal

24

Figura 12. Resultados de la Correlación Cruzada sobre la imágenes sintéticas.

Figura 13. Resultados de la Correlación Cruzada Normalizada sobre las imágenes sintéticas.

En la Figura 12, Figura 13 y Figura 14 se pueden ver gráficamente los resultados de aplicar los cuatro

algoritmos a los diferentes casos generados sintéticamente para el diseño previo. Como se explicó

anteriormente, en las gráficas de los algoritmos de correlación cruzada (CC y NCC), el punto que interesa

extraer, y el que contiene implícitamente la información sobre la disparidad, es el punto máximo de la

0 100 200 300 400 500 6000

1000

2000

3000

4000

5000

6000

70001A - 1A

X: 300

Y: 6756

0 100 200 300 400 500 6000

1000

2000

3000

4000

5000

6000

70001A - 1B

X: 310

Y: 6756

0 100 200 300 400 500 6000

1000

2000

3000

4000

5000

6000

7000

X: 332

Y: 6756

1A - 1C

0 100 200 300 400 500 6000

1000

2000

3000

4000

5000

60001A - 1D

X: 332

Y: 5622

0 100 200 300 400 500 6000

2

4

6

8

10x 10

4 1A - 1A

X: 300

Y: 9e+004

0 100 200 300 400 500 6000

2

4

6

8

10x 10

4 1A - 1B

X: 310

Y: 8.69e+004

0 100 200 300 400 500 6000

2

4

6

8

10x 10

4 1A - 1C

X: 332

Y: 8.04e+004

0 100 200 300 400 500 6000

2

4

6

8

10x 10

4 1A - 1D

X: 300

Y: 8.081e+004

Page 37: Emparejamiento en imágenes de acumulación espacio-temporal

25

gráfica (Figura 12 y Figura 13) donde ocurre la máxima correspondencia entre ambas imágenes (debido a

que es una suma de productos).

Por otro lado, en los algoritmos SAD y SSD, la disparidad se obtiene identificando el punto donde ocurre

una inflexión abrupta, hacia la mitad del eje horizontal (Figura 14); esto se debe a que estos dos últimos

algoritmos acumulan restas, por lo que se espera que la máxima correspondencia entre imágenes se da

cuando las restas den como resultado cero (idealmente), indicando que son la misma imagen.

Figura 14. Resultados de la Suma de Diferencias Absolutas sobre las imágenes sintéticas.

Los resultados aplicando SSD Cuadrado no difieren de manera notoria del resultado con SAD; esto se debe a que, como la imagen es binaria, la

resta entre unos y ceros tiene como resultado unos y ceros, y al elevar al cuadrado estas restas, se obtienen los mismo valores.

4.1.3. Espacio de color.

Uno de los principales inconvenientes a la hora de aplicar los algoritmos sobre las imágenes sintéticas a

color (espacio de color RGB), fue que se debían procesar las 3 componentes de la imagen con el fin de

encontrar el resultado correcto para el cálculo de la disparidad. Debido a esto, la cantidad de recursos que

se debían utilizar era el triple, ya que era necesario computar el algoritmo para cada componente de la

imagen, debido a que era imposible detectar cuál de las tres componentes brindaba la información

correcta.

0 100 200 300 400 500 6000

1000

2000

3000

4000

5000

X: 300

Y: 0

1A - 1A

0 100 200 300 400 500 6000

1000

2000

3000

4000

5000

X: 310

Y: 10.43

1A - 1B

0 100 200 300 400 500 6000

1000

2000

3000

4000

5000

X: 332

Y: 0

1A - 1C

0 100 200 300 400 500 6000

1000

2000

3000

4000

5000

X: 332

Y: 764.5

1A - 1D

Page 38: Emparejamiento en imágenes de acumulación espacio-temporal

26

Figura 15. Par de imágenes sintéticas a color usadas.

Imagen sintética 2 de 250x300. Imágenes a color en el espacio RGB; los bloques simulan los autos.

BLOQUE DESPLAZAMIENTO

(pxls)

Vinotinto 10

Amarrillo 10

Verde Oscuro 20

Azul Oscuro 5

Morado 15

Rojo 15

PROMEDIO 12.5

Tabla 3. Disparidad promedio de la escena sintética.

Muchas veces, la información que brinda una o dos componentes no aporta nada al cálculo de la

disparidad, por lo que los recursos invertidos en el cómputo de dichas componentes están siendo

malgastados. Asimismo, al procesar diferentes imágenes la información puede encontrarse en una

componente diferente, dependiendo de la imagen; en este caso, el computo correcto de la disparidad esta

directamente ligado a las características del video y a los automóviles presente en el. Esto se debe a que es

diferente computar la componente roja de un video en donde la mayoría de los autos son oscuros, a un

video en donde los autos son en su mayoría taxis.

Como se observa en las Figura 16 y Figura 17, al computar las tres componentes del par imágenes

sintéticas a color 2 se obtienen resultados repetidos (Tabla 4 y Tabla 5), indicando que en este caso el

computo de una sola componente bastaría. A pesar de esto, no es posible afirmar que computando siempre

la componente verde de la escena se obtendrá el mejor resultado, porque no es cierto; esto ocurrió en este

caso por simple casualidad.

Imagen 3A Imagen 3B

Page 39: Emparejamiento en imágenes de acumulación espacio-temporal

27

Figura 16. Resultados de la escena sintética por componentes usando CC y NCC.

Correlación Cruzada (izquierda) y Correlación Cruzada Normalizada (derecha).

COMPONENTE CC NCC

R 0 0

G 0 0

B 0 0

PROMEDIO 0 0

Tabla 4. Disparidad de la escena sintética usando CC y NCC por componentes.

Particularmente, al aplicar los algoritmos de sumas de productos (CC y NCC), la disparidad calculada es

incorrecta. Esto se debe, en gran parte, a que el fondo en la imagen más predominante en comparación con

los bloques de colores. Al operar los productos en los pixeles y al ser la disparidad promedio tan pequeña,

el algoritmo encontrar que las dos imágenes presenta la mayor correspondencia sin necesidad de

desplazamiento alguno, como si las imágenes fueran las mismas.

Figura 17. Resultados de la escena sintética por componentes usando técnicas SAD y SSD. SAD (izquierda) y SSD (derecha).

Los resultados obtenidos con las técnicas SAD y SSD son mucho más prometedores que los anteriores.

Esto se debe a gran parte que la acumulación es de restas y no productos. Como se observa, las gráficas

presentan varias irregularidades o inflexiones abruptas, por lo que puede esperezarse que al automatizar la

identificación del punto de interés (ya que por ahora este punto está siendo identificado manualmente),

existan dificultades y, en algunos casos, errores.

0 100 200 300 400 5000

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5x 10

4 CC Componente Roja

X: 250

Y: 4.884e+004

0 100 200 300 400 5000

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5x 10

4 CC Componente Verde

X: 250

Y: 4.822e+004

0 100 200 300 400 5000

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5x 10

4

X: 250

Y: 4.774e+004

CC Componente Azul

0 100 200 300 400 5000

1

2

3

4

5

6

7

8

9x 10

4 NCC Componente Roja

X: 250

Y: 8.212e+004

0 100 200 300 400 5000

1

2

3

4

5

6

7

8

9x 10

4 NCC Componente Verde

X: 250

Y: 8.102e+004

0 100 200 300 400 5000

1

2

3

4

5

6

7

8x 10

4

X: 250

Y: 7.944e+004

NCC Componente Azul

0 100 200 300 400 5000

200

400

600

800

1000

1200

1400

1600

1800

X: 270

Y: 1085

SAD Componente Roja

0 100 200 300 400 5000

500

1000

1500

2000

2500

X: 265

Y: 1406

SAD Componente Verde

0 100 200 300 400 5000

500

1000

1500

2000

2500

X: 260

Y: 1289

SAD Componente Azul

X: 320

Y: 1223

0 100 200 300 400 5000

200

400

600

800

1000

1200

X: 270

Y: 479.6

SSD Componente Roja

0 100 200 300 400 5000

200

400

600

800

1000

1200

1400

1600

X: 265

Y: 860.2

SSD Componente Verde

0 100 200 300 400 5000

200

400

600

800

1000

1200

1400

1600

1800

X: 320

Y: 816.4

SSD Componente Azul

X: 260

Y: 831.5

Page 40: Emparejamiento en imágenes de acumulación espacio-temporal

28

COMPONENTE SAD SSD

R 20 20

G 15 15

B* 10 10

PROMEDIO 15 15

Tabla 5. Disparidad de la escena sintética usando SAD y SSD por componentes.

Para reducir la complejidad del problema, se propuso cambiar de espacio de color; en vez de trabajar con

tres componentes, es posible reducir el espacio a una sola componente. Esto se logra al aplicar una

transformación lineal que pasa del espacio RGB a un espacio unidimensional de tonos de gris, donde las

tonalidades dependen directamente de los valores de R, G y B de cada pixel.

De esta manera se evita el identificar que componente presenta la información más relevante al integrar la

información que aporta cada una de las componentes en un solo valor. En la Figura 18 y la Tabla 6 puede

observarse que los resultados obtenidos siguen estando en el mismo rango y se ha reducido en un tercio

los recursos de cómputo.

Figura 18. Resultados obtenidos al aplicar las 4 técnicas sobre la escena sintética en Grises.

TECNICA DISPARIDAD

CC 0

NCC 0

SAD 10

SSD 10

Tabla 6. Disparidad de la escena sintética en Grises.

0 100 200 300 400 5000

1

2

3

4

5x 10

4

X: 250

Y: 4.835e+004

CC en Grises

0 100 200 300 400 5000

2

4

6

8

10x 10

4

X: 250

Y: 8.102e+004

NCC en Grises

0 100 200 300 400 5000

500

1000

1500

2000

X: 260

Y: 1299

SAD en Grises

0 100 200 300 400 5000

200

400

600

800

1000

1200SSD en Grises

X: 260

Y: 710.9

Page 41: Emparejamiento en imágenes de acumulación espacio-temporal

29

4.1.4. Limitación de la imagen y el concepto de carriles.

Como se ha mencionado, para el cálculo de la disparidad entre las dos imágenes se han considerado una

serie de restricciones con el fin de facilitar el análisis de la correspondencia. La restricción o hipótesis más

importante es la restricción epipolar, la cual permite reducir la búsqueda de correspondencia a una sola

dimensión, considerando que solo existe desplazamiento en un solo eje, por lo que solo es necesario

analizar en una dirección.

Aterrizando esta restricción al problema de la estimación de la velocidad en una vía, esto supone que los

automóviles mantiene una trayectoria recta al cruzar por ambas líneas de acumulación. Gracias a esto, es

posible reducir los recursos aún más al limitar el área de las imágenes de acumulación que debe ser

computada para el cálculo de la disparidad. Este método fue propuesto con el fin de mejorar la eficiencia

del algoritmo al reducirse el número de operaciones a computar, obteniéndose los mismos o mejores

resultados.

Cuando se habla de limitar el área de las imágenes, se hace referencia a aplicar un concepto de “carriles”

sobre ella. Esto supone que es posible delimitar las imágenes a un número de carriles, reduciendo la

dimensión de la imagen y aumentando la velocidad de cómputo. Como se sabe, una vía o calle está

compuesta por carriles, por donde los automóviles se desplazan en línea “recta”. Así pues es posible

recortar la imagen de la vía por los carriles (Figura 19), obteniéndose la misma información que permitirá

el cálculo de la disparidad.

Figura 19. Limitación de la escena sintética por carriles.

Al utilizar los segmentos o carriles de la imagen de la vía, el tiempo invertido en el cálculo de la

disparidad se reduce considerablemente. Esto se debe a que la cantidad de operaciones que deben

realizarse son reducidas, disminuyéndose el coste computacional. Así, en vez de obtener la disparidad

utilizando toda la imagen, es posible obtener las disparidades por carriles, para luego obtener la disparidad

media de la imagen computando el promedio entre las disparidades por carriles. Cabe resaltar que esto

conlleva a aplicar el algoritmo más veces, ya que es necesario aplicarlo para cada carril. En la Tabla 7 se

compara el tiempo invertido al aplicar las técnicas usando la imagen completa y la imagen segmentada en

A - Carril 1 B - Carril 1 A - Carril 2 B - Carril 2

Page 42: Emparejamiento en imágenes de acumulación espacio-temporal

30

carriles. Es necesario aclarar que el tiempo es solo un estimado de la cantidad de operaciones del

algoritmo, y depende de la implementación, por lo tanto esta medida solo debe tomarse como un indicio

de la complejidad computacional del algoritmo.

TIEMPO [sec]

Algoritmo Imagen Completa Carriles

CC 1.095122 0.0853

NCC 10.400933 0.2738

SAD 2.032095 0.1020

SSD 1.087287 0.0851

Tabla 7. Comparación del tiempo invertido entre el método Imagen Completa y Carriles

Aplicar las diferentes técnicas usando los carriles no presenta un cambio relevante al graficar los

resultados, aunque se reduce el rango de valores del eje y. Es posible que la identificación del punto de

interés sea más sencilla al computar menos valores; esta hipótesis será tratada más adelante, comparando

los resultados de usar la imagen completa y los resultados de usar los carriles, con las imágenes reales.

Figura 20. Resultados de aplicar las 4 técnicas a la escena sintética, en Grises y por Carriles.

Como se puede apreciar en la Tabla 8, los resultados obtenidos al aplicar las técnicas en cada carril, y

luego hallando el promedio entre ambos carriles, son más precisos, a excepción del algoritmo de CC (que

para este caso en particular, no funciono). Esto se debe en gran parte a que se redujo la cantidad de fondo

0 200 400 6000

100

200

300

400

500X: 250

Y: 408.4

CC Carril1

0 200 400 6000

50

100

150

200

250

300

350

400

X: 250

Y: 394.6

CC Carril2

0 200 400 6000

100

200

300

400

500

600

700NCC Carril1

X: 260

Y: 672

0 200 400 6000

100

200

300

400

500

600

700NCC Carril2

X: 265

Y: 657

0 200 400 6000

5

10

15

20

25

30

X: 260

Y: 11.01

SAD Carril1

0 200 400 6000

10

20

30

40

50SAD Carril2

X: 265

Y: 16.66

0 200 400 6000

2

4

6

8

10

12

14

16

X: 260

Y: 5.052

SSD Carril1

0 200 400 6000

5

10

15

20

25

X: 265

Y: 11.56

SSD Carril2

Page 43: Emparejamiento en imágenes de acumulación espacio-temporal

31

presente en las imágenes a computar; esto conlleva una mejor correspondencia entre las imágenes de

acumulación, obteniéndose así los resultados esperados. En la Tabla 9 se compara el rendimiento de cada

una de las técnicas, en los diferentes escenarios tratados en esta sección. Por ahora es posible afirmar que

las técnicas que presentan un mejor desempeño son SAD y SSD. En posteriores secciones se corroborara

esta afirmación, con el fin de obtener el algoritmo deseado.

ALGORITMO CARRIL 1 CARRIL 2 PROMEDIO

CC 0 0 0

NCC 10 15 12.5

SAD 10 15 12.5

SSD 10 15 12.5

Tabla 8. Disparidad calculada por el método Carriles.

DISPARIDAD CALCULADA EFICIENCIA

Algoritmo Promedio

RGB

Imagen Completa

(Grises)

Promedio

Carriles (Grises)

Disparidad Real

(Manual) A B C

CC 0 0 0 12.5 0% 0% 0%

NCC 0 0 12.5 12.5 0% 0% 100%

SAD 15 10 12.5 12.5 98% 98% 100%

SSD 15 10 12.5 12.5 98% 98% 100%

Tabla 9. Resultados al aplicar las técnicas de emparejamiento sobre la escena sintética.

Resultados en espacio RGB (A), en grises e imagen completa (B) en grises y por carriles (C).

4.1.5. Líneas de acumulación.

A la hora de obtener las imágenes de acumulación espacio temporal de los videos tomados sobre las vías,

es muy importante el lugar que se escoge para colocar la línea de acumulación, sobre la cual se acumulara

la información a través del video para la generación de las imágenes. La elección de la posición de esta

línea depende más que todo del fondo, ya que el tramo de fondo que sea capturado por la línea, y por

consiguiente sus características, estará presente en toda la imagen de acumulación espacio temporal.

Se supone que el fondo (la calle) a lo largo del video no presenta cambios, exceptuando los cambios que

pueda tener en cuando a la iluminación, ya sea por factores de la intensidad de la luz (dependiendo de la

hora), sombras no consideradas y totalmente aleatorias (nubes u otra clase de objeto) o por las mismas

sobras de los vehículos. Claramente, la calle puede presentar irregularidades físicas como huecos, fisuras,

líneas de separación o basuras, características típicas de una calle en la ciudad de Bogotá. Son estas

alteraciones de la vía la que pueden ocasionar problemas a la hora del cálculo de la disparidad entre las

imágenes.

Entre las posibles “situaciones” que puedan llegar a presentar problema, se encuentran:

Huecos, fisuras o marcas en la vía. Se observa cómo puede afectar los resultados del algoritmo, ya

que no es posible comparar dos imágenes si el fondo es demasiado diferente; esto suponiendo que

la línea de acumulación A esta sobre una “imperfección” de la vía, mientras la línea de

acumulación B no. El fondo en ambos casos será muy diferente, haciendo mucho más difícil la

estimación de una disparidad.

Page 44: Emparejamiento en imágenes de acumulación espacio-temporal

32

Vehículos que cambian de carril. Esta situación puede llegar a ocasionar errores con los

algoritmos, ya que es posible que un vehículo este en el carril 1 de la imagen A, y aparezca en el

carril 2 de la imagen B; a la hora de computar la correspondencia entre ambas imágenes, se

generarán problemas ya que el vehículo en cuestión en la imagen A no corresponde con el espacio

en donde debería estar en la imagen B. Es posible también que el vehículo este cambiando de

carril sobre la línea de acumulación, generándose un bloque en forma de paralelogramo que

ocasionará problemas. Está situación está directamente relacionada con la restricción epipolar

Vehículos que quedan estacionados debido a congestión o un semáforo en rojo sobre la línea de

acumulación. Esta situación genera que los vehículos presenten un esparcimiento a lo largo de la

imagen, generándose bloques que pueden presentarse sobre toda la imagen. Esto ocasiona grandes

dificultades a la hora de realizar la correspondencia, ya que en algunos casos desparecen los

vehículos de una de las imágenes, generándose escenas diferentes.

Figura 21. Situaciones no deseadas según la ubicación de las líneas de acumulación. En la imagen de la izquierda, la línea fue situada sobre una marca amarilla propia de la calle; en la imagen derecha, un vehículo

se detuvo sobre la línea de acumulación, generando un efecto de borrón.

Todas estas situaciones que pueden llegar a presentarse debido a lugar donde se decide colocar la línea de

acumulación traen consigo inconvenientes para el cálculo de la disparidad, y por consiguiente, de la

velocidad. Estos inconvenientes serán registrados en secciones más adelante, junto con los resultados que

traen consigo; esto con el fin de analizar en los casos en los que el algoritmo definitivo que será diseñado

no funciona correctamente.

Page 45: Emparejamiento en imágenes de acumulación espacio-temporal

33

Figura 22. Situación no deseada: frenado de vehículos sobre las líneas.

Resultados que se obtienen cuando los vehículos frenan sobre la línea o se desplazan muy lento debido a congestiones o semáforos. Se observa la ausencia del vehículo blanco de la imagen de la izquierda en la imagen derecha (caso de oclusión).

Cabe aclarar que para fines del proyecto de investigación la captura de las imágenes de acumulación no

será abarcada de manera profunda, ya que no es parte del mismo el tratar el tema de la obtención de dichas

imágenes. Se basará en el supuesto que las imágenes fueron generadas de la manera en que se explicó

anteriormente, teniendo en cuenta la separación entre las líneas de acumulación con el fin de obtener la

velocidad media utilizando la correspondencia entre las imágenes de acumulación

4.2. EFICIENCIA DE LOS ALGORITMOS PRELIMINARES PARA EL CÁLCULO DE LA

DISPARIDAD.

Para entrar ya en materia, es necesario obtener el algoritmo que mejor rendimiento tenga a la hora de

calcular la disparidad con las imágenes de acumulación espacio temporal de las vías. Para esto, se

pretende comparar las cuatro técnicas en cuanto a velocidad (tiempo invertido en obtener la disparidad) y

precisión del resultado. De esta manera, al tener los resultados y los tiempos, es posible escoger el

algoritmo que presente la mejor eficiencia encontrando la correspondencia, para posteriormente hallar la

velocidad media.

En primer lugar, es necesario obtener una medida manual de la disparidad entre las imágenes, con el fin de

comparar los resultados de los algoritmos en base a esta medición. Esto se logra obteniendo las

coordenadas verticales de cada uno de los vehículos en las dos imágenes, para luego encontrar la

diferencia entre la coordenada vertical del mismo vehículo, y obtener el promedio de “diferencia” de todos

los vehículos en la imagen.

Se escogieron tres pares de imágenes de acumulación que presentaban las mejores condiciones; esto es,

los pares que no presentaban alguno de las situaciones expuestas en la sección anterior, y donde no se

presenciaba el fenómeno de oclusión. Esto con el fin de seleccionar estas imágenes de diseño con los que

se obtuvieran resultados pertinentes, con los cuales sea posible una comparación válida.

Page 46: Emparejamiento en imágenes de acumulación espacio-temporal

34

Figura 23. Par de imágenes de diseño 1.

A la izquierda, imagen A1; a la derecha, B1. (600x639 pixeles).

Los vehículos fueron numerados como referencia. A continuación, se presenta la tabla con los resultados

del cálculo de la disparidad obtenido manualmente.

DISPARIDAD MANUAL (PAR IMAGENES 1)

1 2 3 4 5 6 7 8 9 10 11 12 13

32.67 31.5 18.75 17.25 20.25 18.00 22.50 14.25 12.75 15.00 17.25 18.75 21.00

Tabla 10. Disparidades obtenidas manualmente las imágenes de diseño 1.

Con el fin de comparar los resultados entre aplicar los algoritmos a las imágenes completas o por carriles,

se calcularon las disparidades promedio por cada carril (Tabla 11). Los carriles fueron obtenidos

segmentando las imágenes en tres bloques, de 600x5, que contuvieran la mayoría de los vehículos. Los

vehículos (5) y (7) no aparecen en ningún carril, debido a que el carril 2 debería ser suficientemente ancho

para contenerlos. El ancho del carril solamente afecta el tiempo en que se demora los algoritmos en

realizar las operaciones, por lo que la idea es elegir carriles bastante delgados.

Carril 1 Carril 2 Carril 3

(01) 32.67 (03) 18.75 (08) 14.25

(02) 31.50 (04) 17.25 (09) 12.75

(06) 18.00 (10) 15.00

(11) 17.25

(12) 18.75

(13) 21.00

32 18 16.5

Promedio Carriles = 22.1667

Tabla 11. Disparidades promedio por carriles las imágenes de diseño 1.

A continuación se presentan las graficas (Figura 24, Figura 25, Figura 26 y Figura 27) de los resultados

obtenidos al aplicar cada uno de los algoritmos a las imágenes de diseño 1.

Page 47: Emparejamiento en imágenes de acumulación espacio-temporal

35

Figura 24. Correspondencia carril 1 (Imágenes de diseño 1).

Figura 25. Correspondencia carril 2 (Imágenes de diseño 1).

0 200 400 600 800 1000 12000

100

200

300

400

500

600

700

800CC - Carril 1

X: 600

Y: 776.2

0 200 400 600 800 1000 1200-600

-400

-200

0

200

400

600

800NCC - Carril 1

X: 626

Y: 672

0 200 400 600 800 1000 12000

100

200

300

400

500

600

X: 631

Y: 442.4

SAD - Carril 1

0 200 400 600 800 1000 12000

20

40

60

80

100

120

X: 631

Y: 74.64

SSD - Carril 1

0 200 400 600 800 1000 12000

200

400

600

800

1000

X: 614

Y: 958.5

CC - Carril 2

0 200 400 600 800 1000 12000

500

1000

1500

2000NCC - Carril 2

X: 614

Y: 1806

0 200 400 600 800 1000 12000

100

200

300

400

500

X: 615

Y: 237.5

SAD - Carril 2

0 200 400 600 800 1000 12000

50

100

150

X: 614

Y: 35.49

SSD - Carril 2

Page 48: Emparejamiento en imágenes de acumulación espacio-temporal

36

Figura 26. Correspondencia carril 3 (Imágenes de diseño 1)

Una vez más, los puntos de interés son identificados manualmente; más adelante se enuncian los dos

algoritmos que identificaran dichos puntos de manera automática. Para las correlaciones cruzadas, es el

máximo pico el punto que brinda la información; en las sumas de diferencias, es el mínimo que aparece en

un cambio abrupto hacia el medio de la gráfica. Como se mencionó anteriormente, con este punto es

posible obtener la disparidad; esto se logra sustrayendo la coordenada x de dicho punto del número de

filas (m) de la imagen.

Figura 27. Correspondencia completa (Imágenes de diseño 1).

0 200 400 600 800 1000 12000

200

400

600

800

1000

1200CC - Carril 3

X: 600

Y: 1044

0 200 400 600 800 1000 1200-200

-100

0

100

200

300

X: 613

Y: 279

NCC - Carril 3

0 200 400 600 800 1000 12000

50

100

150

200

250

300

X: 617

Y: 191.9

SAD - Carril 3

0 200 400 600 800 1000 12000

10

20

30

40

50

60

70

X: 613

Y: 36.44

SSD - Carril 3

0 200 400 600 800 1000 12000

2

4

6

8

10

12

14x 10

4 CC

X: 600

Y: 1.252e+005

0 200 400 600 800 1000 12000

0.5

1

1.5

2x 10

5 NCC

X: 617

Y: 1.672e+005

0 200 400 600 800 1000 12000

1

2

3

4

5x 10

4

X: 617

Y: 3.767e+004

SAD

0 200 400 600 800 1000 12000

2000

4000

6000

8000

10000

12000

X: 615

Y: 6912

SSD

Page 49: Emparejamiento en imágenes de acumulación espacio-temporal

37

Se observa que las gráficas, aunque sean distintas, mantienen una curva característica para cada una de las

técnicas. También es posible notar que la escena modifica las curvas de acuerdo con el fondo y segmentos

de vehículos que son parte de la escena. Las modificaciones son representadas en forma de pequeños

picos, a manera de una especia de rizado. Esto puede llevar a dificultades a la hora de identificar

automáticamente el punto de interés, en el caso en que estas irregularidades sean bastante abruptas y sean

comparables con el punto en cuestión.

Cabe resaltar que las curvas obtenidas utilizando las imágenes en su totalidad (Figura 27) son mucho más

suaves en comparación con las curvas de los carriles. Esto facilitará la identificación del punto de interés

y, por ende, el cálculo de la disparidad más adelante, sacrificándose el coste invertido para el cómputo de

más operaciones. Es necesario confrontar número de operaciones realizadas contra precisión, con el fin de

encontrar cual de las técnicas y método presenta resultados acertados y con bajo coste computacional.

A continuación se presentan las dos imágenes de diseño restantes que fueron usadas con el fin de

comparar las técnicas. Una vez más, las escenas presentan condiciones favorables para la aplicación de los

algoritmos, evitándose las situaciones mencionadas anteriormente.

Figura 28.Par de imágenes de diseño 2.

A la izquierda, imagen A2; a la derecha, B2. (600x639 pixeles).

DISPARIDAD MANUAL (PAR IMAGENES 2)

01 02 03 04 05 06 07 08 09 10

12.00 15.00 18.75 15.00 21.75 12.00 12.75 12.00 10.50 12.75

11 12 13 14 15 16 17 18 19

15.75 11.25 11.25 10.91 10.50 11.25 09.75 09.75 12.75

Tabla 12. Disparidades obtenidas manualmente las imágenes de diseño 2.

Page 50: Emparejamiento en imágenes de acumulación espacio-temporal

38

Carril 1 Carril 2 Carril 3

(01) 12.00 (06) 12.00 (12) 11.25

(02) 15.00 (08) 12.00 (13) 11.25

(03) 18.75 (09) 10.50 (14) 10.91

(04) 15.00 (10) 12.75 (15) 10.50

(05) 21.75 (11) 15.75 (16) 11.25

(17) 09.75

(18) 09.75

(19) 12.75

16.5 12 10.92

Promedio Carriles = 13.14

Tabla 13. Disparidades promedio por carriles las imágenes de diseño 2.

Figura 29. Par de imágenes de diseño 3.

A la izquierda, imagen A3; a la derecha, B3. (600x639 pixeles).

DISPARIDAD MANUAL (PAR IMAGENES 3)

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15

17.25 15.00 20.25 12.75 14.25 15.00 10.50 12.00 10.50 14.25 18.00 18.00 18.75 17.25 15.75

Tabla 14. Disparidades obtenidas manualmente las imágenes de diseño 3.

Carril 1 Carril 2 Carril 3

(01) 17.25 (04) 12.75 (10) 14.25

(02) 15.00 (05) 14.25 (11) 18.00

(03) 20.25 (06) 15.00 (12) 18.00

(07) 10.50 (13) 18.75

(08) 12.00 (14) 17.25

(09) 10.50 (15) 15.75

17.5 12.5 17

Promedio Carriles = 15.66

Tabla 15. Disparidades promedio por carriles las imágenes de diseño 3.

Page 51: Emparejamiento en imágenes de acumulación espacio-temporal

39

En la Tabla 16, Tabla 17, Tabla 18, Tabla 19, Tabla 20 y Tabla 21, se encuentran los resultados obtenidos

al aplicar los algoritmos en las tres pares de imágenes de diseño (Figura 23, Figura 28 y Figura 29). Se

realizó la comparación entre las técnicas para determinar el desempeño que cada una presento en dos

aspectos importantes: precisión y velocidad.

La precisión hace referencia a que tan exacto fue el cálculo de la disparidad en comparación con la

disparidad hallada a mano. Cabe resaltar que la correspondencia manual no es exacta, ya que está

condicionada por el ojo de la persona que la obtuvo, pero está bastante cercana a la real. La velocidad

indica cuanto tiempo fue invertido en realizar el cómputo sobre las imágenes para el cálculo de la

disparidad; esto es traducido en los recursos computacionales invertidos en el análisis; es necesario

mencionar que esta medida se da como una idea de la complejidad computacional del algoritmo y se debe

tener en cuenta que depende de las prestaciones del PC en el que fue probado el algoritmo y de la

implementación en software.

Todo lo anterior con el fin de escoger la técnica que posiblemente es más eficaz, siendo la que presenta el

mejor resultado y en el menor tiempo posible, ya que el principal objetivo es encontrar un algoritmo de

bajos recursos capaz de estimar la velocidad media de manera acertada.

TIEMPOS PAR DE IMAGENES 1

Técnica

Aplicada

Método Carriles Imagen

Completa Carril1 [s] Carril2 [s] Carril3 [s] Total [s]

CC 0.349754 0.344181 0.337757 1.0317 14.635

NCC 1.300858 1.292061 1.283832 3.8768 134.473

SAD 0.440490 0.475856 0.445925 1.3623 25.986

SSD 0.351798 0.347172 0.347375 1.0463 14.910

Tabla 16. Tiempos invertidos (par de entrenamiento 1).

DISPARIDAD PAR DE IMAGENES 1

Técnica

Aplicada

Método Carriles Imagen

Completa Carril1 Carril2 Carril3 Promedio

Manual 32 18 16.5 22.1667 19.99

CC 0 14 0 4.6667 0

NCC 26 14 13 17.6667 17

SAD 31 15 17 21 17

SSD 31 14 13 19.333 15

Tabla 17. Disparidades calculadas (par de entrenamiento 1).

TIEMPOS PAR DE IMAGENES 2

Técnica

Aplicada

Método Carriles Imagen

Completa Carril1 [s] Carril2 [s] Carril3 [s] Total [s]

CC 0.367801 0.333599 0.333582 1.0350 14.357

NCC 1.297788 1.269461 1.264841 3.8321 135.027

SAD 0.433803 0.462826 0.463777 1.3604 27.023

SSD 0.365285 0.336047 0.357018 1.0584 15.075

Tabla 18. Tiempos invertidos (par de entrenamiento 2).

Page 52: Emparejamiento en imágenes de acumulación espacio-temporal

40

DISPARIDAD PAR DE IMAGENES 2

Técnica

Aplicada

Método Carriles Imagen

Completa Carril1 Carril2 Carril3 Promedio

Manual 16.5 12 10.92 13.14 12.92

CC 14 10 0 8 0

NCC 14 11 12 12.33 11

SAD 14 10 12 12 11

SSD 14 10 12 12 11

Tabla 19. Disparidades calculadas (par de entrenamiento 2).

TIEMPOS PAR DE IMAGENES 3

Técnica

Aplicada

Método Carriles Imagen

Completa Carril1 [s] Carril2 [s] Carril3 [s] Total [s]

CC 0.335383 0.374919 0.375167 1.0855 15.032

NCC 1.336515 1.682746 1.773366 4.7926 140.076

SAD 0.433952 0.518306 0.515324 1.4676 28.633

SSD 0.349009 0.373047 0.380892 1.1029 15.509

Tabla 20. Tiempos invertidos (par de entrenamiento 3).

DISPARIDAD PAR DE IMAGENES 3

Técnica

Aplicada

Método Carriles Imagen

Completa Carril1 Carril2 Carril3 Promedio

Manual 17.5 12.5 17 15.66 15.66

CC 13 11 13 12.33 0

NCC 13 12 14 13 16

SAD 13 11 14 12.66 16

SSD 13 11 14 12.66 13

Tabla 21. Disparidades calculadas (par de entrenamiento 3).

Se puede observar que el algoritmo de Correlación Cruzada es el menos efectivo a la hora de calcular la

disparidad de manera acertada. En muchos casos, se observa que la disparidad hallada por esta técnica es

0. Esto se debe en gran parte a la escena a analizar; al parecer, es una técnica que se ve afectada por el

fondo, ya que la disparidad hallada utilizando toda la imagen es incorrecta. Aplicando esta técnica por

carriles, los resultados obtenidos son mejores, aunque en algunos casos se obtienen disparidad 0 también.

A pesar de esto, es la técnica que presenta los tiempos más cortos de cómputo, posicionándose como el

algoritmo más rápido y menos acertado.

Page 53: Emparejamiento en imágenes de acumulación espacio-temporal

41

Figura 30. Tiempos invertidos por las técnicas de emparejamiento (método de carriles).

La técnica de Correlación Cruzada Normalizada, la cual supone una normalización de los pixeles con el

fin de reducir los efectos de la iluminación y del fondo, presenta resultados bastante acertados a costo del

tiempo que es necesario invertir para computar la correspondencia. Se puede notar que es una técnica

bastante lenta, especialmente si es aplicada sobre toda la imagen (se gasta aproximadamente 2 minutos

computando las operaciones sobre las imágenes). Es una técnica que debe ser diseñada para aplicarse

sobre los carriles, ya que se puede reducir considerablemente el tiempo invertido, y los resultados

obtenidos por carriles son proporcionales a los obtenidos usando la imagen completa.

Figura 31. Tiempos invertidos por las técnicas de emparejamiento (método imagen completa=.

Las dos técnicas de Sumas de Diferencias presentan el mejor desempeño, siendo bastante rápidas y

acertadas. Se observan excelentes resultados aplicando estas técnicas a las imágenes completas, y el

tiempo que se invierte es bajo. Además, las graficas resultado usando las imágenes completas son bastante

suaves, siendo más fácil el cálculo de la disparidad. La única desventaja hasta ahora de dichas técnicas es

el algoritmo de identificación de dicho punto; es necesario realizar operaciones y manipular los resultados

para obtener el punto de inflexión abrupto hacia la mitad de la grafica, procedimiento que no es tan

sencillo, mientras que la identificación del punto en las técnicas de correlación cruzada se reduce a obtener

el valor máximo de la grafica, procedimiento bastante simple.

Page 54: Emparejamiento en imágenes de acumulación espacio-temporal

42

Figura 32. Disparidades calculadas por las técnicas de emparejamiento.

Técnicas Eficiencia [1] Eficiencia [2] Eficiencia [3]

Eficiencia

Promedio

Carriles Completa Carriles Completa Carriles Completa Carriles Completa

CC 21% 0% 61% 0% 79% 0% 54% 0%

NCC 80% 85% 94% 85% 83% 98% 86% 89%

SAD 95% 85% 91% 85% 81% 98% 89% 89%

SSD 87% 75% 91% 85% 81% 83% 86% 81%

Tabla 22. Eficiencias de las técnicas de emparejamiento.

Es posible observar (Tabla 22) que la eficiencia obtenida aplicando la técnica de Suma de Diferencias

Absolutas es la más alta entre las cuatro; es cerca del 90%. Debe tenerse en cuenta que la disparidad

calculada manualmente no es del todo precisa, estando sujeta a los errores del operario que la halló

(errores humanos). Gracias a esto se puede afirmar que la técnica candidata con mejor desempeño es

SAD, siendo este algoritmo bastante rápido en comparación con laos otros, así como bastante acertada.

Estos resultados brindan una idea general de la eficiencia que presenta cada uno de los algoritmos para el

cálculo de la disparidad en el par de imágenes de acumulación; más adelante, se expondrán los resultados

que se obtuvieron al aplicar estos algoritmos para la estimación de la velocidad en los videos, con el fin de

diseñar el algoritmo más eficiente que en últimas resuelve el cuestionamiento inicial planteado.

A continuación se enunciarán los dos algoritmos de identificación aplicados para obtener los puntos de

interés previamente mencionados, con los que el cálculo de la disparidad finaliza. Asimismo, se resumirán

los resultados obtenidos al aplicar el mismo procedimiento a las 6 imágenes de entrenamiento restantes,

para un total de 9 imágenes de entrenamiento. Se pretende con esto seleccionar el algoritmo más

adecuado, o corroborar la afirmación anterior, para estimar la velocidad media en una vía, teniendo en

cuenta la velocidad de procesamiento y la eficiencia de los resultados.

(ANEXO N° 1)

Page 55: Emparejamiento en imágenes de acumulación espacio-temporal

43

4.3. ALGORITMOS DE IDENTIFICACIÓN.

Para finalizar con el algoritmo para la estimación la velocidad media de una vía utilizando imágenes de

acumulación espacio temporal, es necesario obtener los puntos de interés que previamente se han

mencionado repetidamente. Estos puntos a identificar son aquellos que en últimas poseen la información

sobre la disparidad entre las imágenes obtenida al aplicar las técnicas mencionadas. A continuación se

describen los dos algoritmos de identificación aplicados, uno para las técnicas de correlación (CC y NCC)

y otro para las técnicas de sumas de diferencias (SAD y SSD).

El algoritmo de identificación aplicado para las técnicas de correlación consiste en obtener el punto más

alto de la curva obtenida. Esto se debe a que, al ser técnicas que acumulan el producto de los pixeles, se

espera que la correspondencia más alta se encuentre cuando la sumatoria de productos sea máxima.

Gracias a esto, solo es necesario recorrer los puntos obtenidos con dichas técnicas, comparándolos entre sí

hasta encontrar el máximo de ellos. Una vez obtenido el máximo, solo resta obtener la coordenada en x de

dicho punto, valor que indica la disparidad encontrada.

Figura 33. Curvas características de las técnicas de correlación. El punto de interés (marcado en la figura) es el máximo de la grafica.

Por otro lado, para obtener la disparidad al aplicar las técnicas de sumas de diferencias, es necesario

realizar un proceso más complejo debido a las curvas que se obtienen con dichas técnicas. En estos casos,

la curva tiene una forma similar a una ‘M’, y el punto que debe identificarse es aquel en donde ocurre la

máxima inflexión con concavidad positiva, es decir, el punto mínimo donde se presencia el cambio de

pendiente más abrupto (cambio de pendiente negativa a pendiente positiva).

Esto se debe a que al ser técnicas basadas en sumas de diferencias, se espera que la máxima

correspondencia entre las imágenes se dé cuando la sumatoria total sea mínima, teniendo en cuenta que al

inicio del algoritmo, los resultados de las sumas son pequeños debido a que la imagen desplazada hasta

ahora están “entrando” sobre la imagen estática. Es por eso que el punto de interés se encuentre entre dos

picos de la gráfica, y se da hacia la mitad del eje horizontal.

0 200 400 600 800 1000 12000

200

400

600

800

1000

1200

1400CC - Carril 2

X: 611

Y: 1336

0 200 400 600 800 1000 1200-500

0

500

1000

1500

2000

X: 612

Y: 1694

NCC - Carril 2

0 200 400 600 800 1000 12000

100

200

300

400

500

X: 611

Y: 344.1

SAD - Carril 2

0 200 400 600 800 1000 12000

20

40

60

80

100

120

140

X: 611

Y: 53.83

SSD - Carril 2

Page 56: Emparejamiento en imágenes de acumulación espacio-temporal

44

Figura 34. Curvas características de las técnicas de sumas de diferencias.

El punto de interés (marcado en la figura) el punto de inflexión más predominante.

Para lograr obtener este punto, fue necesario derivar las graficas obtenidas al aplicar las técnicas de sumas

de diferencias con el fin de analizar las pendientes. Esto se logró calculando la diferencia entres dos

puntos adyacentes, de las siguiente manera

Una vez obtenida la derivada de la gráfica se procede a encontrar el punto mínimo de la grafica, punto que

coincide con el máximo cambio de pendientes, pasando de pendiente positiva a pendiente negativa. Si se

supone un punto , siendo este punto el primer pico de la grafica (último punto de pendiente positiva), y

un punto adyacente al primero, donde hay un cambio de pendiente, la derivada

tendrá un valor negativo (ya que ); al calcular las derivadas siguientes ( ), se

obtendrán valores negativos, puesto que , hasta un punto tal que

lo cual indica otro cambio de pendiente (negativa a positiva), gracias a que . De esta manera,

calculando la derivada es posible encontrar el punto en el cual la pendiente pasa de ser negativa a ser

positiva. Hallando el mínimo de la derivada ( ), se reduce la búsqueda del punto de interés a los

valores adyacentes punto mínimo, ya que en la gran mayoría de los casos .

0 200 400 600 800 1000 12000

200

400

600

800

1000

1200

1400CC - Carril 2

X: 611

Y: 1336

0 200 400 600 800 1000 1200-500

0

500

1000

1500

2000

X: 612

Y: 1694

NCC - Carril 2

0 200 400 600 800 1000 12000

100

200

300

400

500

X: 611

Y: 344.1

SAD - Carril 2

0 200 400 600 800 1000 12000

20

40

60

80

100

120

140

X: 611

Y: 53.83

SSD - Carril 2

Page 57: Emparejamiento en imágenes de acumulación espacio-temporal

45

Figura 35. Derivadas correspondientes a las curvas SAD y SSD.

(Figura 34) El punto mínimo ha sido demarcado.

En la Figura 36 se aprecia mejor lo anteriormente descrito. En esta figura se observa la derivada de la

grafica A de la Figura 34 (SAD – Carril 2). El mínimo hallado fue el punto ( ); a parir de

dicho punto (hacia la derecha), se encontró el punto en el cual ocurrió el cambio de pendiente negativa a

pendiente positiva. Para identificar el cambio, solo bastó con encontrar el punto en el cual el valor de la

coordenada Y pasaba de negativo a positivo. Como se observa, el punto adyacente a ( )

es ( ), con lo cual se concluye que el punto de interés es ( ), ya que el

valor de la coordenada Y pasó de a , indicando el cambio de pendiente buscado.

Figura 36. Derivada de la curva característica de la técnica SAD. La grafica fue ampliada (Figura 35) sobre la región de interés.

0 200 400 600 800 1000 1200-30

-20

-10

0

10

20

X: 610

Y: -25.88

Derivada SAD - Carril 2

0 200 400 600 800 1000 1200-15

-10

-5

0

5

10

15

X: 610

Y: -14.64

Derivada SSD - Carril 2

560 580 600 620 640 660 680

-25

-20

-15

-10

-5

0

5

10

15

X: 610

Y: -25.88

X: 611

Y: -10.44

X: 612

Y: 1.827

Derivada SAD - Carril 2

Page 58: Emparejamiento en imágenes de acumulación espacio-temporal

46

En caso de no encontrar un cambio de pendiente sobre el mínimo hallado, el algoritmo tomará el siguiente

punto mínimo, y a partir de allí realizara la búsqueda del cambio de pendiente nuevamente. Si una vez

más no es posible hallar un cambio de pendiente, el algoritmo retorna cero (0), indicando esto que la

disparidad es nula.

Este segundo algoritmo de identificación se basa en la hipótesis (obtenida de manera empírica) que la al

derivar las graficas obtenidas con las técnicas de sumas de diferencias, el punto mínimo de la derivada

corresponderá, en el mejor de los casos, al punto de interés; si no es así, al menos indica un punto de

referencia a partir del cual es posible encontrar el punto de interés. Este algoritmo fue el implementado

para tal fin, luego de haber realizado una serie de pruebas con las que se concluyó que el funcionamiento

del algoritmo era el esperado en la gran mayoría de los casos, exceptuando ciertos casos especiales (par de

imágenes de acumulación que presentan problemas mencionados en la sección donde que trató las líneas

de acumulación).

4.4. EFICIENCIA DE LOS ALGORITMOS PARA LA ESTIMACIÓN DE LA VELOCIDAD

MEDIA.

Ya diseñados los algoritmos basados en las técnicas de visión estéreo para el cálculo de la disparidad en

un par de imágenes de acumulación espacio-temporal, es tiempo de exponer los resultados obtenidos al

aplicarlos sobre tres videos de entrenamiento. Esto con la finalidad de identificar y escoger la técnica que

presenta la mayor eficiencia sobre las demás, y con esto diseñar el algoritmo definitivo que estimará la

velocidad media en una vía utilizando imágenes de acumulación espacio-temporales.

Anteriormente se expusieron y compararon los resultados de los 4 algoritmos aplicados a tres pares de

imágenes de acumulación; dichos resultados fueron usados como referencia para generar una idea

superficial de la eficiencia de cada uno de ellos. A causa de aquellos resultados obtenidos, se decidió

descartar la Correlación Cruzada (CC), debido al pobre desempeño conseguido con dicha técnica. En los

resultados que se expondrán a continuación ya se han integrado los dos algoritmos de identificación

previamente mencionados.

4.4.1. Videos de diseño.

Los videos de diseño utilizados provinieron de la base de datos del grupo de investigación SIRP, y fueron

usados a lo largo del diseño de los algoritmos. Para todos los videos se usó como códec XVID y como

contenedor avi; fueron grabados con la cámara PlayStationEYE, usando las configuraciones mostradas en

la Tabla 23 del módulo controlador de la cámara, en el núcleo de GNU/Linux.

Los parámetros generales de los videos de entrenamiento pueden observarse en la Tabla 24 Se usaron dos

videos tomados a 30 cuadros por segundo, y uno tomado a 125 cuadros por segundo.

Page 59: Emparejamiento en imágenes de acumulación espacio-temporal

47

Parámetros del modulo

gspca-ov534

30 cuadros

por seg

125 cuadros

por seg

Videomode “01” “16”

Autogain 0 0

Gain 0 0

AWB 0 0

Exposure 0 0

Brightness 128 128

Contrast 35 35

RedLC 35 35

BlueLC 128 128

Hue 128 128

Sharpness 0 0

Vflip 0 0

Hflip 0 0

freqfltr 1 1

Tabla 23. Configuración de la cámara PlayStationEYE.

VIDEO Lugar Duración Tamaño FPS Carriles

Video1 Séptima 180 s 480x640 30 3

Video2 Puente Nacional 180 s 480x640 30 2

Video3 Puente Nacional 180 s 240x320 125 2

Tabla 24. Características de los videos de entrenamiento.

De cada uno de los videos de diseño fueron generadas N pares de imágenes de acumulación, siendo este

número determinado por la cantidad de cuadros que se deseaban computar por cada par de imagen; esto se

debe a que las imágenes de acumulación son obtenidas al acumular la información cuadro por cuadro del

video. Se eligió como estándar acumular de a 600 cuadros por imagen. La separación entre las líneas de

acumulación fue determinada manualmente a conveniencia, teniendo en cuenta el fondo de la vía, con el

objetivo de evitar los problemas mencionados algunas secciones anteriores. A continuación se resumen

las características de las imágenes de acumulación generadas a partir de cada uno de los videos.

VIDEO

Cuadros

Pares de

imágenes de

acumulación

Tamaño

Separación

líneas de

acumulación

Video1 5400 9 600x639 438 pix

Video2 5400 9 600x639 156 pix

Video3 22500 38 600x313 80 pix

Tabla 25. Características de las imágenes de acumulación.

4.4.2. Disparidad.

Para calcular la disparidad de cada uno de los videos, se procedió a aplicar los algoritmos previamente

diseñados sobre el conjunto de pares de imágenes de acumulación generadas. Como el objetivo es el de

elegir el método y algoritmo que mejor eficiencia presenta, se calculó la disparidad usando el método de

los carriles y usando las imágenes completas. Para el primero, se dividió cada par de imagen en ‘n’ partes

Page 60: Emparejamiento en imágenes de acumulación espacio-temporal

48

iguales, siendo ‘n’ el número de carriles presentes en el video. Luego, la disparidad fue calculada

individualmente sobre los carriles, para posteriormente obtener una disparidad total igual al promedio de

las disparidades por carriles. Para el segundo método, simplemente se tomó cada par de imágenes y se les

aplicó los algoritmos. Los resultados del cálculo de la disparidad del video 2 se resume a continuación; los

resultados de los videos 1 y 3 se pueden revisar en las sección de anexos (ver ANEXO N° 2).

VIDEO 2

Imagen Promedio Carriles (general) Imagen Completa

Manual NCC SAD SSD NCC SAD SSD

1 4 4 4 3 5 5 4,12

2 1,5 3 3 3 3 3 2,78

3 4,5 4,5 4,5 7 3 7 3,75

4 3 3 3 3 3 3 2,79

5 4,5 4,5 4,5 4 6 6 5

6 4 4 4 5 5 3 4,5

7 3 3 3 3 3 3 3,13

8 4 4,5 4,5 3 3 3 4,03

9 2 3 3 3 3 3 3

Tabla 26. Disparidad del video de entrenamiento 2.

Se expone la disparidad calculada por el método de los carriles, el método de la imagen completa, y la disparidad hallada manualmente.

4.4.3. Estimación de la velocidad.

Se decidió analizar solo los algoritmos de NCC y SAD, descartando esta vez SSD. Esta decisión fue

tomada en base a la comparación entre SAD y SSD; se determinó que SAD es más precisa la mayoría de

las veces, y cuando no, SAD y SSD brindan resultados similares.

Para estimar la velocidad media son necesarias dos características previamente enunciadas: la tasa de

captura del video o cuadros por segundo (FPS), y la distancia entre las dos líneas de acumulación. Con

estos dos datos, y junto a la disparidad hallada, es posible estimar la velocidad aplicando la formula

mencionada anteriormente:

Siendo S la separación entre las líneas de acumulación, FPS los cuadros por segundo y la disparidad

calculada. La velocidad queda expresada en píxeles por segundo. Si se desea pasar a unidad físicas, como

metros por segundo [m/s] o kilómetros por hora [km/h], es necesario obtener dos parámetros de más: la

altura a la cámara ( ) y la distancia focal ( ). Para pasar a m/s solo basta con multiplicar la velocidad por

el cociente entre la altura a la cámara y la distancia focal; y para expresarla en km/h, solo faltaría

multiplicar la velocidad en m/s por el factor 3.6 (factor que convierte m/s a km/s).

Page 61: Emparejamiento en imágenes de acumulación espacio-temporal

49

[

]

[

]

4.4.4. Velocidad calculada manualmente.

Para sacar una eficiencia de los algoritmos, es necesario tener datos de referencia para comparar el

desempeño. Para hallar la velocidad de manera manual, se hizo uso de un algoritmo previamente diseñado

por el Ing. Francisco Calderón como parte de su trabajo de investigación [6].

El algoritmo facilita el cálculo de la velocidad al permitir visualizar el video cuadro a cuadro y la

posibilidad de almacenar una pareja de coordenadas al hacer click con el mouse (izquierdo para la

coordenada 1, derecho para la coordenada 2). El algoritmo retorna un archivo donde se registran el

conjunto de valores que el usuario ha elegido almacenar. Cada conjunto de valores está conformado por la

coordenada vertical (eje ‘y’) y el número del cuadro del punto que se eligió con el mouse. De esta manera

es posible registrar la coordenada vertical ( ) del vehículo A en el cuadro , y un número de cuadros

después registrar nuevamente la coordenada vertical del mismo vehículo ( ) en el cuadro .

Con este par de datos es posible calcular la velocidad, en pixeles por segundo, del vehículo A de la

siguiente manera

( )

4.4.5. Resultados de la estimación de la velocidad media.

A continuación se presenta la tabla con los resultados de la estimación de la velocidad aplicando los

algoritmos de NCC y SAD, usando los dos métodos propuestos, separación por carriles e imagen

completa, así como la velocidad calculada mediante el método manual. Una vez más solo se presentarán

los resultados del video 2; los resultados del video 1 y 3 pueden encontrarse en la sección de anexos (ver

ANEXO N° 2).

VIDEO 2 - NCC (Correlación Cruzada Normalizada)

Imagen Promedio Carriles Imagen Completa Velocidad Manual

[pix/s] [pix/s] [pix/s]

1 1170,000 1560,000 1372,955

2 3120,000 1560,000 1741,286

3 1040,000 668,571 1400,089

4 1560,000 1560,000 1488,636

5 1040,000 1170,000 1051,902

6 1170,000 936,000 1227,774

7 1560,000 1560,000 1526,232

8 1170,000 1560,000 1545,781

9 2340,000 1560,000 1348,000

Tabla 27. Velocidad estimada aplicando el algoritmo NCC (video 2).

Page 62: Emparejamiento en imágenes de acumulación espacio-temporal

50

VIDEO 2 - SAD (Suma de Diferencias Absolutas)

Imagen Promedio Carriles Imagen Completa Velocidad Manual

[pix/s] [pix/s] [pix/s]

1 1170,000 936,000 1372,955

2 1560,000 1560,000 1741,286

3 1040,000 1560,000 1400,089

4 1560,000 1560,000 1488,636

5 1040,000 780,000 1051,902

6 1170,000 936,000 1227,774

7 1560,000 1560,000 1526,232

8 1040,000 1560,000 1545,781

9 1560,000 1560,000 1348,000

Tabla 28. Velocidad estimada aplicando el algoritmo SAD (video 2).

Como se desea diseñar un algoritmo que estime de manera acertada la velocidad media en una vía, se

procede a calcular la velocidad media total del video. Esta velocidad es obtenida computando el promedio

de las velocidades individuales de cada par de imágenes de acumulación generadas. En la Tabla 29 se

presentan los resultados obtenidos al estimar la velocidad media del video 2.

Video 2 - Velocidad Media

Método Carriles Completa

NCC 1574,44 1348,29

SAD 1300,00 1334,67

Manual 1411,41

Tabla 29. Velocidad media del video de entrenamiento 2.

Algoritmos de NCC, SAD y el método manual.

La Tabla 30 contiene los resultados de realizar el proceso anteriormente indicado para los tres videos de

entrenamiento. Como se mencionó al inicio de esta sección, lo que se busca es identificar el algoritmo con

el cual se obtienen resultados más precisos, con el cual se diseñara el algoritmo definitivo que estimará la

velocidad media en la vía. La Tabla 31 resume la eficiencia de las técnicas y métodos aplicados; la

eficiencia fue calculada de la siguiente manera

( )

Page 63: Emparejamiento en imágenes de acumulación espacio-temporal

51

VELOCIDAD MEDIA [PIX/S]

VIDEO NCC SAD

Manual Carriles Completa Carriles Completa

Video 1 567,778 691,022 568,038 612,720 577,114

Video 2 1574,444 1348,286 1300,000 1334,667 1411,406

Video 3 1119,938 1230,095 524,153 500,045 511,465

Tabla 30. Resultados de la estimación de la velocidad en los videos de entrenamiento.

EFICIENCIA

VIDEO NCC SAD

Carriles Completa Carriles Completa

Video 1 98% 80% 98% 94%

Video 2 88% 96% 92% 95%

Video 3 0% 0% 98% 98%

Tabla 31. Eficiencia de la estimación de la velocidad en los videos de entrenamiento.

Como puede observarse, la técnica que mejores resultados presenta al estimar la velocidad media de una

vía es la Suma de Absolutas Diferencias. Como se ve, la técnica NCC presenta dificultades al estimar la

velocidad en el video 3, obteniéndose una eficiencia del 0% (la velocidad estimada es más del doble de la

velocidad esperada hallada manualmente). Si se analiza la tabla que contiene las disparidades calculadas,

y se compara las técnicas SAD y NCC, fácilmente se deduce lo mismo: SAD presenta mejores resultados

que NCC.

En cuanto a los métodos aplicados, el computar la disparidad por carriles presenta un índice más alto de

aciertos que computar la disparidad con el par de imágenes completas. Además, como se menciono en

secciones anteriores, computar por carriles es más rápido que computar utilizando toda la imagen, por lo

que se concluye que la separación por carriles es más óptima que usar las imágenes completas. La

desventaja que tendría separar en carriles las imágenes, es que es necesario definir el número de carriles

que presenta la vía, siendo este número un parámetro que debe ser definido por el usuario.

4.4.6. Observaciones.

Antes de seguir con la sección que detalla el algoritmo propuesto, es necesario mencionar ciertas

observaciones referentes a los resultados obtenidos en los videos de entrenamiento.

a) La eficiencia calculada de los algoritmos NCC y SAD se interpreta como el porcentaje de acierto que

presenta la velocidad estimada con los algoritmos hacia la velocidad hallada manualmente. Aquí cabe

mencionar que la velocidad que se halla manualmente puede presentar cierto grado de error, puesto que

está sujeta a la precisión de la persona que la hallo. La idea de presentar esta eficiencia es la de

exteriorizar una referencia que indica que tan acertado es cierto algoritmo en base al cálculo minucioso

por el método manual, y de esta manera escoger el algoritmo que posiblemente es más eficiente al resolver

el problema planteado.

b) El método de los carrieles supone que los automóviles se desplazan dentro de los carriles delimitados

en la vía; cuando un auto transita sobre la línea que delimita los carriles, se producirán resultados

Page 64: Emparejamiento en imágenes de acumulación espacio-temporal

52

posiblemente erróneos, ya que el auto podrá encontrarse en la dos imágenes generadas al separar la vía en

carriles.

Figura 37. Duplicación al separar la vía en carriles.

A la izquierda, imagen A 33 del video de entrenamiento 3. Al separar la imagen en dos carriles, se obtiene la imagen A33.1 (en rojo) y A33.2 (en verde). Como se observa, el automóvil de color rojo se encuentra sobre la línea de separación del carril; al partir la imagen en los dos carriles, el

automóvil en cuestión queda contenido en ambas particiones. Esto genera un error de cálculo ya que el algoritmo supone la existencia de dos

automóviles diferentes.

c) Es obvio que el método de los carriles supone que el automóvil atraviesa el video en línea recta; de lo

contrario, aparecería una disparidad a lo largo del eje x, y como fue mencionado en secciones anteriores,

el trabajo fue desarrollado bajo ciertas hipótesis, siendo esta una de ellas (disparidad solo en el eje

vertical). Esta condición es más crítica al realizar la separación de carriles, ya que es posible encontrar

casos de oclusión a causa de separar la imagen en carriles, puesto que puede ser que un auto se encuentre

en el carril 1 al cruzar por la línea de acumulación A, y a causa de su movimiento a lo largo del eje

horizontal, aparezca en el carril 2 al cruzar la línea de acumulación B, generándose una oclusión.

d) Al separar por carriles es necesario tener en cuenta el caso en donde solo hay automóviles en uno de los

carriles. Esto principalmente a la hora de calcular el promedio entre los dos carriles, ya que si en el carril 2

no hay automóviles, no es posible realizar el promedio de manera convencional; si se hiciera de esta

manera, el resultado obtenido sería la mitad del valor real. El siguiente ejemplo aclara lo anteriormente

mencionado: suponer que se está ante la presencia de un par de imágenes que presentan este tipo de caso

[fig. 27]. Al computar la disparidad entre el par de imágenes, los resultados indicaran que en el carril 1 la

disparidad es de , mientras que la disparidad en el carril 2 es de 0. Si se computara el promedio entre los

carriles, la disparidad total sería de

, siendo este valor la mitad de la disparidad que se espera

( ).

Figura 38. Ausencia de vehículos en un carril. Caso mencionado en el numeral d. Como se observa, al separar la imagen en dos carriles, solo en el carril A#.1 hay un auto, mientras que en el

carril A#.2 no.

e) Es posible que al generarse los pares de imágenes de acumulación de cierto video, halla imágenes que

no presenten automóviles. Lo que se espera es que la disparidad, en estos casos, sea nula, ya que no hay

autos; el problema yace en que los algoritmos algunas veces calculan una disparidad entre el par de

imágenes “vacías” a causa de las diferencias existentes entre el fondo. Afortunadamente, en la mayoría de

las imágenes en que se presenta esto, la disparidad es bastante alta, por lo que pueden ser identificados

Page 65: Emparejamiento en imágenes de acumulación espacio-temporal

53

fácilmente estos casos. Cabe mencionar que este caso en particular se presentaba solo con la técnica NCC,

razón por la cual la eficiencia de esta técnica en el video 3 es nula.

Figura 39. Disparidad nula.

Par de imágenes de acumulación del video de entrenamiento 3. A la izquierda, la imagen A6; a la derecha, imagen B6. La disparidad esperada es de cero, pero debido a la diferencia entre el fondo del par de imágenes, el algoritmo de NCC encontrar una disparidad de 253 pixeles.

f) Finalmente, cabe volver a mencionar que cuando los automóviles se detienen sobre una de las líneas de

acumulación, el cálculo de la disparidad es prácticamente imposible. Esto sucede en videos de vías con

trancones considerables, o sobre vías con semáforos. Estos casos pueden ser reducidos si se sitúan las

líneas de acumulación no muy separadas, o si las imágenes de acumulación se capturan sobre más cuadros

del video.

Figura 40. Efecto del frenado sobre las líneas de acumulación.

Ejemplos del caso mencionado en el literal f. A la izquierda, la imagen A7 del video de entrenamiento 1. A la derecha, la imagen B7.

En base a los resultados obtenidos con los videos de entrenamiento, la decisión tomada fue la de aplicar el

algoritmo de la Suma de Diferencias Absolutas por carriles. En la siguiente sección, se desarrollará el

diseño de este algoritmo definitivo para la estimación de la velocidad media, con los pasos a realizar y las

consideraciones necesarias para su diseño.

Page 66: Emparejamiento en imágenes de acumulación espacio-temporal

54

Page 67: Emparejamiento en imágenes de acumulación espacio-temporal

55

5. ALGORITMO PROPUESTO PARA LA ESTIMACIÓN DE LA VELOCIDAD

Con base a los resultados obtenidos con los videos de entrenamientos, y a otras pruebas realizadas a lo

largo del desarrollo del trabajo, se concluye que el método más eficiente para estimar la velocidad media

utilizando imágenes de acumulación espacio temporal es el algoritmo de SAD por carriles. El algoritmo

diseñado consta de tres partes fundamentales: lectura del video, generación de las imágenes de

acumulación y estima de la velocidad. En la Figura 41 pude observarse el diagrama en bloques completa

del algoritmo propuesto.

Figura 41. Diagrama en bloques del algoritmo propuesto.

A continuación se expondrá brevemente el funcionamiento del algoritmo diseñado, separándolo en las tres

etapas previamente mencionadas. El código fuente del algoritmo se encuentra en la sección de anexos

(¡Error! No se encuentra el origen de la referencia.), junto con las funciones creadas específicamente

para la solución del problema.

5.1. ENTRADAS Y SALIDAS DEL ALGORITMO PROPUESTO.

El algoritmo recibe como “entradas” la ruta del video y cuatro parámetros definidos por el usuario, los

cuales deben ser extraídos según las características del video; estos parámetros son: número de carriles en

el video, inicio de la línea de acumulación A, distancia entre las líneas de acumulación y el número de

cuadros que conformaran las imágenes de acumulación.

Page 68: Emparejamiento en imágenes de acumulación espacio-temporal

56

ENTRADAS O PARAMETROS A DEFINIR

DESCRIPCION

Ruta del video Indica la localización del video en el equipo.

Número de carriles Cuantos carriles presenta la vía en el video.

Inicio línea de acumulación A

Coordenada vertical en donde se situara la primera

línea de acumulación (línea A), a partir de la cual

se generan las imágenes A’s del par.

Separación entre las líneas de acumulación

Distancia entre la línea A y la línea B de

acumulación. Sumado este valor a la coordenada de

inicio de la línea A, se obtiene la coordenada de

inicio de la línea B. Allí se posicionará la segunda

línea de acumulación, a partir de la cual se generan

las imágenes B’s del par.

Número de cuadros a computar

Este número indica cuantos cuadros serán

acumulados en cada imagen de acumulación. Este

número da el largo (numero de filas) que tendrán

los pares de imágenes de acumulación generadas.

Tabla 32. Entradas del algoritmo propuesto.

Como salidas, son creados dos archivos de texto y almacenadas las imágenes de acumulación espacio-

temporal generadas. El primer archivo de texto contiene las características propias del video y los

parámetros definidos para la creación de las imágenes de acumulación; el segundo almacena los cálculos

de la disparidad y la velocidad estimada de cada una de las imágenes de acumulación, así como la

disparidad y velocidad media del video.

SALIDAS

DESCRIPCION

Imágenes de acumulación

(extensión JPG)

El algoritmo almacena, en la ruta especificada, las

imágenes de acumulación espacio-temporal

generadas. El número de imágenes creadas

depende directamente del numero de cuadros por

segundo (FPS) del video, del número de cuadros a

computar por imagen y de la duración del video.

Archivo “Parámetros”

(extensión TXT)

Archivo de texto que contiene información sobre

las características del video (dimensiones, FPS,

número de cuadros del video, duración) y

parámetros definidos para la generación de las

imágenes de acumulación espacio-temporal

(dimensiones, cantidad de imágenes generadas,

coordenadas línea A y línea B, separación entre las

líneas, tiempo real analizado del video).

Archivo “Velocidades”

(extensión TXT)

Archivo de texto que almacena las disparidades

calculadas y las velocidades estimadas de cada par

de imágenes de acumulación espacio-temporal que

conforman el video. Asimismo, el archivo contiene

la disparidad y la velocidad media estimada de todo

el video.

Page 69: Emparejamiento en imágenes de acumulación espacio-temporal

57

Tabla 33. Salidas del algoritmo propuesto.

5.2. LECTURA DEL VIDEO.

La primera parte del algoritmo se encarga de leer el video, especificando la ruta de acceso del mismo. Una

vez leído, es caracterizado para extraer información necesaria, como la duración, la tasa de captura del

video y las dimensiones. Son dichas características, junto con otros parámetros, los que se escriben en el

archivo de texto de salida “Parámetros”. El video es luego procesado cuadro por cuadro para la generación

de los pares de imágenes de acumulación.

5.3. GENERACIÓN DE LAS IMÁGENES DE ACUMULACIÓN ESPACIO-TEMPORAL.

El siguiente paso es la creación de las imágenes de acumulación del video. Primero son definidos los

parámetros previamente descritos: número de carriles, inicio línea de acumulación A, separación entre las

líneas de acumulación y número de cuadros por imagen. La idea es la de comenzar a recorrer los cuadros

del video, almacenando los pixeles que se encuentran sobre la línea A y B en dos imágenes.

En primer lugar es necesario conocer el número de imágenes de acumulación que serán generadas; este

dato se conoce con la relación entre los parámetros “numero de cuadros por imagen” y el “numero de

cuadros del video”, de la siguiente manera:

Esta relación calcula cuantas imágenes, con un número de filas igual a , se pueden generar

con el numero de cuadros totales del video ( ). El número de imágenes que pueden ser

generadas del video da la pauta para el número de iteraciones que se deben hacer.

Una vez hallado este número, son creadas dos matrices con las dimensiones adecuadas, las cuales

posteriormente se convertirán en el par de imágenes de acumulación. Estas matrices tienen dimensiones

.

Para crear el par de imágenes de acumulación es necesario acumular los pixeles que se encuentran sobre

las líneas de acumulación en cada uno de los cuadros, acumulando solamente la información de N cuadros

del video por par de imágenes, donde N esta dado por el parámetro . Esta información es

acumulada en las matrices previamente creadas (matriz a y b), generando así el par de imágenes de

acumulación. Finalmente, estas imágenes son guardadas en la ruta especificada utilizando la extensión

‘.jpg’.

5.4. ESTIMACIÓN DE LA VELOCIDAD MEDIA.

Page 70: Emparejamiento en imágenes de acumulación espacio-temporal

58

Cada vez que se ha generado un par de imágenes de acumulación, se procede al cálculo de la disparidad

entre ellas y, posteriormente, se estima la velocidad. Para esto es necesario separar cada una de las

imágenes en carriles, para luego procesar los carriles y calcular la disparidad, y así estimar la velocidad

por carril. Finalmente se obtiene el promedio entre las velocidades estimada de los carriles del par de

imágenes de acumulación.

Para generar los carriles se divide cada imagen en N partes iguales, siendo este N el número de carriles

previamente definido. Cada uno de los pares de carriles obtenidos es luego procesado por el algoritmo de

Sumas de Diferencias Absolutas, el cual genera un vector de correspondencias entre el par de imágenes.

Este vector luego es analizado para identificar el punto en donde la correspondencia fue máxima entre el

par de imágenes.

Finalmente, se obtiene la disparidad promedio por carriles de cada uno de los pares de imágenes, junto con

la estimación de la velocidad por carriles. Con la disparidad promedio por carriles del par de imágenes de

acumulación es calculada la velocidad. Esto se reduce a implementar la ecuación previamente descrita

Donde S es la separación entre las líneas de acumulación, FPS es la tasa de captura del video (cuadros por

segundo) y d es la disparidad promedio calculada.

Estos dos cálculos son luego escritos en el archivo de salida “Velocidades.txt”, con lo cual se logra

registrar la disparidad media y la velocidad estimada de cada par de imágenes de acumulación. Al final, se

almacena la disparidad media total y la velocidad estimada media de todo el video.

Cuando el algoritmo termina de computar un video especifico, toda la información necesaria queda escrita

en los archivos de salida. Para corroborar luego la eficiencia que se tiene al estimar la velocidad media de

la vida, es necesario obtener el archivo con las disparidades halladas de manera manual para obtener la

velocidad media manual de todo el video, y así comparar con los resultados que arroja el algoritmo

diseñado.

Figura 42. Archivo de salida.

“Velocidades.txt” de uno los resultados.

Page 71: Emparejamiento en imágenes de acumulación espacio-temporal

59

5.5. IMPLEMENTACIÓN.

A continuación se resumen las funciones diseñadas que hacen parte de algoritmo propuesto para la

estimación de la velocidad media. Se han listado las entradas y salidas de cada función, junto con una

breve descripción de su funcionamiento. En la Figura 43 se observa la evolución del proceso llevado a

cabo por el algoritmo propuesto.

NOMBRE DESCRIPCION ENTRADAS SALIDAS

EstimaVelocidad

Algoritmo final diseñado que

estima la velocidad media en

un video.

Ruta del Video.

Número de Carriles.

Inicio línea de acumulación A.

Separación entre las líneas de

acumulación.

Número de cuadros a acumular.

Pares de imágenes de

acumulación.

Archivo de texto

“Parámetros”

Archivo de texto

“Velocidades”.

sad()

Función que calcula la suma

de diferencias absolutas entre

dos imágenes o matrices.

Imagen A.

Imagen B.

Vector con pesos de

“semejanza” o

correspondencias.

disparity2()

Función que obtiene la

disparidad entre las imágenes,

utilizando el resultado de la

función sad().

Vector de pesos de

“semejanza”.

Disparidad.

meanCarril()

Función que computa el

promedio entre las

disparidades por carriles,

condicionando el promedio a

disparidades diferentes de 0.

Vector con las disparidades

halladas por carril.

Disparidad promedio del par

de imágenes.

Tabla 34. Algoritmos y funciones diseñadas para la solución del problema.

(a)

(b)

Page 72: Emparejamiento en imágenes de acumulación espacio-temporal

60

(c)

(d)

Figura 43. Evolución del proceso para la estima de la velocidad media en una vía.

(a) Cuadro 200 del video de prueba #4. (b) Par de imágenes de acumulación; imagen A1 (izquierda) e imagen B1 (derecha). (c) Imágenes de

acumulación separadas en carriles; para este caso, dos carriles. (d) Gráfica de los vectores de correspondencias de cada uno de los carriles.

Carril A 1 Carril B 1

Carril A 2 Carril B 2

Carril A 1 Carril B 1

Carril A 2 Carril B 2

0 100 200 300 400 500 6000

500

1000

1500

2000

2500

3000

3500

4000

4500

X: 304

Y: 3569

SAD - Carril 1

0 100 200 300 400 500 6000

1000

2000

3000

4000

5000

6000

7000

X: 303

Y: 4903

SAD - Carril 2

Page 73: Emparejamiento en imágenes de acumulación espacio-temporal

61

6. RESULTADOS.

Una vez diseño el algoritmo, es tiempo de obtener los resultados al estimar la velocidad media en una vía

utilizando imágenes de acumulación espacio-temporal.

6.1. VIDEOS DE PRUEBA CAPTURADOS.

Para esto, fueron tomados 10 videos sobre la calles de la ciudad de Bogotá. Los videos fueron tomados en

3 lugares diferentes, con el fin de comprobar el funcionamiento del algoritmo en diferentes condiciones.

Las vías elegidas fueron la séptima, el parque nacional y el norte de la autopista. Los videos fueron

tomados desde puentes peatonales y puentes vehiculares, de manera perpendicular a la vía, procurando

que la totalidad de la vía se encontrara dentro del tamaño del video. Unos videos fueron tomados con la

cámara Sony PlayStationEye (30 y 125 fps), y los restantes con una cámara digital Sony Cyber-shot 5.1

Mega Pixeles (25 fps). Las características de los videos se resumen en la Tabla 35.

DURACION RESOLUCION FPS CARRILES LUGAR

Video 1 00:03:00 640X480 30 2 Puente PN

Video 2 00:02:31 640X480 30 3 Séptima

Video 3 00:02:14 640X480 25 2 Autopista Cll 142

Video 4 00:03:17 640X480 25 2 Autopista Cll 138

Video 5 00:03:48 640X480 25 2 Autopista Cll 138

Video 6 00:01:48 640X480 25 2 Autopista Cll 142

Video 7 00:01:39 640X480 25 2 Autopista Cll 134

Video 8 00:02:03 640X480 25 2 Autopista Cll 134

Video 9 00:01:35 640X480 25 2 Autopista Cll 134

Video 10 00:01:18 320X240 125 2 Puente PN

Tabla 35. Características de los videos capturados.

Los resultados obtenidos al estimar la velocidad media de los vehículos en los videos se listan a

continuación.

Cuadros

acumulados

por imagen

Imágenes de

acumulación

generadas

Coordenada

vertical de

la línea A

Coordenada

vertical de

la línea B

Separación

línea de

acumulación

Tiempo

real

analizado

Video 1 600 9 100 260 160 pix 00:03:00

Video 2 600 7 10 410 400 pix 00:02:20

Video 3 300 11 40 240 200 pix 00:02:12

Video 4 300 16 40 240 200 pix 00:03:12

Video 5 300 19 40 240 200 pix 00:03:48

Video 6 300 9 40 240 200 pix 00:01:48

Video 7 300 8 20 240 220 pix 00:01:36

Video 8 300 10 20 240 220 pix 00:02:00

Video 9 300 7 20 190 170 pix 00:01:24

Video 10 600 16 2 192 190 pix 00:01:16

Tabla 36. Parámetros definidos para estimar la velocidad.

Page 74: Emparejamiento en imágenes de acumulación espacio-temporal

62

En la Tabla 36 se listan los parámetros referentes a las imágenes de acumulación espacio-temporal. El

tiempo real analizado hace referencia al tiempo del video computado para la estimación de la velocidad;

en algunos casos, el video no fue computado en su totalidad. Esto se debe a que al dividir el número de

cuadros totales del video entre el número de cuadros que se acumulan por cada par de imágenes, sobraban

un número reducido de cuadros que no alcanzaban a conformar una imagen completa de acumulación;

para lograr el análisis completo de los videos, sería necesario rellenar con ceros (negro) el resto del último

par de imágenes de acumulación, con el fin de completar la dimensión requerida.

6.2. RESULTADOS OBTENIDOS.

En la Tabla 37 y la Tabla 38 se resumen los resultados obtenidos al aplicar el algoritmo propuesto para la

estimación de la velocidad media en una vía. Como puede observarse, el algoritmo presenta eficiencias del

90%, al compararlas con el cálculo de la velocidad manualmente; esto indica que el algoritmo está

estimando una velocidad media bastante acertada comparándola con la obtenida manualmente.

DISPARIDAD

MEDIA

[pix]

VELOCIDAD

ESTIMADA

[pix/s]

VELOCIDAD

“MANUAL”

[pix/s]

Video 1 4 1388.82 1299.85

Video 2 58.38 542.72 601.35

Video 3 6.630 1640.08 1861.25

Video 4 2.781 1849.70 1866.93

Video 5 2.658 1956.14 1885.01

Video 6 3.000 1694.44 1939.65

Video 7 5.812 996.51 871.59

Video 8 8.250 684.58 626.59

Video 9 5.571 772.91 748.95

Video 10 48.25 552.540 604.712

Tabla 37. Velocidad y disparidad media estimadas por el algoritmo propuesto.

EFICIENCIA

[%]

Video 1 93

Video 2 90

Video 3 88

Video 4 99

Video 5 96

Video 6 87

Video 7 86

Video 8 91

Video 9 97

Video 10 91

TOTAL 91.8

Tabla 38. Eficiencia del algoritmo propuesto al estimar la velocidad media.

Page 75: Emparejamiento en imágenes de acumulación espacio-temporal

63

6.3. ANALISIS DE RESULTADOS.

Si se examinan los resultados del video 7 con el cual la eficiencia del algoritmo fue de un 86%, siendo la

eficiencia más baja entre los 10 videos, puede encontrarse que las características del fondo presentan

algunas irregularidades.

El video fue tomado sobre el puente vehicular de la calle 134 con autopista; en un día en el cual

recientemente había llovido en el sector, por lo que la vía presentaba acumulación de agua. Esta condición

en particular ocasiono que el fondo sobre las líneas de acumulación fuera bastante diferente, dificultando

el cálculo de la disparidad entre el par de imágenes y obteniéndose un bajo porcentaje de acierto.

Asimismo, factores como la líneas separadoras de los carriles y la iluminación de la vía (presencia de

sombras debido al puente vehicular y los mismo vehículos) ocasionan ciertas desviaciones al calcular la

disparidad.

Figura 44. Irregularidades en el fondo.

Par de imágenes de acumulación número 3 del video 7. Se observa la acumulación de agua en la imagen B (azul).

Las eficiencias obtenidas varía entre el rango del 86% hasta el 99%, siendo estos resultados bastante

prometedores e indicando que el algoritmo diseñado está cumpliendo con el objetivo propuesto, estimando

la velocidad media de la vía utilizando técnicas de emparejamiento de imágenes. Esto conlleva una gran

reducción de tiempo al compararse con el tiempo invertido calculando las velocidades manuales.

Como se mencionó, el cálculo manual debe hacerse ubicando puntos referencia sobre cada vehículo,

examinando el video cuadro por cuadro. En este proceso puede tardarse una persona, con un video de

aproximadamente 4000 cuadros, de 5 a 10 minutos (dependiendo en gran parte de la densidad vehicular

del video) y asumiendo que ese está usando el algoritmo que facilita este proceso. El algoritmo que estima

la velocidad emparejando las imágenes invierte aproximadamente de 1 a 2 minutos, dependiendo este

valor del número de imágenes de acumulación generadas y el número de carriles en la vía. Como se

observa, la reducción es bastante considerable, y los resultados que se obtienen son aproximados a los

obtenidos manualmente.

6.4. RESTRICCIONES Y RECOMENDACIONES.

A continuación son listadas algunas restricciones del algoritmo propuesto que deben ser tomadas en

cuenta para obtener resultados eficientes y adecuados.

La captura de los videos debe de hacerse sobre la vía posicionando la cámara de manera

perpendicular a la misma. Lo ideal es capturar la totalidad de la vía y realizar dicha captura sobre

Page 76: Emparejamiento en imágenes de acumulación espacio-temporal

64

un punto elevado, como un puente peatonal o vehicular. Es recomendable realizar las capturas con

buena iluminación.

Los videos deben capturarse en tramos de vía que preferiblemente no presenten alguna

obstrucción vehicular. Debe evitarse muestras donde el tráfico se detenga totalmente sobre la línea

de captura, ya que esto genera imágenes de acumulación de difícil análisis con las que se obtienen

resultados errados.

Para resultados mejores, es preferible captura los videos a una tasa de captura de no menos de 25

cuadros por segundo. Con tasas más bajas se pierde precisión al estimar la velocidad media de la

vía.

Debido a la restricción “epipolar” vertical asumida para el desarrollo del proyecto, incurrirán en

resultados errados las muestras donde los vehículos realicen cambios de carriles. Esta es una

hipótesis bastante fuerte con la que se trabajó, por lo que el algoritmo no es capaz de identificar

desplazamientos horizontales.

La posición de la línea de acumulación está determinada por la tasa de captura de los videos. Entre

mayor sea la taza de captura, es posible disminuir la separación entre la líneas, aumentándose la

precisión del algoritmo. Si la tasa de captura es muy baja, es recomendable dejar una separación

entre las líneas más grande; esto ocasiona menor precisión en los resultados.

Es recomendable situar las líneas de acumulación sobre segmentos de la vía donde la calle tenga

las mismas características (evitar huecos, fracturas o sombras). De esta manera, es posible

considerar el fondo en ambas imágenes de acumulación como si fuera el mismo, facilitando el

cálculo de la disparidad entre las imágenes.

Page 77: Emparejamiento en imágenes de acumulación espacio-temporal

65

7. CONCLUSIONES

El algoritmo propuesto para estimar la velocidad media en una vía, utilizando imágenes de acumulación

espacio-temporal cumple con dicha tarea de manera eficiente. Según los resultados obtenidos, el algoritmo

es capaz de estimar una velocidad media bastante aproximada a la velocidad que se obtiene por métodos

manuales, reduciendo el tiempo invertido para el cálculo de la velocidad. Como se mencionó

anteriormente, el cálculo manual es un proceso tedioso, delicado y demorado, y el algoritmo propuesto

está presentando resultados bastante acertados y en mucho menor tiempo.

Para corroborar a cabalidad el alcance del algoritmo propuesto para tal tarea, es necesario comparar los

resultados entregados por el algoritmo con un método actual para el cálculo de la velocidad. Esto asumiría

la comparación con técnicas directas basadas en el efecto Doppler (pistolas de velocidad) o métodos

indirectos (tomando tiempos en que un auto recorre un tramo de calle definida). En caso de concluirse que

él algoritmo es eficiente ante métodos “físicos” de medición, la implementación de un sistema para la

medición de la velocidad media en una vía, disminuyendo costes, aumentando la eficiencia y abriéndose la

posibilidad de la toma de datos de tránsito en tiempo real.

Hablando en términos de inconvenientes y posibles mejoras del algoritmo propuesto, en necesario

mencionar dos aspectos importantes que afectan el desempeño del algoritmo a nivel de precisión: la tasa

de captura de los videos (o cuadros por segundo) y el fondo.

La tasa de captura afecta directamente la precisión de algoritmo, de modo que es posible afirmarse que

entre mayor sea la tasa de captura del video, mayor será la precisión del algoritmo. Esto se debe a que con

una tasa de captura alta, se tiene mayor información en el video, traduciéndose esto en una cantidad más

elevada de datos que permiten identificar la posición (en este caso vertical) del automóvil de manera más

precisa.

Figura 45. Ejemplo a 4 FPS.

Figura 46. Ejemplo a 9 FPS.

Para aclarar de mejor manera lo anteriormente mencionado, supóngase que se han tomado dos videos

sobre la misma vía y al mismo tiempo, con dos cámaras totalmente idénticas; la primera está configurada

Page 78: Emparejamiento en imágenes de acumulación espacio-temporal

66

a una tasa de captura de 4 cuadros por segundo y la segunda a una tasa de captura de 9 cuadros pos

segundo. Los videos tienen una duración de un segundo. Al observar cuadro a cuadro los videos, lo que se

esperaría ver se resumen en la Figura 45 y la Figura 46. Como puede notarse, la posición del automóvil

rojo se identifica de manera más precisa en el video a 9 FPS que en el de 4 FPS. Esto se debe a que existen

más cuadros entre el inicio y el fin del video, y como consecuencia el seguimiento del auto es más exacto

en el video tomado a 9 FPS. El video a 4 FPS presenta un auto que recorre la misma distancia, y solo es

posible determinar su posición instantánea en 4 cuadros; mientras que el video a 9 FPS es posible

determinar la posición instantánea del auto en 9 cuadros.

La tasa de captura de los videos afecta entonces directamente el algoritmo, ya que este se basa en la

posición de dos líneas fijas en la vía sobre las cuales se acumulan las imágenes con las que se realiza el

análisis para estimar la velocidad. La idea de tomar los videos a una tasa de captura más alta es la de

aumentar la posibilidad que sobre la línea de acumulación A y B se almacene la información justo cuando

el auto está cruzando las líneas; esto es, cuando la parte delantera del auto este sobre las líneas.

Esto se traduce en precisión, ya que lo que se desea es determinar el tiempo invertido por una parte

determinada del auto (parachoques, llanta, parabrisas, etc.) en cruzar desde la línea A hasta la línea B; lo

importante aquí es resaltar que para mejor precisión de la medida, debe registrarte el paso del parachoques

delantero por la línea A hasta el que el mismo parachoques delantero (mismo punto) cruce la línea B.

Figura 47. Precisión vs FPS.

Líneas de acumulación situadas en el mismo lugar, sobre el video a 4 FPS (rojo) y a 9 FPS (azul). El número en la esquina superior indica el número de cuadro del video. Se observar claramente que en el video a 9 FPS, el bumper delantero es acumulado en ambas líneas.

Es por eso que con un video tomado a 4 FPS, la precisión de la medida es menos precisa que con un video

tomado a 9FPS. La razón es que al situar las líneas con un video a baja tasa de captura, se disminuye la

probabilidad que lo que se almacena sobre las ambas líneas de acumulación sea la misma parte del

vehículo (Figura 47).

En lo referente al fondo, a lo largo del documento se mencionan situaciones problemáticas que pueden

presentarse. Una posible solución consiste en implementar un algoritmo de segmentación de fondo. Este

algoritmo se encargaría de identificar el fondo sobre el video, segmentarlo y eliminarlo de la escena. De

esta manera, con la ausencia del fondo, las imprecisiones a la hora del emparejamiento del par de

imágenes se disminuirían de manera radical.

Otro aspecto importante a mencionar es la velocidad de la ejecución del algoritmo. En un principio se

habló de la velocidad (en segundos) que tomaba obtener la disparidad entre el par de imágenes, al evaluar

las 4 técnicas expuestas, pero nunca se mencionó un coste computacional ni un tiempo de ejecución del

algoritmo propuesto. Esto se debe a la decisión de implementar el algoritmo sobre MATLAB, y a que

Page 79: Emparejamiento en imágenes de acumulación espacio-temporal

67

estos parámetros están sujetos de manera directa a las capacidades de la maquina sobre la cual se ejecutan.

Es por eso que hablar de “que tan veloz” es el algoritmo estaba fuera de contexto. A pesar de que no se

habla de un tiempo medio de ejecución, es posible reducir este tiempo relativo de manera significativa.

Esta reducción en el tiempo de ejecución se puede logara al reducir el número de operaciones a computar.

Como se mencionó, el computar la imagen en carriles disminuye levemente el tiempo de ejecución. De

esta manera, proponer un método de carriles aún más selectivo, reduciendo el ancho de cada carril, reduce

el tiempo de ejecución del algoritmo. Actualmente, el proceso llevado a cabo solo consta de dividir el

ancho la imagen en N partes iguales, siendo N el número de carriles en la vía; de esta manera, si la vía

presenta dos carriles, el ancho total de la imagen de acumulación es partida en dos imágenes, con ancho

igual a la mitad del ancho original. Si se redujera este ancho de los carriles, en número de operaciones a

computar se reduce en un factor igual a

( )

Esto es, en vez de tener dos imágenes de 640X300 pixeles, podrían tenerse dos imágenes de 640X150

pixeles. De esta manera, en vez de computarse ( ) operaciones, se

estarían computando ( ) operaciones. Esta propuesta se ilustra en la

Figura 48.

Figura 48. Propuesta para la reducción del tiempo de ejecución. Arriba, imagen de acumulación original. Abajo, la separación por carriles actual contra la separación por carriles selectiva.

El inconveniente al aplicar esta propuesta es que la hipóstasis que supone que los automóviles se mueven

en línea recta sobre el eje vertical es más fuerte. En este caso es más crítico cuando un auto se mueve a lo

largo del carril, ya que es posible generar un efecto de oclusión (un objeto aparece en la vista A de la

escena y no en la vista B) cuando el automóvil se realiza un desplazamiento horizontal considerable sobre

el carril y la partición por carriles es muy selectiva.

Finalmente, quedan abiertas posibilidades para trabajos posteriores en base a este. En primer lugar podría

pensarse de implementar un algoritmo como este, con algunas modificaciones, en un sistema en tiempo

Page 80: Emparejamiento en imágenes de acumulación espacio-temporal

68

real, en el cual la captura de los videos y la obtención de la información se realicen de manera simultánea.

De esta manera es posible registrar variables de tráfico en tiempo real y tomar decisiones administrativas

para el manejo del tráfico, como la sincronía de los semáforos o algún tipo de señalización pertinente.

Otra posibilidad es la de trabajar a partir del algoritmo propuesto para la estimación de la velocidad, y

junto a un sistema de segmentación vehicular e identificación de placas, diseñar un sistema capaza de

generar comparendos automáticos por excesos de velocidad, utilizando la velocidad calculada individual

de los automóviles, previamente registrados mediante la identificación de la placa.

Page 81: Emparejamiento en imágenes de acumulación espacio-temporal

69

8. BIBLIOGRAFIA

[1] US Departament of Transportation: Traffic Detector Handbook, Georgetown Pike, VA: Federal

Highway Administration, 2006.

[2] Ingeniería de Tráfico: Parámetros fundamentales. Departamento de Ingeniería Mecánica, Universidad

Carlos III de Madrid. [En línea]. <http://ocw.uc3m.es/ingenieria-mecanica/ingenieria-de-

transportes/material-de-clase-1/ingenieria_trafico.pdf>

[3] JOSE, M. y PARDILLO, M. Apuntes de ingeniería de tráfico. Madrid, España: E.T.S. Ingenieros de

Caminos, Canales y Puertos (2003). [citado el 23-08-2011]

[4] Use of Speed and Red-Light Cameras for traffic enforcement: Guidance on deployment, visibility and

signing. Department for Transport. Londres, Inglaterra. Circular 01/2007. [En línea].

<http://www.direct.gov.uk/prod_consum_dg/groups/dg_digitalassets/@dg/@en/documents/digitalasset/dg

_067427.pdf >

[5] CALDERON BOCANEGRA, Francisco Carlos y URREGO NIÑO, Germán Enrique. Conteo

automático de vehículos. Bogotá DC, 2008. Tesis de pregrado (Ingeniero Electrónico). Pontificia

Universidad Javeriana. Facultad de Ingeniería. Departamento de Electrónica.

[6] CALDERON BOCANEGRA, Francisco Carlos. Sistema de adquisición de parámetros de tráfico

vehicular. Bogotá DC, 2010. Tesis de maestría (Magister en Ingeniería Electrónica). Pontificia

Universidad Javeriana. Facultad de Ingeniería. Departamento de Electrónica. p. 23 -36.

[7] ADELSON, Edward H. and BERGEN, James R. Spatiotemporal energy models for the perception of

motion. En: Journal of the Optic Society of America A. Vol 2, No. 2 (Feb., 1985)

[8] SOUDI, Aissa and ESSAFI, Hassane. Spatio-Temporal video slice edges analysis for shot transition

detection and classification. En: World Academy of Science, Engineering and Technology 28 (2007).

[9] HIRAHARA, Kiyotaka and IKEUCHI, Katsushi. Detection of street-parking vehicles using line scan

camera and scanning laser range sensor. IEEE (2003).

[10] CHONG-WAH, Ngo, TING-CHUEN, Pong and HONG-JIANG, Zhang. Motion analysis and

segmentation through spatio-temporal slices processing. En: IEEE transactions on image processing: a

publication of the IEEE Signal Processing Society. Vol. 12 (2003)

[11] CHONG-WAH, Ngo,. Analysis of spatio-temporal slices for video content representation. Hong

Kong, 2000. Tesis de doctorado (Doctor of Philosophy in Computer Sciencie). The Hong Kong University

of Science and Technology. Department of Computer Science.

[12] BRADSKI, Gary and KAEHLER, Adrian. Learning OpenCV. United States of America: O’Reilly

Media, 2008. p. 415-444.

[13] LECUMBERRY RUVERTONI, Federico. Cálculo de disparidad y segmentación de objetos en

secuencias de video. Montevideo, 2005. Tesis de maestría (Magister en Ingeniería Eléctrica). Universidad

de la República. Facultad de Ingeniería. Departamento de Electrónica. p. 3-20.

Page 82: Emparejamiento en imágenes de acumulación espacio-temporal

70

[14] LECUMBERRY RUVERTONI, Federico. Cálculo de disparidad en imágenes estéreo, una

comparación. III Workshop de Computación Gráfica, Imágenes y Visualización. Universidad de la

República, Uruguay.

[15] BARNARD, Stephen T. and THOMPSON, William B. Disparity Analysis of Images. En: IEEE

transactions on pattern analysis and machine intelligence. Vol PAMI-2, No. 4 (July, 1980).

[16] SATORRE, Rosanna, COMPAÑ, Patricia, BOTIA, Antonio y RIZO, Ramón. Estimación de

disparidad en visión estereoscópica mediante la integración de diversas técnicas combinadas con

multirresolución. Grupo i3a: Informática Industrial e Inteligencia Artificial, Departamento de Ciencia de

la Computación e Inteligencia Artificial. Universidad de Alicante.

[17] MARR, David and POGGIO, Tomaso. A computational theory of human stereo vision. En:

Proceedings of the Royal Society of London. Series B, Biological Sciencies. Vol 204, No. 1556. (May.,

1979). p. 301-328.

[18] DRAPER, Bruce A. Camera Models: Projection & Lens. CS510, Lecture #2 (Jan., 2002). [En línea].

<http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/DRAPER2/L01.pdf>

[19] YANG, Allen Y. Image Formation and Camera Models. Berkley, EE 225b (Feb., 2007). [En línea]

<http://inst.eecs.berkeley.edu/~ee225b/sp07/lectures/lec12.pdf>

[20] TSAIG, Yaakov. Automatic Segmentation of Moving Objects in Video Sequences. Tel-Aviv, 2001.

Tel-Aviv University. School of Matehmatical Sciencies. Department of Computer Science.

[21] LANG, Felicitas and FÖRSTNER, Wolfgang. Matching Techniques. Bonn, 1995. Universität Bonn.

Institute für Photogrameetrie. [En línea] <http://www.ipb.uni-bonn.de/fileadmin/publication/

papers/1995/lang95.matching.pdf>

[22] TAKIMA SHIBAHARA, Takafumi Aoki and HIROSHI NAKAJIMA, Koji Kobayashi. A sub-pixel

stereo correspondence technique based on 1D phase-only correlation. En: International Conference of

Image Processing. IEEE, V – 221 (2007). [En línea] <http://nguyendangbinh.org/Proceedings/ICIP/

2007/pdfs/0500221.pdf >

[23] CHANGMING, Sun. Fast stereo matching using rectangular subregioning and 3D maximun-surface

techniques. En: International Journal of Computer Vision. Vol 47, No. 1/2/3 (May, 2002). p. 99-117.

[24] LANE, R.A. and THACKER, N.A. Tutorial: Overwiew of Stereor Matching Research. En: Tina

Memo No. 1994-001. [En línea] <http://www.tina-vision.net/docs/memos/1994-001.pdf>

[25] CHANGMING, Sun. Fast algorithms for stereo matching and motion estimation. En: Australia-Japan

Advance Workshop on Computer Vision. 9-11 (2003).

[26] HANNAH, Marsha Jo. Digital stereo image matching techniques. USA. Commission III/4: Artificial

Intelligence Center, SRI International. [En línea] <http://www.isprs.org/proceedings/XXVII/congress/

part3/280_XXVII-part3.pdf>

[27] OWENS, Robyn. Lecture 11: Stereo matching. [En línea] <http://homepages.inf.ed.ac.uk/rbf/

CVonline/LOCAL_COPIES/OWENS/LECT11/node5.html> [citado el 27-12-2011]

[28] OWENS, Robyn. Lecture 11: Some existing matching algorithms. [En línea]

<http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/OWENS/LECT11/node6.html> [citado el

28-12-2011]

Page 83: Emparejamiento en imágenes de acumulación espacio-temporal

71

[29] BHUSNURMATH, Arvind and TAYLOR, Camillo J. Solving stereo matching problems using

interior point methods. University of Pennsylvania. [En línea]

<http://www.cis.upenn.edu/~cjtaylor/PUBLICATIONS/pdfs/Bhusnurmath3DPVT08.pdf>

[30] LEUNG, Carlos, APPLETON, Ben and CHANGMING, Sun. Fast stereo matching by iterated

Dynamic programming and quadtree subregioning. Australia. [En línea]

<http://espace.library.uq.edu.au/eserv.php?pid=UQ:9138&dsID=IDP_QSR_BMVC04.pdf>

[31] XUN, Sun, XING, Mei, SHAOHUI, Jiao, MINGCAI, Zhou and HAITAO, Wang. Stereo matching

with reliable disparity propagation. Samsung Advance Institute of Technology, China Lab. Beijing, China.

[32] HERMANN, Simon and KLETTE, Reinhard. The naked truth about cost functions for stereo

matching. The .enpeda.. Project, The University of Auckland. Auckland, New Zealand. [En línea]

<http://www.mi.auckland.ac.nz/tech-reports/MItech-TR-33.pdf>

[33] UNGER, Christian and NAVAB, Nassir. Stereo Matching. Computer Aided Medical Procedures,

Technische Universität München. München, Germany. [En línea]

<http://campar.in.tum.de/twiki/pub/Chair/TeachingWs10Cv2/3D_CV2_WS_2010_StereoMatching.pdf>

[34] BRIECHLE, Kai and HANEBECK, Uwe D. Template matching using fast normalized cross

correlation. Institute of Automatic Control Engineering, Technische Universität München. München,

Germany. [En línea] <http://isas.uka.de/Material/AltePublikationen/briechle_spie2001.pdf>

[35] AHUJA, Siddhant. Correlation based similarity measures. [En línea]

<http://siddhantahuja.wordpress.com/tag/normalized-cross-correlation/> [citado el 05-01-2012]

[36] BROWN, Myron Z., BURSCHKA, Darius and HAGER, Gregory D. Advances in Computational

Stereo. En: IEEE Transactions on Pattern Analysis and Machine Intelligence. Vol 25, No. 8 (Aug., 2003).

p. 993

[37] MARCELLO, Javier, EUGENIO, Francisco y MARQUES, Ferran. Evaluación de técnicas de

correspondencia de regiones para la estimación del movimiento superficial del océano. En: Revista de

Teledetección. ISSN: 1133-0953 (Nov., 2007). 28:32-42.

Page 84: Emparejamiento en imágenes de acumulación espacio-temporal

72

Page 85: Emparejamiento en imágenes de acumulación espacio-temporal

i

ANEXOS

ANEXO #1. CORRESPONDENCIAS IMÁGENES DE ENTRENAMIENTO.

Correspondencia hallada del carril 1 (Imagen de entrenamiento 2).

Correspondencia hallada del carril 2 (Imagen de entrenamiento 2).

0 200 400 600 800 1000 12000

100

200

300

400

500

600

700

800CC - Carril 1

X: 614

Y: 761.8

0 200 400 600 800 1000 1200-200

0

200

400

600

800

1000

X: 614

Y: 928

NCC - Carril 1

0 200 400 600 800 1000 12000

100

200

300

400

500

X: 614

Y: 239.7

SAD - Carril 1

0 200 400 600 800 1000 12000

50

100

150

X: 614

Y: 53.21

SSD - Carril 1

0 200 400 600 800 1000 12000

200

400

600

800

1000CC - Carril 2

X: 610

Y: 993.6

0 200 400 600 800 1000 1200-400

-200

0

200

400

600

800

X: 611

Y: 799

NCC - Carril 2

0 200 400 600 800 1000 12000

50

100

150

200

250

300

350

X: 610

Y: 247.1

SAD - Carril 2

0 200 400 600 800 1000 12000

10

20

30

40

50

60

70

X: 610

Y: 35.96

SSD - Carril 2

Page 86: Emparejamiento en imágenes de acumulación espacio-temporal

ii

Correspondencia hallada del carril 3 (Imagen de entrenamiento 2).

Correspondencia hallada de las imágenes completas (Imagen de entrenamiento 2)

0 200 400 600 800 1000 12000

200

400

600

800

1000

1200

X: 600

Y: 1122

CC - Carril 3

0 200 400 600 800 1000 1200-100

0

100

200

300

400

500

600

700

X: 612

Y: 674

NCC - Carril 3

0 200 400 600 800 1000 12000

50

100

150

200

250

300

350

X: 612

Y: 263.8

SAD - Carril 3

0 200 400 600 800 1000 12000

20

40

60

80

100

X: 612

Y: 52.25

SSD - Carril 3

0 200 400 600 800 1000 12000

2

4

6

8

10

12

14x 10

4 CC

X: 600

Y: 1.278e+005

0 200 400 600 800 1000 12000

0.5

1

1.5

2x 10

5 NCC

X: 611

Y: 1.671e+005

0 200 400 600 800 1000 12000

1

2

3

4

5x 10

4

X: 611

Y: 3.937e+004

SAD

0 200 400 600 800 1000 12000

2000

4000

6000

8000

10000

12000

X: 611

Y: 6988

SSD

Page 87: Emparejamiento en imágenes de acumulación espacio-temporal

iii

Correspondencia hallada del carril 1 (Imagen de entrenamiento 3).

Correspondencia hallada del carril 2 (Imagen de entrenamiento 3).

0 200 400 600 800 1000 12000

100

200

300

400

500

600

700

800CC - Carril 1

X: 613

Y: 745.7

0 200 400 600 800 1000 1200-200

0

200

400

600

800

1000

1200NCC - Carril 1

X: 613

Y: 1001

0 200 400 600 800 1000 12000

50

100

150

200

250

300

350

400

X: 613

Y: 187.7

SAD - Carril 1

0 200 400 600 800 1000 12000

20

40

60

80

100

120

140

X: 613

Y: 39.77

SSD - Carril 1

0 200 400 600 800 1000 12000

200

400

600

800

1000

1200

1400CC - Carril 2

X: 611

Y: 1336

0 200 400 600 800 1000 1200-500

0

500

1000

1500

2000

X: 612

Y: 1694

NCC - Carril 2

0 200 400 600 800 1000 12000

100

200

300

400

500

X: 611

Y: 344.1

SAD - Carril 2

0 200 400 600 800 1000 12000

20

40

60

80

100

120

140

X: 611

Y: 53.83

SSD - Carril 2

Page 88: Emparejamiento en imágenes de acumulación espacio-temporal

iv

Correspondencia hallada del carril 3 (Imagen de entrenamiento 3).

Correspondencia hallada de las imágenes completas (Imagen de entrenamiento 3)

0 200 400 600 800 1000 12000

200

400

600

800

1000

1200

1400CC - Carril 3

X: 613

Y: 1295

0 200 400 600 800 1000 1200-500

0

500

1000

1500

2000

X: 614

Y: 1704

NCC - Carril 3

0 200 400 600 800 1000 12000

100

200

300

400

500

600

700

X: 614

Y: 497.6

SAD - Carril 3

0 200 400 600 800 1000 12000

50

100

150

200

X: 614

Y: 80.53

SSD - Carril 3

0 200 400 600 800 1000 12000

2

4

6

8

10

12

14x 10

4

X: 600

Y: 1.26e+005

CC

0 200 400 600 800 1000 12000

0.5

1

1.5

2x 10

5

X: 615

Y: 1.712e+005

NCC

0 200 400 600 800 1000 12000

1

2

3

4

5x 10

4

X: 616

Y: 3.438e+004

SAD

0 200 400 600 800 1000 12000

2000

4000

6000

8000

10000

12000

X: 613

Y: 6252

SSD

Page 89: Emparejamiento en imágenes de acumulación espacio-temporal

v

ANEXO #2. DISPARIDAD VIDEOS DE ENTRENAMIENTO.

VIDEO 1

Imagen Promedio Carriles (general) Imagen Completa

Manual NCC SAD SSD NCC SAD SSD

1 21,00 26,67 25,00 22 22 16 27,50

2 242,67 216,67 256,33 17 600 31 93,13

3 15,33 19,00 18,67 14 14 9 21,04

4 12,00 11,67 10,00 11 11 11 13,14

5 18,67 18,33 19,33 17 17 15 22,16

6 124,67 33,33 77,00 39 45 23 35,43

7* 0 0 0 0 0 0 X

8 17,00 19,00 28,67 18 15 13 27,20

9 14,67 14,00 12,67 15 16 13 15,66

* Indica que a dicho par de imágenes no es posible encontrarle la disparidad.

VIDEO 1 - NCC (Correlación Cruzada Normalizada)

Imagen Promedio Carriles Imagen Completa Velocidad Manual

[pix/s] [pix/s] [pix/s]

1 625,71 597,27 537,67

2 54,15 772,94 403,38

3 856,96 938,57 750,24

4 1095,00 1194,55 959,08

5 703,93 772,94 697,38

6 105,40 336,92 384,65

7 0,00 0,00 0,00

8 772,94 730,00 605,10

9 895,91 876,00 856,53

VIDEO 1 - SAD (Sumas de Diferencias Absolutas)

Imagen Promedio Carriles Imagen Completa Velocidad Manual

[pix/s] [pix/s] [pix/s]

1 492,75 597,27 537,67

2 60,65 21,90 403,38

3 691,58 938,57 750,24

4 1126,29 1194,55 959,08

5 716,73 772,94 697,38

6 394,20 292,00 384,65

7 0,00 0,00 0,00

8 691,58 876,00 605,10

9 938,57 821,25 856,53

Page 90: Emparejamiento en imágenes de acumulación espacio-temporal

vi

VIDEO 3

Imagen Carriles (Generales) Imagen Completa

Manual NCC SAD SSD NCC SAD SSD

1* 6,5 12 12 12 12 12 16

2* 27 27 27 0 27 27 30

3 26,5 17,5 17,5 14 24 14 19,85

4** 53 0 0 0 0 0 0

5* 301 12 12 0 13 12 12

6** 253 0 0 0 0 0 0

7 19 19,5 19 11 12 11 19,8

8* 262 11 11 1 0 11 13,5

9 12 12 13 13 13 13 13,8

10 13 12,5 12,5 2 12 12 14

11* 11 11 11 1 11 11 12

12 10,5 11 11 11 11 11 11,7

13 11,5 12 11,5 11 11 11 12,5

14 16 16 16 13 13 13 13,5

15 21,5 21,5 21 27 30 14 24,7

16 23 13 17 0 13 13 22

17* 5 29 29 1 30 29 28,3

18* 32 114 27 0 0 109 41

19** 0 0 0 0 0 0 0

20 17,5 17,5 91 10 10 10 33,5

21* 13 13 13 0 13 13 15

22* 9,5 13 13 0 13 13 12

23 7,5 13 21,5 0 13 30 14,2

24* 10 19 19 18 19 19 21

25* 26 0 26 0 0 28 27

26** 0,5 0 0 0 0 0 0

27 16 16 15 15 16 16 15,75

28 13 13 12,5 11 15 15 15

29** 0 0 0 0 0 0 0

30 10 9 11 0 10 9 11,25

31* 12 12 31 0 12 12 12

32** 0 0 0 0 0 0 0

33 10,5 10,5 45 10 13 11 16,9

34 9,5 14 18 14 14 14 14,62

35 22 0 32 0 0 44 24

36 21 21,5 21,5 14 26 25 20,25

37* 0 23 23 0 24 23 26

38 0 0 0 0 0 0 11

* Indica que, al dividir el par de imágenes en carriles, un carril no contiene automóviles.

Page 91: Emparejamiento en imágenes de acumulación espacio-temporal

vii

VIDEO 3 - NCC (Correlación Cruzada Normalizada)

Imagen

Promedio

Carriles

Imagen

Completa Velocidad Manual

[pix/s] [pix/s] [pix/s]

1 1538,46 833,33 585,53

2 370,37 0,00 328,80

3 377,36 714,29 529,67

4 188,68 0,00 0,00

5 33,22 0,00 775,00

6 39,53 0,00 0,00

7 526,32 909,09 553,27

8 38,17 10000,00 820,31

9 833,33 769,23 699,22

10 769,23 5000,00 716,90

11 909,09 10000,00 750,00

12 952,38 909,09 814,70

13 869,57 909,09 796,35

14 625,00 769,23 760,42

15 465,12 370,37 480,73

16 434,78 0,00 496,05

17 2000,00 10000,00 271,28

18 312,50 0,00 261,72

19 0,00 0,00 0,00

20 571,43 1000,00 459,83

21 769,23 0,00 701,92

22 1052,63 0,00 708,33

23 1333,33 0,00 687,50

24 1000,00 555,56 465,28

25 384,62 0,00 388,89

26 20000,00 0,00 0,00

27 625,00 666,67 546,05

28 769,23 909,09 714,10

29 0,00 0,00 0,00

30 1000,00 0,00 825,52

31 833,33 0,00 777,78

32 0,00 0,00 0,00

33 952,38 1000,00 711,23

34 1052,63 714,29 616,07

35 454,55 0,00 464,58

36 476,19 714,29 540,32

37 0,00 0,00 380,00

38 0,00 0,00 808,33

Page 92: Emparejamiento en imágenes de acumulación espacio-temporal

viii

VIDEO 3 - SAD (Suma de Diferencias Absolutas)

Imagen

Promedio

Carriles

Imagen

Completa Velocidad Manual

[pix/s] [pix/s] [pix/s]

1,00 833,33 833,33 585,53

2,00 370,37 370,37 328,80

3,00 571,43 416,67 529,67

4,00 0,00 0,00 0,00

5,00 833,33 769,23 775,00

6,00 0,00 0,00 0,00

7,00 512,82 833,33 553,27

8,00 909,09 0,00 820,31

9,00 833,33 769,23 699,22

10,00 800,00 833,33 716,90

11,00 909,09 909,09 750,00

12,00 909,09 909,09 814,70

13,00 833,33 909,09 796,35

14,00 625,00 769,23 760,42

15,00 465,12 333,33 480,73

16,00 769,23 769,23 496,05

17,00 344,83 333,33 271,28

18,00 87,72 0,00 261,72

19,00 0,00 0,00 0,00

20,00 571,43 1000,00 459,83

21,00 769,23 769,23 701,92

22,00 769,23 769,23 708,33

23,00 769,23 769,23 687,50

24,00 526,32 526,32 465,28

25,00 0,00 0,00 388,89

26,00 0,00 0,00 0,00

27,00 625,00 625,00 546,05

28,00 769,23 666,67 714,10

29,00 0,00 0,00 0,00

30,00 1111,11 1000,00 825,52

31,00 833,33 833,33 777,78

32,00 0,00 0,00 0,00

33,00 952,38 769,23 711,23

34,00 714,29 714,29 616,07

35,00 0,00 0,00 464,58

36,00 465,12 384,62 540,32

37,00 434,78 416,67 380,00

38,00 0,00 0,00 808,33