You are on page 1of 47

ALGORITMO PARA CONTEO VEHICULAR EN TIEMPO REAL

CON BASE EN FRANJAS DE INTERES

MARIO ALEJANDRO PRIETO VALDÉS

PONTIFICIA UNIVERSIDAD JAVERIANA


FACULTAD DE INGENIERÍA
DEPARTAMENTO DE ELECTRÓNICA
BOGOTA, MAYO DE 2010
ALGORITMO PARA CONTEO VEHICULAR EN TIEMPO REAL
CON BASE EN FRANJAS DE INTERES

MARIO ALEJANDRO PRIETO VALDÉS

TRABAJO DE GRADO PARA OPTAR AL TÍTULO DE INGENIERO


ELECTRÓNICO

DIRECTOR
ING. PEDRO RAÚL VIZCAYA GUARÍN Ph.D

PONTIFICIA UNIVERSIDAD JAVERIANA


FACULTAD DE INGENIERÍA
DEPARTAMENTO DE ELECTRÓNICA
BOGOTÁ, MAYO DE 2010
PONTIFICIA UNIVERSIDAD JAVERIANA

Artículo 13 de la Resolución No. 13 de Junio de de 1964

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


alumnos en sus proyectos de grado.

Sólo velará porque no se publique nada contrario al dogma y a la moral católica


y porque los trabajos no contengan ataque o polémicas puramente personales.
Antes bien que se vea en, ellos el anhelo de buscar la verdad y la justicia”
PONTIFICIA UNIVERSIDAD JAVERIANA

DIRECTOR MAGNÍFICO: PADRE JOAQUÍN EMILIO SANCHEZ G. S.J

DECANO ACADÉMICO: ING. FRANCISCO JAVIER REBOLLEDO M.

DECANO DEL MEDIO UNIVERSITARIO: PADRE SERGIO BERNAL S.J.

DIRECTOR DE CARRERA: ING. JUAN MANUEL CRUZ BOHÓRQUEZ

DIRECTOR DEL PROYECTO: ING. PEDRO RAÚL VIZCAYA GUARÍN


AGRADECIMIENTOS

El autor expresa sus sinceros agradecimientos a:

ING. PEDRO RAÚL VIZCAYA GUARÍN, profesor de la Pontificia Universidad Javeriana de


Bogotá no sólo por aceptar dirigir guiar y supervisar este proyecto, sino por su invaluable apoyo
durante mi formación profesional.
TABLA DE CONTENIDO

pág.

1. INTRODUCCIÓN 1

2. MARCO TEÓRICO 3
2.1. MARCO DE REFERENCIA 3
2.1.1. Flujo Vehicular. 3
2.1.1.1. Clasificación de modelos de Flujo Vehicular. 3
2.1.2. Variables Flujo Vehicular. 4
2.1.2.1. Tasa de flujo (q). 4
2.1.2.2. Velocidad (v). 4
2.1.2.3. La densidad o concentración (k). 4
2.2. VISIÓN ARTIFICIAL 4
2.2.1. Procesamiento Digital de Imágenes. 4
2.2.1.1. Filtrado espacial. 4
2.2.1.2. Operaciones Morfológicas. 5
2.2.1.2.1. Dilatación y Erosión. 5

3. DESCRIPCIÓN GENERAL DEL PROCESO 6


3.1. ESPECIFICACIONES 6
3.1.1. Requisitos del sistema. 6
3.1.2. Técnicas de procesamiento de imágenes. 6
3.2. HERRAMIENTAS UTILIZADAS PARA EL DESARROLLO 6
3.3. ENTRADAS Y SALIDAS DEL SISTEMA 7
3.3.1. Entradas al sistema. 7
3.3.2. Salidas del sistema. 7
3.4. DIAGRAMA EN BLOQUES DEL SISTEMA 8

4. DESCRIPCIÓN DETALLADA DEL SISTEMA 9


4.1. CAPTURA DE VIDEO 9
4.2. SELECCIÓN DE FRANJAS DE INTERÉS Y LÍNEA DE CONTEO 9
4.3. DETECCIÓN DE FRENTE Y FONDO 10
4.4. SEGMENTACIÓN 12
4.4.1. Umbralización. 12
4.4.2. Cerramiento 13
4.5. MANIPULACIÓN FRANJAS DE INTERÉS 13
4.6. DETECCIÓN DE REGIONES 14
4.7. CONTEO 15
4.7.1. Umbrales de Área, Ancho y Largo. 15

i
pág.

4.8. FLUJO ÓPTICO 15


4.8.1. Cálculo del Centro 15
4.8.2. Algoritmo de Lukas y Kanade 16
4.9. MEDICIONES DE TRÁFICO VEHICULAR 21
4.9.1. Flujo vehicular. 21
4.9.2. Velocidad. 21
4.9.3. Densidad vehicular. 22
4.10. EVALUACIÓN Y SELECCIÓN DE VIDEOS 22

5. ANÁLISIS DE RESULTADOS 24
5.1. TIEMPO REAL 24
5.2. CONTEO 24
5.3. CÁLCULO DE ERROR EN CONTEO 26
5.3.1. Falsos Positivos y Falsos Negativos. 28
5.3.2. Comparación resultados del trabajo de grado, con resultados de desarrollos anteriores. 31
5.3.3. Limitaciones del algoritmo. 32

6. CONCLUSIONES 33

7. BIBLIOGRAFÍA 35

LISTA DE FIGURAS iii

LISTA DE TABLAS v

LISTA DE ANEXOS vi

ii
LISTA DE FIGURAS

pág.

Figura 1 Operación morfológica de un elemento estructurante S[u,v] sobre


un área de la imagen F[x,y] para obtener una imagen G[x,y].. 5
Figura 2.Diagrama general en bloques del desarrollo del algoritmo para conteo
vehicular en tiempo real 8
Figura 3. 1. Consola de arranque del sistema, 2. Video de entrada
3. GUI para selección de franjas de interés y línea de conteo 10
Figura 4. Diagrama Franjas de interés y línea de conteo 10
Figura 5 Diagrama en bloques. Extracción de Frente y Fondo 11
Figura 6. 1. Entrada 2. Fondo, 3. Frente a color 4. Frente en escala de grises 11
Figura 7. Detalle de la franja de interés 1. Entrada 2. Fondo,
3. Frente a color 4. Frente en escala de grises 12
Figura 8. Umbralización Franjas de interés 1. Frente en escala de grises 2. Imagen Binaria 13
Figura 9. Imagen generada a partir de la manipulación de franjas de interés 13
Figura 10. Detección de regiones 14
Figura 11. Imágenes de entrada y salida Lukas-Kanade 16
Figura 12. Descripción del flujo óptico 16
Figura 13. Suposiciones fundamentales del flujo óptico 17
Figura 14. Apertura 18
Figura 15. L-K utilizando piramides 19
Figura 16. L-K utilizado en el algoritmo 20
Figura 17. Conteo Manual y Automático por video 27
Figura 18. Porcentaje de error por video 27
Figura 19. Imagen video 2, Fuentes de falsos positivos 28
Figura 20. Porcentaje Falsos positivos Vs. Falsos negativos 29

iii
Figura 21. Porcentaje de Falsos positivos Vs. Falsos negativos con región
de valor estándar < 2< σ 30
Figura 22. Errores de conteo trabajo “Conteo Automático de vehículos” 31

iv
LISTA DE TABLAS

pág.

Tabla 1. Características de los videos evaluados 22


Tabla 2. Tiempo de ejecución del algoritmo 24
Tabla 3. Relación de Conteos –Manual, Automático, Falsos Positivos y Negativos
por Video 26
Tabla 4. Falsos positivos, Falsos Negativos 28

v
LISTA DE ANEXOS

Anexo 1. CD Método de OTSU.

CD Código Fuente y Ejecutable del Algoritmo para conteo vehicular basado en


franjas de interés.

vi
1. INTRODUCCIÓN

La Visión Artificial cada vez adquiere más importancia por sus múltiples aplicaciones a nivel
industrial, científico, médico, de seguridad, control de calidad, automatización de procesos
obtención, reconocimiento y clasificación de objetos por su tamaño, reconocimiento de rostros,
huellas dactilares, entre muchos otros.

Los sistemas de visión artificial utilizan de manera conjunta un amplio número de técnicas
diferentes y complementarias, tales como el análisis y procesamiento de imágenes, seguimiento
de múltiples objetos deformables, reconocimiento de patrones, etc.1, nos permite transformar la
imagen visual de un objeto en un conjunto de datos digitalizados que pueden ser procesados; la
extracción de información de secuencias de imágenes es clave en muchos sistemas de visión
artificial para la solución de problemas como la obtención de datos que nos permiten calcular
desplazamiento y velocidad de objetos, la modelización tridimensional del entorno, la
restauración de imágenes, etc.2 Es así como el seguimiento y caracterización dinámica de
objetos en movimiento permite la utilización de la visión artificial en aplicaciones como el
control de tráfico vehicular, pues, nos permite estimar la densidad vehicular el volumen de
tráfico y la velocidad que son los tres parámetros principales que describen el flujo vehicular.

El conteo vehicular es uno de los aspectos que componen un sistema de gestión de tráfico pero
es un elemento importante en los procesos de planeación y diseño de la construcción,
ampliación y modernización de la infraestructura. Este proyecto presenta un sistema automático
de conteo vehicular en tiempo real utilizando franjas de interés, y pretende cumplir con los
siguientes objetivos

- Diseño, desarrollo y optimización de un algoritmo para determinar automáticamente en un


segmento de vía, el tráfico vehicular en tiempo real, con base en video y analizando regiones
de interés.
- Aplicar técnicas de procesamiento de imágenes, para separación del fondo y el frente.
- Analizar regiones de interés específicas para reducir los tiempos de procesamiento.
- Estimar velocidad de los vehículos y realizar seguimiento de su trayectoria.
- Determinar parámetros tales como densidad y volumen de tráfico.

Para su implementación se aplicaron técnicas de procesamiento de imágenes a los videos, como


el uso de filtros de suavizado de imagen y operaciones morfológicas, el sistema se desarrolló en
su totalidad en OPENCV.

1
Sistemas de visión artificial en tareas de video-vigilancia del tráfico grupo de Investigación Gavab-Capo,
de la Universidad Rey Juan Carlos (URJC) consultado marzo de 20010
En.: http://www.madrimasd.org/informacionidi/noticias/noticia.asp?id=42633.
2
ZULOAGA, Izaguirre Aitzol. Visión Artificial Dinámica Determinación de Movimiento a Partir de
Secuencias de Imágenes Doctorado en Tecnologías de la Información Bilbao, septiembre 98,
consultado abril de 2010.En.: http://reocities.com/capecanaveral/8482/docu003.pdf.

1
Recientemente en la Pontificia Universidad Javeriana se están desarrollando diversos trabajos
en el área de visión artificial, enmarcados en diferentes disciplinas como la medicina, la
seguridad, el tráfico, la Bioingeniería y la robótica. En el área de seguridad se destacan trabajos
como el de “Detección e identificación de rostros empleando SVM y color”3 e identificación de
huellas dactilares, como es “Detección de Detalles en Huellas Dactilares Usando Redes
Neuronales”4, el grupo BASPI viene desarrollando trabajos en las, áreas Análisis de señales
electroencefalográficas basado en un modelo dinámico del cerebro, Aprendizaje de máquinas,
estadístico, Audio, Presiones plantares, Prótesis y órtesis combinado con análisis de imágenes
2D-3D, Síntesis de voz en el idioma español, Tecnologías de apoyo a discapacitados,
Verificación de identidad empleando biomedidas, Voz.

El grupo SIRP (Sistemas Inteligentes, Robótica y Percepción), desarrolló el proyecto Úrsula, un


robot capaz de identificar minas anti-persona en terrenos de alto riesgo. Actualmente se trabaja
en Amaranta una versión mejorada de Úrsula el cual pretende reducir el tamaño del robot y
adaptarse a territorios altamente accidentados. En el área médica, se ha venido trabajando
continuamente en el área de procesamiento de señales de origen biológico.

En cuanto de tráfico vehicular terrestre se ha trabajado la Visión Artificial en el área de conteo


automático vehicular “Conteo Automático de Vehículos”5, identificación de placas de vehículos
“Sistema de reconocimiento y lectura de placas de vehículos en movimiento”6, también se han
realizado trabajos en el área de conteo de personas. Los anteriores desarrollos se han enfocado
en algoritmos robustos que buscan la mayor precisión tanto en los procesos de detección de
fondo, como en el de identificación y conteo de objetos, este trabajo aborda el tema del conteo
de vehículos procesando únicamente franjas de interés, permitiendo optimizar el desempeño del
algoritmo para ejecutarlo en tiempo real.

3
DUARTE, M., HIDALGO, M., PINILLA, O.. Detección e identificación de rostros utilizando SVM y
color., Memorias STSIVA 2008.
4
HERRERA, S Fabian, URIBE, K. Leonardo Detección de detalles en huellas dactilares usando redes
neuronales, 2005.
5
CALDERON, B Francisco, URREGO, N. Germán, Conteo automático de vehículos. Trabajo de grado.
Pontificia universidad javeriana, Noviembre de 2008.
6
MAHECHA, N. Viviane, QUIROGA, Sepúlveda Julián. Sistema de reconocimiento y lectura de placas
de vehículos en movimiento, Memorias STSIVA 2008.

2
2. MARCO TEÓRICO

2.1. MARCO DE REFERENCIA

2.1.1. Flujo Vehicular. La teoría de flujo del tránsito se basa en el desarrollo de las
relaciones matemáticas entre los elementos primarios del flujo vehicular tales como flujo,
densidad y velocidad. Mediante el análisis del flujo vehicular se pueden entender las
características y el comportamiento del tránsito y se describe la forma como circulan los
vehículos en cualquier sistema vial.7

Los estudios sobre el flujo vehicular tienen sus comienzos en la década de los 30 con la
aplicación de la probabilidad para la descripción de éste, Greenshield realizó estudios
modelando el comportamiento de una línea de tráfico, proponiendo una relación lineal entre
velocidad y densidad después de la segunda guerra mundial con el aumento en el número de
vehículos surgen modelos como Car-Following, teoría de ondas de tráfico y teoría de colas para
la descripción del flujo vehicular. Se desarrollan trabajos muy importantes como los de
Reuschel (1950) Wardrop (1952), Pipes (1953), Lighthill y Whitman (1955), Newell (1955),
Richards (1956), Webster (1957), Eddie y Foote (1958). 8

En 1992 los científicos Kai Nagel y Michael Schreckenberg crearon un modelo de flujo de
tránsito vehicular con un autómata celular, donde cada célula del autómata equivale ya sea a un
vehículo en movimiento con cierta velocidad o a un espacio vacío de la avenida donde se
encuentran los vehículos. Algunos de estos modelos fueron desarrollados pensando en la
realización de las simulaciones a través de computadoras, el proyecto AISUM es un software
comercial para la simulación de tráfico y utiliza como modelo para sus simulaciones al “modelo
de Gipps de vehículo siguiente” (Peter Gipps) publicado en 1981.

2.1.1.1. Clasificación de modelos de Flujo Vehicular. Debido al la gran variedad de modelos


de tráfico vehicular existentes se establecieron algunos criterios para clasificarlos.9

- Escala de las variables independientes (continuo discreto o semi-discreto)


- Nivel de detalle (microscópico mesoscópico y macroscópico)
- Representación de los procesos (determinístico, estocástico)
- Funcionamiento (analítica o simulación)
- Escala de aplicación

7
CAL, Rafael, CÁRDENAS, Grisales James. Ingeniería de tránsito fundamentos y aplicaciones 7ª edición
editorial Alfa omega.
8
GARBER, Nicholas J./HOEL, Lester A. Ingeniería de Tránsito y Carreteras 3ª.Ed. México,2002 p.1999.
9
SERGE P,. Hoogendoorn and Piet H.L] State-of-the-art of Vehicular Traffic Flow Modeling,. Bov,
Special Issue on Road Traffic Modeling and Control of the Journal of Systems and Control
Engineering. En.: http://perseo.cs.buap.mx/bellatrix/tesis/TES1116.pdf p. 7.

3
En general todos los modelos deben ser regidos por las mismas variables fundamentales
velocidad, densidad y flujo, y por relaciones o ecuaciones entre dichas variables, similares en su
forma.10

2.1.2. Variables Flujo Vehicular.11

2.1.2.1. Tasa de flujo (q). Se define el flujo como la frecuencia o número de vehículos que
pasa por un punto o sección transversal dada, de un carril o una calzada, durante un periodo
determinado, se expresa como:  = n/t

Donde:

- q = Número de vehículos que pasan por unidad de tiempo (vehículos por periodo)
- n = Número total de vehículos que pasan (vehículos)
- t = periodo determinado (unidad de tiempo)

2.1.2.2. Velocidad (v). La velocidad del tráfico es la distancia recorrida por un vehículo
durante una unidad de tiempo regularmente se expresa en kilómetros por hora (km/h).

2.1.2.3. La densidad o concentración (k).


Es el número de vehículos que ocupa una longitud específica (d), de un sector de la vía en un
momento dado k = n /d

Estas tres variables están relacionadas mediante la ecuación fundamental del flujo vehicular

 vehículos/tiempo =  

2.2. VISIÓN ARTIFICIAL

“La visión por computador es la transformación de datos de una imagen o una video-cámara en
una decisión o una nueva representación. Todas estas transformaciones se realizan para lograr
un objetivo particular.”12

2.2.1. Procesamiento Digital de Imágenes. Proceso mediante el cual se toma una


imagen y se produce una versión modificada de ésta, y se optimiza con un conjunto de
procedimientos para que sea más fácil de interpretar por el sistema que la va a utilizar.

2.2.1.1. Filtrado espacial. Transformaciones de la imagen pixel a pixel que no dependen


solamente del nivel de gris de un determinado pixel sino también del valor de los niveles de gris
de los pixeles vecinos en la imagen original.

10
GONZÁLEZ, Juan Manuel et al. ¿Cómo mejorar el flujo vehicular por medio de la simulación?.
Saltillo Coahuila, México Escuela Nacional de Optimización y Análisis Numérico, 2003. p 2.
11
CAL, M. Rafael, CÁRDENAS, Grisales James Op. Cit.
12
.BRADSKY, Gary, KAEHLER, Adrián. Learning OpenCv. p.2.

4
2.2.1.2. Operaciones Morfológicas. Como lo expresa Zoluaga.13 Las operaciones
morfológicas a imágenes se definen como procedimientos en los cuales cada nuevo pixel de la
imagen resultante es obtenido de una operación no lineal entre un conjunto de puntos de la
imagen original F [x, y ] y un conjunto de puntos conocido con el nombre de elemento
estructurante S [x, y ] . Este elemento estructurante recorre toda la imagen para obtener todos los
puntos de la nueva imagen, sin cambiar el tamaño de la imagen de salida. (ver figura 1).

Figura 1 Operación morfológica de un elemento estructurante S[u,v] sobre un área de la imagen F[x,y] para obtener
una imagen G[x,y]. tomada de 14.

Dependiendo de los elementos estructurantes y de las operaciones utilizadas, los filtros


morfológicos, pueden detectar bordes en las imágenes, filtrar objetos de tamaños menores a uno
determinado, suavizar fondos de texturizados, detectar fallos en patrones de textura, etc.

2.2.1.2.1. Dilatación y Erosión. Las operaciones morfológicas binarias de dilatación y


erosión para imágenes binarias consiste en tomar el elemento estructurante (uno de cuyos
puntos se considera el origen) y superponerlo a la imagen.

Si en el proceso de erosión el elemento estructurante está completamente contenido en la


imagen, el punto de ésta se mantiene, de lo contrario pasa a ser del color del fondo. La erosión
se aplica para reducir salientes de objetos, eliminar partes de tamaño menor que el elemento
estructurante, eliminar conexiones insignificantes entre objetos mayores.

En el proceso de dilatación si parte del elemento estructurante es igual al contenido de la


imagen, el punto de la imagen pasa a ser igual al punto origen del elemento estructurante, de
otra forma pasa a ser del color del fondo. La dilatación se aplica para rellenar entrantes de
objetos y unir pequeñas separaciones en las imágenes.

13
Zoluaga Op. Cit En http://reocities.com/capecanaveral/8482/docu003.pdf.
14
Ibid.

5
3. DESCRIPCIÓN GENERAL DEL PROCESO

El algoritmo propuesto realiza conteo vehicular en tiempo real, esta ventaja se consigue
procesando únicamente unas franjas de interés; adicionalmente se calcula la velocidad y
densidad de tráfico.

3.1. ESPECIFICACIONES

Las principales características son:

- No requiere de hardware de alta tecnología


- Aplicación de técnicas de procesamiento de imágenes para la separación de frente y fondo
- Procesamiento del conteo vehicular en tiempo real
- Cálculo de volumen de tráfico y seguimiento de la trayectoria de un vehículo

3.1.1. Requisitos del sistema.

- Cámara de video
- Compilador C++ (Software libre)
- Windows XP
- Codecs de Video (Software libre)
- Librería de OpenCV (Software libre)

3.1.2. Técnicas de procesamiento de imágenes. Las técnicas de procesamiento de


imágenes empleadas implementadas son:

- Filtro con memoria de primer orden para la Detección de Frente y Fondo


- Resta de imágenes.
- Método de OTSU para la segmentación de la imagen
- Operación Morfológica de cerramiento para mejorar la conectividad del objeto
- Análisis de conectividad para encontrar y etiquetar los objetos
- Flujo Óptico para determinar la trayectoria de un objeto

3.2. HERRAMIENTAS UTILIZADAS PARA EL DESARROLLO

El algoritmo de conteo, es una aplicación desarrollada en C++, utilizando la biblioteca para


visión artificial de código libre, OpenCV.

6
3.3. ENTRADAS Y SALIDAS DEL SISTEMA

3.3.1. Entradas al sistema.

- Archivos de video tipo AVI almacenados en disco


- Región de interés, dependiendo de la selección del usuario al momento de iniciar el proceso.

3.3.2. Salidas del sistema.

- Número de vehículos, que el sistema ha reconocido y contado exitosamente.


- Tasa de flujo vehicular

7
3.4. DIAGRAMA EN BLOQUES DEL SISTEMA

CAPTURA Y SELECCIÓN DE
REGIONES DE ÍNTERES

FILTRO CON MEMORIA


DETECCIÓN DE FRENTE DE PRIMER ORDEN
Y DE FONDO

UMBRALIZACIÓN
CRITERIO OTSU
SEGMENTACIÓN Y CERRAMIENTO

MANIPULACIÓN DE FRANJAS GENERAR IMÁGEN


GLOBAL A PARTIR DE
DE ÍNTERES FRANJAS DE ÍNTERES

DETECCIÓN DE BLOBS

CONTEO FLUJO
ÓPTICO

FILTRO POR
AREA, LONGITUD Y
ANCHO

Figura 2. Diagrama general en bloques del desarrollo del algoritmo para conteo vehicular en tiempo real

8
4. DESCRIPCIÓN DETALLADA DEL SISTEMA

4.1. CAPTURA DE VIDEO

Las condiciones que deben cumplir los videos a procesar en el algoritmo son:

- De luminosidad. Se deben tomar con luz día, ya que al anochecer hay pérdida de color y no
se pueden identificar los objetos.
- De ángulo de la cámara. La cámara debe colocarse perpendicular a la vía para que no se
presente solapamiento de vehículos.
- Nitidez. Ésta debe ser suficiente para identificar los contornos de los vehículos.
- Resolución. 480 x 620 pixeles, a pesar de que no se requiere detalles de los vehículos,
simplemente detectar su presencia.

Los videos trabajados en este proyecto se tomaron del Banco de videos del Proyecto SIRP de la
Pontificia Universidad Javeriana. .

4.2. SELECCIÓN DE FRANJAS DE INTERÉS Y LÍNEA DE CONTEO

En este modulo se le permite al usuario que iniciará el sistema crear las franjas de interés y línea
de conteo, como el algoritmo se procesa más eficientemente si el flujo vehicular es horizontal,
el usuario debe ingresar la dirección del flujo y en caso de ser vertical se utiliza una matriz de
transformación sobre la imagen para obtener su representación horizontal. Esta configuración
puede guardarse en un archivo de texto, para posteriores comparaciones.

El sistema procesará únicamente las franjas escogidas, evitando procesamiento innecesario


sobre toda la imagen. (ver figura 3).

Las franjas deben definirse sobre la región del video donde se necesite considerar el flujo
vehicular; el algoritmo automáticamente las calibra garantizando que:

y1 = y3
y2 = y4
x2 − x1 = x4 − x3

Donde las variables anteriores están definidas en la Figura 4.

9
1 2

Figura 3. 1. Consola de arranque del sistema, 2. Video de entrada


3. GUI para selección de franjas de interés y línea de conteo

y1

f1 f2
y2

x1 x2 x3 x4
Figura 4. Diagrama Franjas de interés y línea de conteo

4.3. DETECCIÓN DE FRENTE Y FONDO

En este modulo se desarrolló un filtro con memoria de primer orden, regido por un parámetro
α , que determina que tanto peso tiene la imagen de entrada con respecto a la imagen
acumulada del fondo, y se obtiene la imagen del frente en escala de grises (ver figuras 5, 6 y 7);
el comportamiento de el filtro esta dado por la siguiente ecuación

10
Y ( z ) = α . X ( z ) + Y ( z ).(1 − α ).z −1

Y (z) α
=
X ( z ) 1 − (1 − α ).z −1

para 0 < α < 1

donde:

X = Imagen de entrada Y = Imagen de salida


α = Memoria del filtro z = Retardo unitario

FONDO
VIDEO α +

(1-α).Z-1
- IMAGEN
+ UMBRAL BINARIA
OTSU FRENTE

Figura 5. Diagrama en bloques. Extracción de Frente y Fondo

1 2

3 4

Figura 6. 1. Entrada 2. Fondo, 3. Frente a color 4. Frente en escala de grises

11
1 2

3 4
Figura 7. Detalle de la franja de interés 1. Entrada 2. Fondo,
3. Frente a color 4. Frente en escala de grises

La conversión de la imagen de frente en modelo de color RGB figura. 7-3 a escala de grises
figura. 7-4 se realiza con la siguiente fórmula y el propósito es poder realizar la segmentación.

Nivel de gris = 0.299.R +0.587.G + 0.114.B

4.4. SEGMENTACIÓN

En este modulo se desarrolló la umbralización y posteriormente se aplicó la operación


morfológica de cerradura para mejorar la conectividad de los objetos presentes en la imagen.

4.4.1. Umbralización. Se requiere obtener una imagen binaria, que muestre los objetos
presentes en la franja de interés. La binarización se realiza únicamente sobre la imagen de frente
generada (ver figura 7.3, 7-4). Como la escena es cambiante en términos de iluminación y color
de los objetos (vehículos) con respecto al fondo, no es factible utilizar un valor fijo de umbral.
Un método robusto y ligero computacionalmente, es el método de OTSU, (ver anexo 2)
.Método de OTSU)) .éste asume que las imágenes están constituidas por dos clases de píxeles,
píxeles de frente y píxeles de fondo, después, elige el umbral óptimo que maximice la varianza
intra-clase, es decir el punto mínimo entre dos clases.

12
1 1 2
Figura 8. Umbralización Franja de interés
1.. Frente en escala de grises 2. Imagen Binaria

4.4.2. Cerramiento. Se aplicó la operación morfológica de cerramiento con el fin de mejorar


la conectividad de los objetos en la imagen binaria. Para este propósito se utilizó un elemento
estructurante cuadrado de tamaño 5X5 y se itero 5 veces el procedimiento.

4.5. MANIPULACIÓN FRANJAS DE INTERÉS

A partir de la imagen binaria del frente obtenida en el proceso de umbralización, (figura 8-2) se
genera una imagen completa por cada una de las franjas de interés, para ello se colocan las
franjas una detrás de la otra al inicio de la imagen a medida que van siendo procesadas. (ver
figura 9)

Figura 9. Imagen generada a partir de la manipulación de franjas de interés

13
En la figura 9 se aprecia el proceso de formación de la imagen, se observa como se coloca una
franja detrás de la otra hasta obtener la imagen completa. Se obtiene una imagen por franja, que
representa el tránsito vehicular y a partir de ésta se realiza el conteo y el cálculo de los
parámetros de tráfico.

4.6. DETECCIÓN DE REGIONES

En este modulo se desarrolló un procedimiento para detectar los objetos en la imagen binaria
(figura. 10), basado en el planteamiento de marcado de componentes conexos desarrollado por
Matlab.

La creación de regiones se realiza únicamente sobre la franja de interés, para cada región nueva
se determina si esta es adyacente a alguna de las regiones existentes, de suceder este evento, la
región existente crece y actualiza sus límites con respecto a los de la región nueva y la región
nueva se borra, de lo contrario esta permanece. Las regiones existentes en la imagen se mueven
horizontalmente una distancia igual al ancho de la región y se itera sobre el procedimiento. Con
este algoritmo determinamos la conectividad de todos los objetos presentes en la secuencia de
imágenes, reduciendo drásticamente la cantidad de operaciones por trama.

Si se aplicara sobre la imagen completa se realizarían x * y operaciones donde x y y son la


longitud y el ancho de la imagen respectivamente, para un video típico de 640 × 480 se deben
realizar al menos 307200 iteraciones mientras que utilizando una franja de interés típica de 10
píxeles se tiene que el número de iteraciones es aproximadamente 480 × 10 = 4800 , además de
que se reducen las operaciones intermedias. Logrando reducir el tiempo de procesamiento y

Figura 10. Detección de regiones

14
4.7. CONTEO

Observamos que las regiones detectadas continúan moviéndose a la derecha a medida que la
región se actualiza, cuando el final de la región pasa por la línea de conteo se incrementa el
contador de vehículos si la región identificad cumple con los requisitos de área, ancho y largo.

4.7.1. Umbrales de Área, Ancho y Largo. Para calcular los umbrales de área, longitud
y ancho se desarrollo un filtro de primer orden con memoria, basado en el mismo concepto
utilizado para el cálculo de fondo.

M Pr om = (α )(M Pr om / Total de frames) + (1 − α )(M Nueva )

Donde:

M = umbral de la magnitud: Área, Ancho, o Largo

Las regiones que no cumplen con el umbral de área, longitud y ancho, se ignoran.

4.8. FLUJO ÓPTICO

4.8.1. Cálculo del Centro Para obtener la trayectoria de los objetos se calculó el centro
de cada una de las regiones identificadas.

Cálculo aproximado del centro de una región

 X + X min YMax + Ymin 


c( x, y) =  Max , ,
 2 2 

Donde c ( x, y ) es el centro de la región detectada y X y Y son las coordenadas de los puntos que
conforman la región, máximos y mínimos respectivamente.

15
4.8.2. Algoritmo de Lukas y Kanade Los algoritmos de flujo óptico buscan solucionar
el problema de encontrar el movimiento de los píxeles entre 2 imágenes. Por lo tanto el
problema consiste en encontrar una correspondencia entre los píxeles de la primera imagen con
los de la segunda.

Figura 11. Imágenes de entrada y salida Lukas-Kanade


Tomado de www.cs.ucf.edu/courses/cap6411/cap5415/spring03/lecture19.ppt

Para solucionar el problema de correspondencia de los píxeles. Dado un píxel en H se busca un


píxel cercano en I que tenga el mismo color que el píxel seleccionado en H.

Figura 12. Descripción del flujo óptico,


Tomado de BRADSKY, Gary, KAEHLER, Adrián. Learning OpenCv.

16
Para realizar estos cálculos se deben tomar en cuenta 3 suposiciones fundamentales:

Figura 13. Suposiciones fundamentales del flujo óptico

1. Constancia del color, para imágenes en escala de grises es constancia del brillo.

f (x, t)≡I(x(t), t)=I(x(t+dt), t+ dt)

2. Movimientos pequeños

∂I ∂I ∂I
Ix = I, Iy = , It =
∂x t ∂y t ∂y x (t )

I xu + I y v + I t = 0
,

Para esta ecuación existen 2 incognitas para cada píxel, por lo tanto no se puede utilizar
para obtener una solución única para el movimiento bidimensional en un punto

3. Coherencia espacial, los puntos vecinos pertenezcan a la misma superficie y se


proyectan a puntos cercanos en el plano de la imagen.

17
Podemos observar el problema de apertura en el siguiente gráfico, que se presenta cuando la
ventana sobre la cual se presenta el algoritmo es muy pequeña.

Figura 14. Apertura

El algoritmo detecta un movimiento de izquierda a derecha(fila superior), pero no tiene


conocimiento acerca del movimiento de arriba hacia abajo que verdaderamente esta teniendo el
objeto(fila inferior).

Si una malla local de píxeles se mueve coherentemente, entonces fácilmente se resuelve la


ecuación de movimiento para el píxel central utilizando los píxeles circundantes para generar
un sistema de ecuaciones.

Sistema de ecuaciones para un parche de 5 X 5

A partir de este sistema se puede realizar una minimización por mínimos cuadrados

18
La solución a esta ecuación es:

Esta ecuación se puede resolver cuando (ATA) es invertible, es decir tiene rango completo.

Figura 15. L-K utilizando piramides

En OpenCV encontramos una implementación del algoritmo de lukas y Kanade en forma


piramidal utilizando la función cvCalcOpticalFlowPyrLK(). Esta implementación piramidal
mitiga los problemas causados por romper la suposición de movimiento pequeño y coherente;
la estimación de movimiento del nivel anterior se toma como punto de partida para la
estimación de movimiento de la capa de abajo.

Este algoritmo nos pide una imagen de entrada, una imagen de salida, 2 imágenes que se
utilizan como buffer para alojar la imagen de las pirámide, un conjunto de puntos donde se
encuentra el movimiento en la imagen de entrada, un contador de la cantidad de puntos donde
se encuentra movimiento, la ventana sobre la cual se va a calcular el movimiento coherente, un
criterio de terminación que le dice al algoritmo cuando terminar bien sea después de
determinado número de iteraciones o cuando el criterio de convergencia llegue a cierto valor.

En el algoritmo planteado para encontrar la relación entre los objetos presentes en la primera
franja y los objetos presentes en la segunda, se planteó un algoritmo de flujo óptico que
relacionará los centros de cada uno de los objetos identificados en la imagen respetando las 3
suposiciones anteriormente planteadas.

19
La primera imagen “Before 1”, es una imagen donde sobre un fondo blanco se dibujaron
círculos de 3 píxeles de radio que representan los centros de cada uno de los objetos presentes
en la imagen consolidada de la región 1 y se realiza la mismo para la segunda imagen “After
1”, con los puntos correspondientes a la franja 2, las posiciones de los puntos de entrada se
obtienen del arreglo de centros que se genera cuando se calcula la región.

3 4
Figura 16. L-K utilizado en el algoritmo

Imágenes de entrada para el algoritmo de flujo óptico, círculos verdes y rojos se utilizaron
únicamente con el propósito de señalar los centros de los objetos en las imágenes, no formaron
parte del procesamiento del algoritmo de flujo óptico.

20
4.9. MEDICIONES DE TRÁFICO VEHICULAR

4.9.1. Flujo vehicular.

n
q=
t
N= Número de vehículos obtenidos del conteo automático en un período de tiempo t.

f
t=
fps

Remplazando en
,

n × fps
q=
f

Donde: fps = Tramas/seg y se obtiene directamente del video


f = Tramas procesadas en el video.

4.9.2. Velocidad.
d
v=
t

Franjas
v=
t

En el manejo de franjas observamos que la imagen se traslada a una velocidad de una franja por
trama; utilizando flujo óptico obtenemos el desplazamiento de un objeto entre franjas, la
distancia entre las franjas es calculada por el algoritmo. La velocidad se calcula en términos de
Franjas / tiempo. Entonces:

d
t= ,
fps

dFr
v= ,
t

dFr × fps
v=
d

21
Donde
d= distancia encontrada por el algoritmo de flujo óptico.
dFr = distancia entre franjas

4.9.3. Densidad vehicular. Para hallar la densidad vehicular utilizamos la ecuación


fundamental del flujo.

q = k ×v

q
k=
v

4.10. EVALUACIÓN Y SELECCIÓN DE VIDEOS

Para evaluar los parámetros óptimos de entrada, como ángulo de toma de la cámara, calidad del
video y luminosidad se realizaron pruebas con los videos relacionados en la tabla 1.
(suministrados por el grupo SIRP de la Pontificia Universidad Javeriana), con diferentes
localizaciones y tamaños de las franjas de interés.

VIDEOS
Dirección Tiempo
Num Tipo Características
muestra
1 Vertical 3 min Entrenamiento Ángulo de toma 60º sobre la vía
2 Horizontal 5 min Entrenamiento Ángulo de toma 90º sobre la vía
3 Vertical 5 min Prueba Ángulo de toma 90º sobre la vía
4 Horizontal 3 min Entrenamiento Ángulo agudo de toma
Ángulo de toma 90º sobre la vía,
5 Vertical 4:30 min Entrenamiento intersección, sombras únicamente sobre
uno de los carriles.
Ángulo de toma 60º
6 Vertical 5 min Prueba
No se presenta oclusión de vehículos
Escena lluviosa, se observan sombras de
7 Vertical 5 min Entrenamiento los carros, Ángulo de toma 60º sobre la
vía, escena difuminada
8 Vertical 7 min Entrenamiento Ángulo de toma 60º sobre la vía
Movimiento de la cámara, Ángulo de
9 Vertical 7 min Descartado
toma 60º sobre la vía
10 Vertical 1:20 min Descartado Sobrelapamiento de vehículos
11 Vertical 3:00 min Descartado Sobrelapamiento de vehículos
12 Vertical 1:00 min Descartado Video recortado

Tabla 1. Características de los videos evaluados

22
Realizadas las pruebas, con la información obtenida de los videos, se clasificaron en tres
categorías de entrenamiento, de pruebas y descartados.

- Videos de prueba. Éstos cumplen las características óptimas para ejecución del algoritmo
Se utilizaron como referencia para obtener información (conteo, flujo vehicular).

- Videos de entrenamiento. Presentan características no óptimas, éstos se utilizaron para


realizar ajustes al algoritmo.

- Videos descartados. Realizadas las pruebas se obtuvo que los videos 9 10, 11, 12 no son
aptos para la ejecución del algoritmo por diferentes razones:

Los videos 10 y 11 presentan solapamiento de vehículos impidiendo seleccionar una región


de interés donde exista una separación clara entre los objetos; el video 12 muestra
únicamente un segmento de vía, impidiendo establecer límites claros sobre los cuales
realizar el conteo; el video 9 debido al movimiento de la cámara genera un elevado número
de falsos conteos.

23
5. ANÁLISIS DE RESULTADOS

Para evaluar el desempeño del modelo se realizaron pruebas orientadas a medir diferentes
aspectos del algoritmo, tiempo de ejecución, conteo y cálculo de parámetros de tráfico.

5.1. TIEMPO REAL

Se realizaron pruebas correspondientes al tiempo de ejecución del algoritmo obteniendo los


resultados que presentamos en la tabla 2..

Video Duración Video Tiempo Ejecución


1 3:10 3:00
2 9:54 8:32
3 8:31 4:32
4 3:37 0:56
5 4:34 2:15
6 8:20 4:17
7 10:00 5:17
8 10:00 5:42

Tabla 2. Tiempo de ejecución del algoritmo

Se evidencia que el algoritmo realiza el procesamiento en un tiempo menor al de la duración


del video, garantizando su ejecución en tiempo real.

El tiempo de procesamiento por trama, es directamente proporcional a la cantidad de objetos


presentes en la imagen, dado que para una mayor cantidad de objetos el algoritmo debe realizar
una mayor cantidad de comparaciones cuando ejecute el detector de regiones.

5.2. CONTEO

Se trabajó con el promedio del conteo manual de cada uno de los videos, registrando muestras
cada 30 segundos, empezando la toma de datos en el segundo 30, tiempo aproximado que utiliza
el algoritmo para estabilizar el filtro de fondo. Se ejecutó el sistema en modo depuración,
deteniendo la ejecución cada vez que éste realizaba un conteo, procedimiento con el cual se
clasificó fácilmente el conteo en tres grupos distintos:

- Verdaderos positivos. Conteo de un vehículo que existe.


- Falsos positivos no se contó un vehículo que existe.
- Falsos positivos se contó un vehículo que no existe.

24
Los resultados del conteo manual, automático, falsos positivos y falsos negativos se muestran en
la tabla 3.

RELACION DE CONTEOS -MANUAL - AUTOMATICO -


FALSOS POSITIVOS Y NEGATIVOS POR VIDEO
TIEMPO VIDEOS
CONTEO
Seg 1 2 3 4 5 6 7 8 9
Manual 37 2 24 4 20 25 25 22 19
Automático 42 3 23 4 23 26 25 21 15
30
Falsos Positivos 0 1 0 0 2 2 0 0
Falsos Negativos 5 0 1 0 5 1 2 1

Manual 92 13 48 11 27 42 45 39 20
Automático 85 14 47 11 24 45 45 38 16
60
Falsos Positivos 2 3 0 0 2 4 2 0
Falsos Negativos 9 1 1 0 5 1 4 1

Manual 138 37 54 32 49 56 60 69 26
Automático 128 39 51 32 43 58 58 63 20
90
Falsos Positivos 2 4 0 2 2 5 2 0
Falsos Negativos 13 2 3 2 8 3 4 3

Manual 190 47 63 45 72 75 82 87 38
Automático 176 51 60 47 66 77 81 84 33
120
Falsos Positivos 3 7 0 4 4 6 4 0
Falsos Negativos 17 3 3 2 10 4 5 3

Manual 237 48 86 53 86 94 110 114 72


Automático 220 53 82 60 82 101 107 108 59
150
Falsos Positivos 4 8 0 9 6 12 5 0
Falsos Negativos 21 3 4 2 10 5 8 6

Manual 59 107 62 96 116 128 132 79


Automático 67 101 72 96 117 127 124 70
180
Falsos Positivos 11 0 12 10 15 9 0
Falsos Negativos 3 6 2 10 5 10 8

Manual 73 123 122 134 140 158 90


Automático 84 116 126 133 139 149 76
210
Falsos Positivos 14 0 14 16 9 0
Falsos Negativos 3 6 10 9 10 9

Manual 85 132 139 147 162 170 106


Automático 97 126 143 144 163 160 95
240
Falsos Positivos 17 0 16 16 12 0
Falsos Negativos 5 6 11 10 11 10

Manual 85 150 164 196 197 109


Automático 97 144 165 186 181 103
270
Falsos Positivos 17 0 17 14 0
Falsos Negativos 5 6 10 24 16

25
RELACION DE CONTEOS -MANUAL - AUTOMATICO -
FALSOS POSITIVOS Y NEGATIVOS POR VIDEO
TIEMPO VIDEOS
CONTEO
Seg 1 2 3 4 5 6 7 8 9
Manual 93 168 180 239 220 113
Automático 108 161 181 232 204 110
300
Falsos Positivos 20 0 18 19 0
Falsos Negativos 5 8 10 26 16

Manual 106 203 261


Automático 122 204 255
330
Falsos Positivos 22 20 20
Falsos Negativos 6 12 26

Manual 110 213 284


Automático 127 217 281
360
Falsos Positivos 23 22 23
Falsos Negativos 6 14 26

Manual 110 304


Automático 127 304
390
Falsos Positivos 23 28
Falsos Negativos 6 28

Manual 324
Automático 324
420
Falsos Positivos 28
Falsos Negativos 28

Tabla 3. Relación de Conteos –Manual, Automático, Falsos Positivos y Negativos por Video

5.3. CÁLCULO DE ERROR EN CONTEO

Se tomó como total de la muestra el promedio obtenido del conteo manual, el porcentaje de
error por video se calculó utilizando la siguiente expresión

CM − C A
× 100%
CM

Donde CM = Conteo Manual


CA = Conteo Automático

En las figuras 12 y 13 se observan las diferencias de conteo total manual y automático para cada
video, y su correspondiente porcentaje de error.

26
CONTEO TOTAL POR VIDEO MANUAL Y AUTOMATICO

No. Video Manual Automático


1 237 220
2 110 127
3 168 161
4 62 72
5 139 143
6 213 217
7 324 324
8 220 204
9 113 110

Figura 17. Conteo Manual y Automático por Video

PORCENTAJE DE ERROR DE CONTEO EN LA TOTALIDAD DE LOS VIDEOS

Video Manual Automático % error


1 237 220 7,17
2 110 127 15,45
3 168 161 4,17
4 62 72 16,13
5 139 143 2,88
6 213 217 1,88
7 324 324 0,00
8 220 204 7,27
9 113 110 2,65

Figura 18. Porcentaje de Error por Video

Observando la gráfica detectamos que el porcentaje de error de conteo no depende de el flujo


vehicular, analizando el video 7 tiene el mayor tiempo de ejecución y el mayor flujo vehicular y
su porcentaje de error es de 0%; sin embargo el video 2 que tiene un flujo vehicular menor en
un tiempo aproximadamente igual al del video 7 obtuvo un porcentaje de error del 15,45%. La
tabla 3 nos ilustra los falsos positivos y negativos de los dos videos, mientras en el video 7 los
falsos positivos se anulan con los negativos, en el video 2 los falsos positivos son mayores que
los falsos negativos generando un error porcentual más alto, el error porcentual promedio de
toda la muestra es del 6%.

27
El video 2 se tomó con un ángulo de 90° sobre la vía, sin embargo presenta 2 condiciones que
generan falsos positivos, al estar cerca de un semáforo. Los peatones que recorren las franjas de
interés de manera transversal dan la apariencia de ser un vehículo; adicionalmente cuando un
vehículo se detiene estando sobre una franja, el algoritmo detecta como positivo la porción del
vehículo que pasó y lo vuelve a detectar, cuando el vehículo sale, generando un falso positivo.
(ver figura 14)

Figura 19. Imagen video 2, Fuentes de falsos positivos

5.3.1. Falsos Positivos y Falsos Negativos.

No. Tiempo % valor estándar


Conteo FP FN
Video minutos FP/CM FN/CM FP FN
1 2.5 237 4 21 1,69 8,86 -0,68 2,04
2 6.5 110 8 3 7,27 2,73 0,56 -0,67
3 6 168 0 4 0,00 2,38 -1,05 -0,82
4 3 62 9 2 14,52 3,23 2,16 -0,45
5 4 139 6 10 4,32 7,19 -0,10 1,30
6 6 213 15 5 7,04 2,35 0,51 -0,83
7 7 284 9 10 3,17 3,52 -0,35 -0,32
8 5 220 0 8 0,00 3,64 -1,05 -0,27

Tabla 4. Falsos positivos, Falsos Negativos

La tabla 4 muestra los lo porcentajes de falsos positivos Vs. los falsos negativos, los valores
estándar del conjunto de datos

28
FP = 4,75 FN = 4,24
σFP = 4,53 σFP = 4,53

Aplicando la fórmula de la estandarización podemos estimar a cuantas veces de la desviación


estándar con respecto a la media se encuentran ubicados los valores porcentuales de los Fp y los
Fn, para establecer algunas condiciones para procesar el algoritmo. (ver tabla 4)

x−x
Z=
σ

Figura 20. Porcentaje Falsos positivos Vs. Falsos negativos

Por medio del valor estándar podemos inferir la distribución probabilística del
porcentaje de fp y los fn como se muestra en la Figura 16.

29
Figura 21. Porcentaje de Falsos positivos Vs. Falsos negativos con región de valor estándar < 2< σ

Donde la elipse corresponde al conjunto de puntos que están a una distancia menor de 2 × σ de
la media, región que según la desigualdad de Chebyshev, alberga el 75 % de los datos de una
muestra probabilística.

Analizando la gráfica encontramos que a pesar de las diferentes características de los videos el
algoritmo los procesa correctamente.

Se determino que la zona óptima de trabajo del algoritmo se cumple en:

FP = FN → 0

Si los falsos positivos y falsos negativos son iguales se anulan minimizando el error de conteo,
sin embargo la situación ideal corresponde a FP = FN = 0 donde el error sería de 0%.

30
5.3.2. Comparación resultados del trabajo de grado, con resultados de desarrollos
anteriores

Los resultados del trabajo de grado son comparables a los resultados del trabajo desarrollado
por Francisco Carlos Calderon B. y German Enrique Urrego N. Conteo Automático de
Vehículos. En este trabajo de grado se planteó un sistema de conteo de vehículos procesando
sobre la imagen completa, utilizando un modelo gaussiano para procesar el fondo.

Nuestro trabajo analizó los resultados obtenidos, mediante verdaderos positivos, falsos
positivos y falsos negativos. Una comparación del conteo total entregado por el algoritmo vs el
conteo realizado manualmente, en ciertos casos puede mostrar resultados falsos acerca de la
calidad del algoritmo. Un algoritmo con 0% de error parece perfecto pero puede ser causado
por la cancelación de falsos positivos con falsos negativos.

El anterior trabajo presenta los resultados en términos del error total, por lo cual no podemos
realizar una comparación directa con los resultados obtenidos por nuestro algoritmo, ya que
nuestro cálculo de error esta discriminado en falsos positivos y falsos negativos. Para poder
realizar una comparación entre los modelos deberíamos contar con la curva característica, que
nos permitiera realizar una comparación directa bajo iguales condiciones de prueba.

El informe de resultados del trabajo citado “Conteo Automático de vehículos”, muestra lo


siguiente:

De esta gráfica podemos deducir que:


- Blobs desligados, separación incorrecta de MBR’s, errores aleatorios, son falsos
positivos.
- Vehículos con un mismo Blob, vehículo no detectado son falsos negativos

Figura 22. Errores de conteo trabajo “Conteo Automático de vehículos”

Por lo tanto tenemos que el 54 % de los errores detectados son errores debido a falsos positivos
y 46 % son errores debido a falsos negativos, pero dado que estos resultados son un
consolidado total de los errores en todos los videos no podemos sacar conclusiones
relacionadas al desempeño de los 2 modelos.

31
5.3.3. Limitaciones del algoritmo

El algoritmo se desarrolló buscando la optimización del tiempo de ejecución, por lo tanto se


buscó la simplificación de los procesos con el fin de obtener los mejores tiempos de
procesamiento.

El algoritmo procesa óptimamente los videos cuando el ángulo de la cámara es de 90º sobre la
vía, para ángulos menores se presentan oclusiones que producirán falsos negativos en la
ejecución por sobrelapamiento de objetos.

Cuando un vehículo se detiene estando sobre una franja, el algoritmo detecta como positivo la
porción del vehículo que pasó y lo vuelve a detectar, cuando el vehículo sale, generando un
falso positivo. El parámetro del fondo puede actualizarse en función de la velocidad calculada
por el algoritmo, con lo cual se obtiene una retro-alimentación directa de los datos obtenidos, y
mediante el cual se mitiga el efecto del conteo doble, cuando un vehículo se estaciona sobre
una franja de interés.

El modelo presenta inconvenientes con respecto a la distinción de las sombras de los objetos lo
cual se ve reflejado en falsos negativos ya que puede generar que vehículos distintos se
conecten entre sí. Es posible realizar un modelo que tenga en cuenta la información de color,
obteniendo mayor información de los objetos mediante la cual se podría eliminar la fuente de
error generada por las sombras mejorando así el proceso de detección de los objetos.

32
6. CONCLUSIONES

La aparición de unidades de procesamiento más potentes y a precios más bajos permite que se
desarrollen algoritmos, autónomos y robustos, con tiempos de procesamiento considerablemente
menores. A medida que los recursos tanto tecnológicos como de conocimiento para desarrollar
aplicaciones de visión artificial se han vuelto asequibles, a la comunidad académica, se presenta
una oportunidad de desarrollo y actualización en un ámbito de gran pujanza e innovación.
Abriéndose un panorama favorable para la implantación de nuevas tecnologías y la creación de
nuevas industrias en el país.

Un gran número de empresas a nivel mundial se ha dedicado a proveer soluciones integrales a


problemas de la industria utilizando como herramienta fundamental la visión artificial, ésto la
ha convertido en un área de gran desarrollo. Se han implementado ampliamente sistemas
enfocados al estudio y caracterización del tráfico.

El presente trabajo plantea un algoritmo que permite realizar conteo vehicular en tiempo real,
para su procesamiento se utiliza un computador con prestaciones comunes y se obtiene un alto
grado de desempeño. Se estableció que no era necesario realizar un procesamiento sobre toda la
imagen debido a la presencia de información redundante en ésta, el algoritmo obtiene la
información procesando únicamente sobre franjas de interés del video

Los objetivos planteados se cumplieron a cabalidad. El desarrollo se realizó sobre la plataforma


de software libre OpenCV, que provee una estructura para el manejo de imágenes y video, razón
por lo que la presente aplicación queda licenciada para su libre utilización y distribución.

De la plataforma de desarrollo de OpenCV, se utilizaron algunos de los algoritmos que están


implementados como el método de OTSU; sin embargo los requerimientos del sistema exigían
el desarrollo de rutinas más específicas; razón por la cual se implementaron funciones que
cumplieran las expectativas del proyecto, como el detector de blobs que se desarrolló
integrando diferentes teorías consultadas. Por lo tanto se destaca la importancia de la
fundamentación matemática y el conocimiento en el área de programación.

Este desarrollo sirve como base a otros proyectos que quieran expandir su funcionalidad, por
ejemplo la implementación del algoritmo sobre intersecciones o glorietas. La extracción de
información acerca del tamaño y espaciamiento de vehículos.

33
El tiempo de procesamiento se puede reducir aún más si se utilizan técnicas de programación
multi-hilo en donde se puede generar un hilo de procesamiento por cada región procesada y así
aprovechar al máximo las capacidades del procesador. El desarrollo requiere sincronizar las
diferentes variables utilizadas, para evitar problemas de concurrencia y paralelismo. No es un
problema simple debido a que C++ no provee un método de sincronización de variables de una
manera natural como otros lenguajes, como Java.

Se exploraron técnicas de seguimiento de trayectoria, para calcular la velocidad media del flujo
vehicular, logrando simplificar los parámetros de entrada y de procesamiento teniendo siempre
como meta la optimización del tiempo de ejecución del algoritmo con el fin de procesar en
tiempo real.

34
7. BIBLIOGRAFÍA

BRADSKY, Gary, KAEHLER, Adrián. Learning OpenCv.

CAL y MAYOR, Rafael, CÁRDENAS, Grisales James. Ingeniería de tránsito fundamentos y


aplicaciones 7ª edición editorial Alfa omega.

GARBER, Nicholas J./HOEL, Lester A. Ingeniería de Tránsito y Carreteras 3ª.Ed. México,


2002 p.1999.

GONZÁLEZ, Juan Manuel et al. ¿Cómo mejorar el flujo vehicular por medio de la
simulación?. Saltillo Coahuila, México Escuela Nacional de Optimización y Análisis
Numérico, 2003. p 2.

GONZALEZ, Rafael C., WOODS, Richard E., EDDINS, Steven L. Digital Image Using Matlab
Processing. Pearson. Prentice Hall. 2004.

INSTITUTO COLOMBIANO DE NORMAS TECNICAS Y CERTIFICACION ICONTEC:


Bogotá. Referencias bibliográficas para normas 2ª. Ed. Bogotá 1996 (NTC 1307).

Referencias documentales para fuentes de información electrónicas Bogotá: ICONTEC


(NTC 4490). 1998. 23p.

MERY, Domingo. Visión por Computador. Departamento de ciencia de la Computación


Universidad Católica de Chile. Santiago de Chile, 2004.

CHAO, Lincoln L. Estadística para las Ciencias Administrativas. McGRAW-HILL 2ª. ed.1978
P.471

FUENTES ELECTRÓNICAS

GAVAB, grupo de Investigación - Capo, de la Universidad Rey Juan Carlos (URJC). Sistemas
de visión artificial en tareas de video-vigilancia del tráfico consultado marzo de 20010
En http://www.madrimasd.org/informacionidi/noticias/ noticia.asp?id=42633.

MERY, Domingo, RUEDA, Luis. Advances in Image and Video Technology. Second Pacific
Rim Symposium PSIVT, Procceding. 2007 [en línea](consultado en 2009) En.
http://books.google.com.co/books?id=vkNfw8SsU3oC&pg=PA138&source=gbs_select
ed_pages&cad=4#v=onepage&q&f=false

MOORE, David S. Estadística aplicada básica. En.:


http://ecosdelaeconomia.wordpress.com/todas- as-
asignaturas/matematicas/estadistica/resumen-libro-estadistica-aplicada-basica/

35
ZULOAGA, Izaguirre Aitzol. Visión Artificial Dinámica Determinación de Movimiento a Partir
de Secuencias de Imágenes Doctorado en Tecnologías de la Información Bilbao,
septiembre 98, consultado abril de 2010.En
. : http://reocities.com/capecanaveral/8482/docu003.pdf

http://iaci.unq.edu.ar/Materias/vision/archivos/apuntes/Segmentaci%C3%B3n%20por%20umbr
alizaci%C3%B3n%20-%20M%C3%A9todo%20de%20Otsu.pdf.

36

You might also like