>

Revista Tecnología y Ciencia - Universidad Tecnológica Nacional
DOI:https://doi.org/10.33414/rtyc.36.202-211.2019 - ISSN 1666-693 -

Actas de las IX Jomadas Argentinas de Robotica 15-17 de noviembre, Cordoba, Argentina

Implementación de V2I Utilizando Visión Artificialy un Clasificador Bayesiano

V2I Implementation Using Artificial Vision and a Bayesian Classifier

Presentación: 17/11/2017

Aprobación: 02/12/2017

Vazquez Raimundol

GUDA-Grupo Universitario de Automatización - Universidad Tecnológica Nacional - Facultad Regional Resistencia +French 414. 3500 Resistencia-Chaco- Argentina

Tel: +54 362 4432928. / Fax: +54 362 4432683/

ray_vazquez_2005@hotmail.com

Alejandro Burgos

GUDA-Grupo Universitario de Automatización - Universidad Tecnológica Nacional - Facultad Regional Resistencia +French 414. 3500 Resistencia-Chaco- Argentina

Tel: +54 362 4432928. / Fax: +54 362 4432683/

Marighuetti Jorge

GUDA-Grupo Universitario de Automatización - Universidad Tecnológica Nacional - Facultad Regional Resistencia +French 414. 3500 Resistencia-Chaco- Argentina

Tel: +54 362 4432928. / Fax: +54 362 4432683/

Fernandez Martini

GUDA-Grupo Universitario de Automatización - Universidad Tecnológica Nacional - Facultad Regional Resistencia +French 414. 3500 Resistencia-Chaco- Argentina

Tel: +54 362 4432928. / Fax: +54 362 4432683/

Portillo Marcos

GUDA-Grupo Universitario de Automatización - Universidad Tecnológica Nacional - Facultad Regional Resistencia +French 414. 3500 Resistencia-Chaco- Argentina

Tel: +54 362 4432928. / Fax: +54 362 4432683/

Canali Luis

UTN Facultad Regional Cordoba - Maestro M. Lopez esq, Cruz Roja Argentina, Ciudad

Universitaria, 5016 - Córdoba - Argentina.

e-mail: luis.canali@gmail.com

RESUMEN

Se implementa un procedimiento de clasificación del estado del tránsito vehicular, utilizando herramientas de visión artificial, un filtro Haar y un clasificador bayesiano. El software desarrollado simula el funcionamiento de sensores magnéticos distribuidos en la vía transitable. Técnicas de procesamiento digital de imagen permiten la detección vehicular en zonas del tránsito complejo. La utilización del filtro Haar permite cuantificar la cantidad de vehículos estacionados y en circulación. La información relevante obtenida en los fotogramas de la cámara de video permite establecer un vector característico del tránsito. Posteriormente utilizando un clasificador bayesiano se fusiona los datos del vector en cuatro categorías: transito nulo, transito bajo, transito medio y transito congestionado. Finalmente los resultados de las predicciones se transmiten vía inalámbrica entre dispositivos genéricos que simulan la experiencia conocida con el nombre de comunicación vehículo a infraestructura o V2I.

Palabra clave: comunicación V21; clasificadores Haar; clasificadores bayesianos

Abstract

A procedure for classifying the state of vehicular traffic is implemented, using artificial vision tools, a Haar filter and a Bayesian classifier. The software developed simulates the operation of magnetic sensors distributed in the passable way. Digital image processing techniques allow vehicular detection in areas of complex traffic. The use of the Haar filter allows quantifying the number of vehicles parked and in circulation. The relevant information obtained in the video camera frames allows to establish a characteristic traffic vector. Subsequently, using a Bayesian classifier, the vector data is merged into four categories: zero traffic, low traffic, medium traffic and congested traffic. Finally, the results of the predictions are transmitted wirelessly between generic devices that simulate the known experience with the name of vehicle to infrastructure communication or V2I.

Keyword: V21 communication; Haar classifiers; Bayesian classifiers

INTRODUCCIÓN

El propósito de este trabajo es implementar un procedimiento de predicción para clasificar el estado de congestión vehicular en aplicaciones pertenecientes al campo de la comunicación de vehículo a vehículo [1]. Dicho sistema fue diseñado para transmitir información básica de seguridad entre los vehículos y facilitar las advertencias a los conductores acerca de accidentes inminentes.

De esta manera se pretende contribuir en soluciones tecnológicas para abordar los problemas de seguridad vial. Usando este informe se podrá facilitar la toma de datos relevantes para procesar y mejorar la transmisión de información del estado del tránsito complejo en actividades que involucren comunicación vehículo a vehículo (V2V) [2], Vehículo-a-infraestructura (V2I) [3][4][5] y tecnologías vehículo-peatón (V2P)[6].

HERRAMIENTAS UTILIZADAS

A. Dispositivos Genéricos

El Raspberry PI es una computadora de placa simple de bajo coste. Es un ordenador de tamaño reducido que se conecta a una pantalla LCD y un teclado. Soporta varios componentes necesarios en un ordenador común. Su pequeño ordenador puede ser utilizado como una PC de escritorio.

La placa posee varios puertos y entradas, cuatro USB, uno de Ethernet y salida HDMI. Estos puertos permiten conectar el miniordenador a otros dispositivos, teclados, ratones y pantallas.

En la figura 1 la notebook tiene como misión procesar el estado del tránsito complejo y enviar los datos utilizando el puerto de comunicación USB al transceptor denominado LoRa [7]. El Raspberry recibe la información a través del segundo transceptor y lo envía a un LCD.

Fig. 1. Esquema representativo de la experiencia V2I

El segundo hardware se denomina Student Full y puede medir magnitudes físicas mediante sensores conectados a conversores analógicos digital de 10 bits como lo detalla Saravia [8]. El software utilizado permite conectarse a un transceptor de alta frecuencia de 2.6Ghz desarrollado por la empresa LAIPAC Technology, articulado con una pantalla LCD como se visualiza en la figura 2.

Generalmente los fabricantes de dispositivos genéricos proporcionan proyectos con software de alto nivel que facilitan el manejo de este tipo de hardware, requiriendo solo conocimientos elementales de programación y electrónica por parte del investigador.

Fig. 2. Dispositivos genericos, transceptores y pantalla LCD

El dispositivo genérico visualizado a la izquierda de la figura 2 tiene la misión de recibir información del transceptor en forma de código ASCII, visualizándolo en una pantalla color LCD. El hardware de la derecha solo envía paquetes de datos desde la notebook al transceptor.

En el mercado existen muchos desarrollos diseñados para realizar el envío de información inalámbrica. En este trabajo solo se muestra una simple propuesta para realizar transferencia de información relevante de una estación de monitoreo vehicular.

B.Visión Artificial

OpenCV [9] es una biblioteca libre de visión artificial originalmente desarrollada por Intel. Su aplicación va desde sistemas de seguridad con detección de movimiento, hasta aplicativos de control de procesos donde se requiere reconocimiento de objetos. Su licencia permite su use libre para propósitos comerciales y de investigación. OpenCV es multiplataforma, existiendo versiones para GNU/Linux, Mac OS X y Windows. Contiene más de 500 funciones que abarcan una gran gama de áreas en el proceso de visión, como reconocimiento de objetos, calibración de cámaras, visión estéreo y visión robótica. El proyecto encargado de desarrollar OpenCV pretende proporcionar un entorno de desarrollo fácil para el programador.

C.Machine Learning

El concepto de Aprendizaje de Maquina o (ML) [10][11][12] es una rama de la Inteligencia Artificial que crea sistemas que aprenden automáticamente. Aprender en este contexto quiere decir identificar patrones complejos entre muchos datos. El concepto de ML es un algoritmo que a partir del procesamiento de datos es capaz de predecir comportamientos futuros en forma automática.

D.Clasificador Haar

Es un algoritmo basado en arboles incluido en la librería OpenCV. La aplicación fue desarrollada para reconocer figuras complejas en fotogramas. Dicho clasificador puede detector caras, bicicletas, cuerpo humano y en especial vehículos. Se utilizan imágenes de entrenamiento seleccionadas para cada vista del objeto. El OpenCV implementa una versión de la técnica de detección de rostros desarrollada por Paul Viola [13].

E.Clasificador Bayesiano

El clasificador Bayesiano Normal Naïve es un predictor que pertenece a ML del OpenCV. Es "ingenuo" porque asume que todas las características descriptivas de los objetos a clasificar son independientes Zhang [14]. El Bayesiano Normal Naïve es un clasificador eficaz que puede manejar varios estados del sistema. Este clasificador es el caso más simple posible de lo que ahora es un campo creciente conocido como redes bayesianas.

METODOLOGIA

El enfoque metodológico utilizado para desarrollar el algoritmo encargado de establecer el estado del tránsito vehicular es cuantitativo, debido a que se basa en observaciones y evaluaciones del fenómeno (movimientos, cuantificación de formas, etc.). El clasificador Haar asociado a técnicas de procesamiento digital de imagen permite establecer niveles de congestión vehicular en un sistema de transito complejo. La fusión de datos empleando el predictor bayesiano logra cuantificar el estado del tránsito vehicular. Es posible en un primer estudio utilizar una lógica condicional booleana relativamente sencilla para establecer un criterio de clasificación. El mismo posee una limitación cuando las variables de estado aumentan en forma significativa.

PROCEDIMIENTO

A. Entrenamiento Utilizando el Clasificador Haar

El clasificador Haar requiere crear un archivo de información donde se encuentra los parámetros necesarios en la detección de vehículos en circulación o estacionados en la vía pública.

Los pasos a seguir son los propuestos por Bradski [15] indicados a continuación:

a)Se refine un conjunto de imágenes de ejemplos de vehículos que se desea detectar, por ejemplo: vistas de frente, vistas laterales de coches etc. Estos pueden almacenarse en uno directorio indexados en un archivo de texto.

b)Se utiliza el software denominado createsamples disponible en la librería OpenCV para construir un archivo de salida vectorial de todas las muestras.

c)El algoritmo Paul Viola es un clasificador binario. Por ese motivo es necesario establecer dos tipos de archivos de entrenamiento. El primero debe describir los ejemplos más cercanos posibles a figuras de automóviles y el segundo debe tener imágenes diferentes a lo que se desea clasificar.

d)El proceso de entrenamiento se realiza utilizando la configuración sugerido por Bradski [15].

e) Finalmente se obtiene el archivo de entrenamiento que permite detectar figuras en forma de vehículos en la vía pública.

En la figura 3 muestra el clasificador Haar detectando con círculos amarillos los autos estacionados y los verdes en circulación. Se establecen dos rectas de referencia que permiten delimitar el área transitable.

Fig 3. Representación del tránsito mediante el clasificador Haar

El entrenamiento del clasificador Haar puede tomar varias horas. En este caso se utilizaron 200 muestras, con un tiempo estimado de siete horas para la finalización del mismo.

B. Obtención del Estado Característico del Transito

Empleando herramientas de procesamiento de imágenes se desarrolló un software que simula sensores magnéticos cuya resistencia eléctrica se ve alterada bajo la influencia de un campo magnético. Este tipo de sensores, comúnmente llamados magnetorresistencias se utilizan como detectores del estado del tráfico vehicular. Mediante funciones de visión artificial se logra detectar el momento en el cual los vehículos atraviesan los círculos mostrados a la derecha de la figura 4.

Fig 4. Simulación de sensores magnéticos utilizando visión artificial

Los estados son visualizados a la izquierda de la figura. Se observa los valores iguales cero debido a la ausencia de vehículos en dicho muestreo.

En la figura 5 la simulación detecta vehículos en todos los fotogramas.

Fig 5. Detección de vehículos utilizando un simulador y visión artificial

Es necesario relacionar los estados de la figura 3 y los obtenidos en la figura 5. Los pasos se detallan a continuación.

C. Entrenamiento del Sistema

La tabla I representa parte de los datos de entrenamiento que permitirán generar el archivo de aprendizaje que se utilizara para realizar la predicción. La primera columna especifica el estado vehicular del tránsito complejo dividido en cuatro categorías: nulo (1), bajo (2), medio (3) y congestionado (4). Luego las columnas 2 al 13 representan el estado de los sensores magnéticos (activo, no activo). Las columnas 14 y 15 expresa la cantidad de automóviles en circulación y estacionados respectivamente.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

3

0

0

1

0

0

1

1

1

1

1

1

1

2

3

3

0

0

1

1

0

0

1

1

1

1

1

1

3

2

3

0

1

1

0

1

0

1

1

1

1

1

1

3

3

3

0

0

1

1

0

0

0

1

1

1

1

1

2

2

4

1

0

0

1

0

0

0

0

1

1

1

1

4

3

4

1

1

0

0

1

0

0

0

1

1

1

1

3

4

4

1

1

0

0

0

0

0

0

0

1

1

1

4

4

4

1

0

0

1

0

0

1

1

1

1

1

1

2

4

4

0

0

1

1

1

0

0

0

0

1

1

1

4

3

1

0

0

0

0

0

0

0

0

0

0

0

0

0

4

TABLA I

Luego se establece el procedimiento para generar el archivo de aprendizaje.

D. Generación del Archivo de Aprendizaje

La figura 6 muestra un esquema simplificado en la generación del archivo de aprendizaje. El proceso comienza en la adquisición de imágenes de un video vehicular de entrenamiento.

Fig 6. Generación del archivo de aprendizaje

Luego se obtiene datos representativos del tránsito (figura 5) y la cantidad de vehículos en circulación o estacionados (figura 3).

Finalmente se procesan los datos de entrenamiento utilizando la herramienta CvNormalBayesClassifier generando el archivo de aprendizaje.

E. Implernentación del software V2I utilizando Visión Artificial y un Clasificador Bayesiano

Se desarrolla un software encargado de clasificar el estado del tránsito complejo articulando visión artificial y un predictor bayesiano. Las herramientas de procesamiento digital de imágenes del OpenCV permiten establecer el estado de los sensores magnéticos representados virtualmente. El clasificador Haar cuantifica la cantidad de vehículos estacionados y en circulación. Con la información obtenida se arma un vector representativo del estado vehicular. Los primeros doce elementos representan el estado de los sensores magnéticos y los dos últimos el resultado del filtro Haar, ver figura 7. Luego se introduce la información del vector al predictor bayesiano. Como resultado se obtiene una estimación del estado del tránsito complejo.

Fig 7. Representación del software V2I

Los datos de la predicción se envían a uno de los dispositivos genéricos mediante el puerto de comunicación USB. Finalmente un segundo transceptor recibe la información enviada.

CONCLUSIONES

Fue posible predecir el estado del tránsito vehicular utilizando técnicas de procesamiento digital de imagen, un filtro Haar y un predictor bayesiano.

Para tales fines se debió generar un algoritmo de visión artificial que simule el funcionamiento de un sensor magnético asociado a un clasificador Haar.

Los datos obtenidos en el proceso de extracción de información en fotogramas permitieron armar un vector representativo del tránsito.

Fue necesario entrenar un predictor para clasificar cuatro categorías denominadas: transito nulo, transito bajo, transito medio y transito congestionados.

El predictor bayesiano proces6 al vector generado por el software de visión artificial.

Los resultados de la clasificación del predictor fueron enviados a uno de los dispositivos genéricos a través de un puerto de comunicación.

Seguidamente un segundo transceptor recibió la información enviada en forma inalámbrica.

El procedimiento descripto permitió facilitar la toma de datos relevantes en fotogramas del estado del tránsito complejo en actividades que involucren comunicación vehículo a vehículo V2V y Vehículo-a-infraestructura V21.

Los dispositivos utilizados en la transferencia de información inalámbrica fueron simples y de bajo presupuesto, existiendo en el mercado desarrollos y diseñados más robustos.

REFERENCIAS

[1] Adaptive Media Switching for Future Vehicle-to-Vehicle Comunication 2005 IEEE 16th International Symposium on Personal, Indoor and Mobile Radio Communications. Takayuki Warabibo, Kenji Saito, Keizo Suyiyama, Hideyuki Shinonaga and Tomohiro Nishida.

[2] Vehicle Collision Probability Calculation for General Traffic Scenarios Under Uncertainty. 2014 IEEE Vehicular Networking Conference. James Ward, Member, Gabriel Agamennoni, Stewart Worrall and Eduardo Nebot Senior Member.

[3] J. Alcaraz, J. Vales-Alonso and J. Garcia-Haro, ”Control-based scheduling with QoS support for vehicle to infrastructure communications”, IEEE Wireless Communications, vol. 16, no. 6, pp. 32-39, Dec. 2009.

[4] D. Jian and L. Delgrossi, ”IEEE 802.11p: Towards an International Standard for Wireless Access in Vehicular Environments”, in Proc. IEEE Vehicular Technology Conference, pp. 2036-2040, May 2008.

[5] TDMA-based Channel Access Scheme for V2I Communication System using Smart Antenna. 2010 IEEE Vehicular Networking Conference. Sung-Yeop Pyun, Helena Widiart, Yong-Jin Kwon and Dong-Ho Cho.

[6] Fusion of Perception and V2P Communication Systems for the Safety of Vulnerable Road Users Pierre Merdrignac; Oyunchimeg Shagdar; Fawzi Nashashibi IEEE Transactions on Intelligent Transportation Systems Year: 2017, Volume: 18, Issue: 7 Pages: 1740 – 1751.

[7] http://www.microchip.com/design-centers/wireless connectivity/embedded-wireless/lora-technology.

[8] Saravia, B., Coria J., Fiadino, G,. Arroldi A.,: MPlab X y Técnicas de Programación en Librerías de Microchip. Editorial MC electronic. Cap 24. pp 313. Primera Edición 2010. Buenos Aires. Argentina.

[9] Godoy V, Escriba D, Joshi P: Opencv by Example. Editorial PACKT. Primera Edición 2016. New York. EEUU.

[10] T. Hastie, R. Tibshirani, and J. Friedman, The Elements of Statistical Learning: Data Mining, Inference and Prediction, New York: SpringerVerlag, 2001.

[11] R. O. Duda and P. E. Hart, Pattern Recognition and Scene Analysis, New York: Wiley, 1973.

[12] R. O. Duda, P. E. Hart, and D. G. Stork, Pattern Classification, New York: Wiley, 2001.

[13] P. Viola and M. J. Jones, “Rapid Object Detection Using a Boosted Cascade of Simple Features,” IEEE CVPR (2001).

[14] H. Zhang, “The optimality of naive Bayes,” Proceedings of the 17th International FLAIRS Conference, 2004.

[15] Gary Bradski and Adrian Kaehler. Learning OpenCV. Editorial RepKover. Cap 13.pp513. Primera Edición 2008. New York. United States of America