Técnicas computacionales aplicadas a la asistencia en la conducción de vehículos

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Técnicas computacionales aplicadas a la asistencia en la conducción de vehículos"

Transcripción

1 Técnicas computacionales aplicadas a la asistencia en la conducción de vehículos Verónica Natacha Espada Lucía Vanesa Araya Mg. Lucas Leiva Director Mg. Marcelo Tosini Co-director Facultad de Ciencias Exactas Departamento de Computación y Sistemas Universidad Nacional del Centro de la Provincia de Bs. As.

2 Índice general Agradecimientos... 6 Resumen... 7 Capítulo 1. Introducción Motivación Propuesta y Objetivo Organización Capítulo 2. Sistemas de asistencia a conductores Sistemas I2DASW Mantenimiento de carril Control de crucero adaptativo (ACC) Detección de obstáculos Realidad aumentada Sistemas comerciales de asistencia en vehículos de alta gama Ford Mercedes Benz Distronic Citroen LDWS Honda HIDS Toyota Lexus AODS Nissan ICC Volkswagen ACC BMW ACC Conclusiones Capítulo 3. Procesamiento de imágenes en Sistemas I2DASW Detección de carriles Identificación de obstáculos Conclusiones Capítulo 4. Desarrollo Detección de carriles Realce de bordes Detección de carriles potenciales Post procesamiento Reconocimiento de líneas de carril Detección de obstáculos Framework I2DASW

3 Índice General Análisis de los Requisitos Vista General del Sistema Arquitectura Diseño Detallado Tecnologías aplicadas Conclusiones Capítulo 5. Resultados Detección de carriles Detección de obstáculos Comportamiento del sistema de asistencia (framework) Análisis de Vía Libre Análisis de No sobrepasar Análisis de Obstáculos Evaluación de la performance Conclusiones Capítulo 6. Conclusión general y Trabajos Futuros Conclusiones Limitaciones Trabajos Futuros Capítulo 7. Referencias

4 Índice de figuras Figura 1.1.1: Comparativo del número de muertos anual en la Argentina en accidentes de tránsito... 8 Figura 1.1.2: Muertes por accidentes de tránsito en Argentina en Figura 1.1.3: Muertes por accidentes de tránsito en diferentes países Figura 1.1.4: Accidentes según Zona Figura 1.1.5: Accidentes relevados por tipo de Camino Figura 1.1.6: Accidentes según luminosidad Figura 1.1.7: Accidentes según condición atmosférica Figura 1.1.8: Accidentes según fallas humanas Figura 2.1.1: Arquitectura de un sistema de asistencia al conductor y de advertencia de seguridad..16 Figura 2.1.2: Framework para computadoras multifunción "activas" basado en sistemas de captura de contexto dinámico Figura 2.1.3: Framework interactivo de análisis de la situación de la carretera Figura 2.1.4: Tecnologías utilizadas por los sistemas de asistencia al conductor Figura 2.1.5: Asistencia en mantenimiento de carril Figura 2.1.6: Control de crucero adaptativo de Bosch Figura 2.1.7: Parabrisas inteligente Figura 2.1.8: Sistema de conducción aumentada Figura 2.1.9: Sistema de alerta de colisión ionroad Figura 2.2.1: Sistema de mantenimiento de carril de Ford..24 Figura 2.2.2: Distronic radar. Mercedes Benz Distronic Figura 2.2.3: Sistema de alerta de cambio de carril. Citroen Figura A: Honda (HiDS) patrón de control Figura B: Honda (HiDS) condiciones operacionales Figura 2.2.5: Nissan (ICC) Figura A: BMW (ACC)...27 Figura B: Radar de Bosch utilizado por BMW (ACC) Figura 3.2.1: Método basado en la extracción de características Figura 3.2.2: Tasa de aciertos y fallos para las diferentes técnicas de detección de obstáculos Figura 4.1: Sistemas de detección de carriles y obstáculos Figura 4.1.1: Aplicación de diferentes tipos de líneas Figura 4.1.2: Filtro de Roberts Figura 4.1.3: (a) Filtro de Sobel. (b) Filtro de Prewitt Figura 4.1.4: Resultado de aplicar el algoritmo de Hough Figura 4.1.5: Detección de las líneas izquierda (a) y derecha (b) Figura 4.1.6: Detección de la línea central a partir del punto de fuga Figura 4.1.7: Reconocedor de líneas de carril Figura A: Umbralado Figura B: Umbralado Figura 4.2.2: SURF. Aproximación de las derivadas parciales de segundo orden Figura 4.2.3: Regiones obtenidas tras aplicar SURF Figura 4.2.4: Determinación del carril de conducción Figura 4.2.5: Área de interés para la detección de obstáculos Figura 4.2.6: Reconocedor de obstáculos

5 Figura 4.3.1: Diagrama general del framework Figura 4.3.2: Diagrama de capas Figura 4.3.3: Diagrama de Capas - Capa de Captura de Datos Figura 4.3.4: Jerarquía de clases de Sensores Figura 4.3.5: Diagrama de Capas - Capa de Reconocimiento de Datos Figura 4.3.6: Clase Data y su jerarquía. Clase DataCollector. Interfaz Visitor Figura 4.3.7: Diagrama de Capas - Capa de Procesamiento de Datos Figura A: Clase RecognizerAF extendida Figura B: Clases Reconocedores, genéricas e implementaciones Figura 4.3.9: Jerarquía de clases de Información Figura : Ejemplo de patrón Factory Figura : Clases para el manejo de las Líneas Figura : Clase de la Base de Datos Figura : Capa de Acción Figura A: Clases del Motor de Decisiones y manejo de Condiciones Figura B: Clases para el manejo de acciones Figura : Clase Action Argument Figura : Capa de Presentación Figura : Pantalla de Configuración Figura A: Acceso para cambio de Velocidad Figura B: Ingreso de Velocidad Figura : Clase de Datos Históricos Figura : Clase de Propiedades Figura : Pantalla general del framework Figura 5.1.1: Detección de carriles. Resultados obtenidos del banco de imágenes Figura 5.1.2: Detección de carriles. Resultados obtenidos de casos patológicos Figura 5.1.3: Detección de carriles. Resultados erróneos obtenidos de imágenes patológicas Figura 5.2.1: Detección de obstáculos. Resultados obtenidos del banco de imágenes Figura 5.2.2: Detección de obstáculos. Resultados obtenidos de casos patológicos Figura 5.2.3: Detección de obstáculos. Resultados erróneos obtenidos de imágenes patológicas Figura 5.3.1: Imagen de Vía libre sin obstáculos en la banquina Figura 5.3.2: Imagen de Vía libre con obstáculos en la banquina Figura 5.3.3: Imágen de No sobrepasar sin obstáculos Figura 5.3.4: Imágen de No sobrepasar con obstáculos paralelos Figura 5.3.5: Imagen con Obstáculo al frente Figura 5.4.1: Principales casos de error en la detección de obstáculos Figura 5.4.2: Resultados obtenidos sobre un video extraído del banco de imágenes Figura 5.4.3: Resultados obtenidos sobre un conjunto de videos tomados en nuestras rutas. 92 Figura 5.4.4: Información del estado de la ruta.93 4

6 Índice de Figuras Índice de tablas Tabla 3.1.1: Comparación de varias técnicas de detección y seguimiento de carril Tabla 3.2.1: Comparación de varias técnicas de detección y seguimiento de obstáculos Tabla Análisis de ventajas y desventajas de la arquitectura Tabla Tabla Condition Tabla Tabla Action Tabla Tabla Action_Argument Tabla 5.4.1: Resultados del análisis de performance

7 Agradecimientos Quiero agradecer por el apoyo incondicional, principalmente de mi familia y amigos que estuvieron presentes a lo largo de todos estos años de estudio. A nuestro director y co-director, quienes nos han guiado con paciencia y han mostrado por demás interés durante el desarrollo de esta tesis y también han sido de ayuda durante mis últimos años de la carrera. A todos ellos, y también a la Universidad, muchas gracias por hacer esto posible. Verónica Natacha Espada Quiero agradecer a Alejandro mi compañero incondicional, que sin él nada de esto sería posible. A mi familia pero principalmente a mi mamá, a mi hermana y a mi papá, que me impulsaron a estudiar, se movieron conmigo para que pueda empezar esta carrera y llegar a ser alguien en esta vida, levantándome el ánimo siempre. A mi amigo Luis que me acompañó desde el ingreso y estuvo siempre que lo necesité, tanto en lo personal como en el estudio. A mis amigas/os por los momentos compartidos a lo largo de esta etapa. A nuestro director Lucas y co-director Marcelo por la paciencia, las recomendaciones, las correcciones, los consejos y el apoyo. Es una gran alegría para mí poder recibirme, y quiero dedicárselo a mi abuelo Sergio. Lucia Vanesa Araya 6

8 Resumen El trabajo presenta el proceso de búsqueda de información, detección, análisis y desarrollo de un sistema que ofrece asistencia en la conducción de vehículos. Es un aplicativo que funciona mediante una simulación pero que puede ser llevado a otros dispositivos como los móviles. En este informe se detalla desde la detección de la problemática, motivación y objetivos que se desean obtener, teniendo en cuenta el análisis realizado sobre las diferentes investigaciones y aplicaciones existentes sobre sistemas de asistencia a conductores en general y en particular al tópico a desarrollar. Posteriormente, se explica la propuesta presentada paso a paso, describiendo una solución al objetivo presentado. Seguido de esto, se presentan las tecnologías y sistemas de asistencia en vehículos que existen en el mercado. Y luego los diferentes algoritmos y técnicas utilizadas que dan soporte a la aplicación, principalmente para el procesamiento de imágenes. Continuando con el informe se especificará el desarrollo de este sistema, centrándose en la detección de carriles, de obstáculos y en el framework implementado. Finalmente se mostrarán una serie de resultados, en los cuales se intenta graficar detalladamente el trabajo realizado pudiendo visualizar, mediante imágenes y estadísticas, los posibles casos más significativos en la conducción de un vehículo. Las pruebas se realizaron con vídeos y bancos de imágenes de rutas y calles proporcionados por una página de internet, como así también con imágenes y videos tomados desde un celular en rutas Argentinas. En la investigación realizada, se pueden encontrar diferentes sistemas que se orientan al sector de la asistencia en la conducción vehicular, ya sea directa o indirectamente. Éstas, utilizan diferentes técnicas y algoritmos que permitieron analizar y tomar parte de sus ideas, en la aplicación realizada en este trabajo. Con respecto a la lógica de la aplicación se dividió en tres etapas, la detección de carriles, la detección de obstáculos y el desarrollo del framework. Debido al tipo de sistema propuesto, se utilizaron distintas técnicas para los diferentes pasos y algoritmos realizados. Al detallar la arquitectura propuesta, se profundizará sobre los motivos de la elección, explicando cómo funciona, sus características, ventajas y desventajas, y las tecnologías utilizadas para implementarlos. Todo el análisis previo, otros sistemas similares, sus pruebas, etc., fueron muy útiles para determinar cómo implementar la aplicación. Las pruebas fueron realizadas sobre una variedad de imágenes y videos, para poder comparar resultados, obtener estadísticas, evaluar la performance del sistema y realizar una conclusión del trabajo. 7

9 Capítulo 1. Introducción 1.1 Motivación Actualmente, la cantidad anual de automóviles producidos ha crecido de manera considerable. Esto es comprobado por datos de la Asociación de Fábricas de Automotores, y se ve reflejado en el número de accidentes ocurridos, tanto de riesgo como fatales, debido al alto incremento en el tráfico vehicular. Según estudios sobre la producción de vehículos Argentina ocupa el puesto 38 de países por vehículos per cápita. Existen en el país 268 vehículos de motor por cada 1000 habitantes [1]. Argentina supera a Uruguay, que se encuentra en el puesto 54 con 174 vehículos cada mil, y a México y Brasil, en el puesto 63 con 133 vehículos cada mil. Además, ocupa el puesto 20 de los países con mayor producción de vehículos de motor [2]. Existen innumerables estadísticas donde se puede ver reflejado como han aumentado los accidentes de tránsito, siendo Argentina el país con la mayor tasa de muertes ocasionadas por accidentes de tránsito en Sudamérica. En Argentina mueren aproximadamente personas, con un índice de 12,6 víctimas fatales por cada 100 mil habitantes. La OMS (Organización Mundial de la Salud) reconoció que en los últimos tres años hubo un descenso en la cantidad de muertes en el tránsito, pero los valores de la Argentina siguen lejos de los alcanzados por los países centrales [3]. Unas 21 personas pierden la vida diariamente en accidentes de tránsito en Argentina. Esta es la principal causa de muerte en menores de 35 años y la tercera sobre la totalidad de la población. Más de muertes y más de heridos de distinto grado son registrados anualmente, además de importantes pérdidas materiales estimadas en unos millones de pesos anuales. Las cifras son elevadas comparadas con otros países, llegando a tener entre 8 y 10 veces más víctimas fatales que en la mayoría de los países desarrollados, con relación al número de vehículos que circulan [4]. En el siguiente comparativo (Figura 1.1.1) puede observarse la variación de la cantidad de muertes anual en Argentina por accidente de tránsito desde el año 1992 hasta el año Figura 1.1.1: Comparativo del número de muertos anual en la Argentina en accidentes de tránsito [5]. 8

10 Introducción En la siguiente imagen (Figura 1.1.2) puede verse detalladamente la cantidad de víctimas fatales en cada provincia de la Argentina transcurridas en el año 2015, como así también el total, notando una disminución con respecto al año Figura 1.1.2: Muertes por accidentes de tránsito en Argentina en 2015 [6]. En relación con otros países, Argentina ostenta uno de los índices más altos de mortalidad producida por accidentes de tránsito y no tuvo grandes disminuciones de accidentes de tránsito entre los años 1992 y Las cifras mencionadas anteriormente son significativamente elevadas si se las compara con los índices de otros países, en relación a su población y número de vehículos circulantes como puede apreciarse en la siguiente estadística (Figura 1.1.3). 9

11 Introducción Figura 1.1.3: Muertes por accidentes de tránsito en diferentes países [7]. En este punto, puede ser interesante el análisis de las condiciones y principales causas de accidentes en nuestro país. Analizando los índices de porcentajes de accidentes en zonas rurales y urbanas, se observa que el segundo grupo posee una tasa superior a la primera, pero no en mayor medida (Figura 1.1.4) Figura 1.1.4: Accidentes según Zona [8]. Con el siguiente gráfico (Figura 1.1.5) y si se considera que en Argentina donde suelen estar mejor delimitados los carriles son en rutas nacionales, autopistas y avenidas, se observa que es en estas en donde las estadísticas poseen peores resultados. 10

12 Introducción Figura 1.1.5: Accidentes relevados por tipo de Camino [9]. Por otra parte, las figura y la figura 1.1.6, presentan las estadísticas de los accidentes teniendo en cuenta las condiciones ambientales y de iluminación. Figura 1.1.6: Accidentes según luminosidad [9]. Figura 1.1.7: Accidentes según condición atmosférica [9]. 11

13 Introducción Analizando los índices de causalidad de accidentes en Argentina, se observa que la invasión de carriles es la principal, como puede verse en el siguiente gráfico de barras (Figura 1.1.8) con una importante diferencia sobre las demás. Figura 1.1.8: Accidentes según fallas humanas [9]. En resumen, se encontró que los principales índices de accidentes se observan en las zonas urbanas (Figura 1.1.4), en rutas nacionales (Figura 1.1.5), en pleno día (Figura 1.1.6) y con buen clima (Figura 1.1.7). Además la causa principal de los accidentes viene dada por invasiones de carriles, siendo en rutas nacionales, autopistas y avenidas, donde suelen estar mejor delimitados los carriles. Una posible solución al problema es a través de la incorporación de sistemas de asistencia a conductores. Estos sistemas son capaces de aumentar la calidad de conducción y proveer información de interés relacionada al vehículo, la carretera y el entorno. Además alertan de forma pasiva situaciones riesgosas, logrando disminuir la probabilidad de accidentes, y pueden llegar a actuar de manera activa sobre el control del vehículo en escenarios de alto riesgo. Algunas situaciones peligrosas son causadas por distracciones, y las más comunes son: uso del teléfono celular o dispositivos electrónicos, GPS, bebidas, cambio de estación de la radio, carteles y otros eventos anormales. A estas situaciones se les suma el cansancio, los microsueños, y las largas y monótonas rutas, tan comunes en Argentina. El uso de este tipo de sistemas provee al conductor más tiempo para actuar, evitando que tales casos de riesgo se conviertan en emergencias (estar preparado, reduce el peligro). Los sistemas de asistencia a conductores o I2DASW (Interactive Intelligent Driver- Assistance and Safety Warning)[10] ofrecen funciones, tales como el mantenimiento de la velocidad y la distancia con respecto al vehículo precedente, logrando desacelerar el vehículo en caso de riesgo inminente de colisión por alcance [11][12]. También son capaces de asistir al conductor cuando desea cambiar o mantenerse en un carril o en las maniobras de estacionamiento; identifican los límites de velocidad, e incluso pueden ver en la oscuridad con gran antelación (asistente de visión nocturna [13]). Sus funciones permiten detectar carriles 12

14 Introducción [14] [17], obstáculos móviles o estáticos [15] [16] [17], señales de tránsito [17], y mejora de la visibilidad [18], entre otras. Los sistemas I2DASW [10] combinan sensores de imagen, LIDAR (Laser Imaging Detection and Ranging) y radar, y pueden utilizarse en sistemas de control automático de distancia y velocidad ACC (Adaptive Cruise Control) y de mantenimiento de carril. Estos sistemas integran el estudio del comportamiento del conductor y la dinámica del vehículo en un framework de análisis de amenazas para diversas situaciones de seguridad vial. De esta manera, los sistemas I2DASW logran reducir la tasa de accidentes, actuando en situaciones de riesgo a partir de la información entregada por los sensores. 1.2 Propuesta y Objetivo El objetivo de este trabajo es diseñar y desarrollar técnicas de computación en un sistema de asistencia al conductor, mejorando la calidad de conducción de vehículos. Para abarcar el mayor sector mencionado anteriormente en donde se producen más accidentes se analizarán e implementarán las técnicas de detección de carriles y obstáculos móviles o estáticos, determinando si estos se ubican en el mismo carril de conducción, o en su defecto en los lados adyacentes. La complejidad de las técnicas será de costo computacional acotado para permitir su ejecución en tiempo real. Adicionalmente, se propone el desarrollo de un framework inicial I2DASW (Interactive Intelligent Driver-Assistance and Safety Warning) el cual permitirá determinar situaciones de riesgo mediante un grupo de sensores (en este caso, sensor de detección de carriles y sensor de detección de obstáculos) que alimentarán el framework brindándole información de la condición actual del vehículo y del camino. La información entregada por los sensores permite el modelado del ambiente, sobre el cual se aplicarán técnicas para la detección de riesgos, establecidas como un conjunto de reglas que deben ser analizadas individualmente. Cuando una situación peligrosa es detectada se debe analizar el grado de severidad de la misma y brindar un alerta. Las alertas son enviadas de forma pasiva al conductor a través de la interfaz de usuario. El framework será escalable, por lo cual permitirá incorporar información de nuevos sensores, actuadores, así como también la incorporación de nuevas reglas. Asimismo poseerá atributos de modificabilidad que permita la evolución del sistema con el mínimo impacto, e interoperabilidad con otros sistemas (por ejemplo: sistema de navegación GIS). 1.3 Organización En el capítulo 2 de este trabajo se muestra un estudio del arte, otros trabajos similares realizados en esta línea de investigación, comentando características de los sistemas de asistencia a conductores, arquitecturas (sistemas que integran: GPS, información visual, etc.) que servirá para enmarcarla dentro del campo tecnológico en la actualidad. El capítulo 3 brinda una introducción al procesamiento de imágenes, al problema de reconocimiento de carriles y a la identificación de obstáculos. Se busca una clasificación de problemas, un análisis de frames y de video y técnicas de identificación de carriles y obstáculos. El capítulo 4 detalla el análisis, diseño e implementación de la detección y seguimiento de carriles y obstáculos, y del framework. 13

15 Introducción El capítulo 5 muestra resultados de toda la implementación, una evaluación de las técnicas utilizadas para la detección de carriles y obstáculos. Se analizan diferentes casos y se habla de tiempos de respuesta. En cuanto al framework se evalúa en diferentes situaciones a partir de los resultados obtenidos de la detección de carriles y obstáculos. En el capítulo 6 se habla de las conclusiones, limitaciones y posibles trabajos futuros a partir de todo lo realizado en esta tesis. 14

16 Capítulo 2. Sistemas de asistencia a conductores Los sistemas de asistencia a conductores son una moda actual en vehículos de alta gama. Por lo general, cuanto mayor es la gama del coche, mayor es la demanda de este tipo de sistemas. Numerosos fabricantes están invirtiendo en perfeccionar y desarrollar nuevos sistemas de ayuda al conductor (SAC), para mejorar la experiencia del conductor y brindarle mayor seguridad. Estos sistemas ofrecen una mayor seguridad al conductor, permitiendo una conducción más automática, con el objetivo de evitar o reducir la gravedad de los accidentes en caso de una colisión, y reducir los impactos generados por la falta de atención del conductor. 2.1 Sistemas I2DASW Muchos sistemas I2DASW (Interactive Intelligent Driver-Assistance and Safety Warning) proponen el desarrollo de un framework y algoritmos para el análisis de la carretera, basados en el comportamiento de los conductores, donde la situación de seguridad es analizada mediante la simulación de comportamientos de conducción reales. También proponen algoritmos de seguimiento y detección obstáculos que utilizan múltiples sensores incluyendo radar, LIDAR (Laser Imaging Detection and Ranging), y una cámara; que proporcionan información acerca de los controladores, entorno de tráfico y vehículos. Con el fin de reducir el efecto de la forma de obstáculos y la apariencia, agrupan los datos LIDAR y luego clasifican los obstáculos en dos categorías: los estáticos y en movimiento. Las posibles colisiones futuras son evaluadas utilizando filtro de Kalman extendido, mostrando resultados experimentales con enfoques eficiente para la evaluación y la predicción de las situaciones de la carretera. Los sistemas I2DASW tienen tres funciones principales: Proveer información en tiempo real sobre el vehículo, el conductor y el entorno del tráfico para una conducción mejor y más segura. Instrucciones de seguridad y sistemas de asistencia. El sistema avisa al conductor de forma proactiva acerca de las posibles situaciones de riesgo en función de la posición actual del vehículo, la orientación, la velocidad y la situación vial; por otra parte, se pueden tomar medidas para controlar al conductor cuando su vehículo se encuentra en una situación peligrosa. Los sistemas de alerta de seguridad vigilan la situación de conducción y ofrecen información, por ejemplo, el aviso de una posible colisión, de un cambio carril, etc. Los sistemas de asistencia utilizan la advertencia para generar la trayectoria esperada y controlar el vehículo directamente. Los sistemas típicos Forward Collision Avoidance Assistance Systems, ACC systems, Low-Speed Following Systems, Stop & Go systems, etc. El sistema puede proteger a los conductores y los pasajeros del impacto entre los humanos y carrocerías de vehículos, por ejemplo, utilizando sistemas de airbag inteligentes. En la literatura se encuentran publicadas diversas arquitecturas de sistemas I2DASW (Interactive Intelligent Driver-Assistance and Safety Warning), que comparten el estilo de modelado. En Zheng et al. [19] (Figura 2.1.1) se presenta la arquitectura del sistema de tres capas. La capa sensorial, que incluye APIs y controladores sensoriales para la recopilación de datos y comunicación con diferentes tipos de sensores y dispositivos. La capa de la toma de decisiones que contiene un sistema de base de datos GIS (sistema de información geográfica); una memoria caché para el procesamiento de información en tiempo real; un banco de sensores virtuales que extraen información útil y una colección de agentes de toma de 15

17 Capítulo 2. Sistemas de asistencia a conductores decisiones para la detección de situaciones de riesgo y recomendar las acciones para los conductores. La capa de interfaz humana consiste en APIs y los controladores de dispositivos específicos para los diferentes tipos de pantallas de advertencia. Figura 2.1.1: Arquitectura de un sistema de asistencia al conductor y de advertencia de seguridad [19]. Por otra parte, Trivedi et al [20] describe una estructura jerárquica, para el procesamiento del contexto capaz de asignar dinámicamente recursos computacionales y sensores en función de las exigencias impuestas por el medio ambiente, el nivel de vigilancia y la carga cognitiva del conductor. Estos pueden ser capturados con pocos recursos y se utilizan para modular el nivel de detalle y la integración en el procesamiento de la gran cantidad de datos de la red de sensores (Figura 2.1.2). 16

18 Capítulo 2. Sistemas de asistencia a conductores Figura 2.1.2: Framework para computadoras multifunción "activas" basado en sistemas de captura de contexto dinámico [21]. Finalmente Cheng et al. [20] propone un framework integrado e interactivo, que cuenta con los módulos de modelado del medio ambiente, sensores, dinámica del vehículo, evaluación de situaciones futuras, agente de toma de decisiones, interfaz del usuario y un módulo de control basado en eventos anteriores (Figura 2.1.3). 17

19 Capítulo 2. Sistemas de asistencia a conductores Figura 2.1.3: Framework interactivo de análisis de la situación de la carretera [20]. En los tres ejemplos seleccionados se observa una intersección bien definida en cuanto a la estructuras de estos sistemas, los cuales incorporan un conjunto de sensores, un modelo de análisis de datos y toma de decisiones, y un módulo de resultados, los cuales pueden intervenir directamente sobre el vehículo o brindar información al conductor. El análisis de datos y la toma de decisiones implican que sea interactivo e inteligente, ofreciendo la asistencia al conductor y la seguridad con advertencias. Para esto requiere la estimación y predicción de la posición y el tamaño de los diversos obstáculos en la carretera, como también la detección de carriles. El procesamiento en tiempo real, dada la información incompleta e incierta, es un desafío para las tecnologías actuales de detección de objetos y de seguimiento. Las tecnologías de automóviles actuales implementan sistemas I2DASW, tales como las de Bosch [22]. Están basadas en sensores de entorno, tales como radares, ultrasonidos, cámaras de vídeo, entre otras tecnologías como las V2V que facilitan la comunicación inalámbrica entre vehículos. Estas tecnologías (Figura 2.1.4) tienen como objetivo interpretar las inmediaciones del vehículo y asistir al conductor en distintas situaciones para hacer la conducción más cómoda y más automática, por medio del reconocimiento de señales de tránsito, ayuda avanzada de aparcamiento, regulación inteligente de velocidad, más conocido como control de crucero adaptativo (ACC), asistentes de visión nocturna, detector de fatiga del conductor, aviso de mantenimiento de carril, ayuda de arranque, entre otras facilidades que logran mejorar la comodidad y principalmente la seguridad a la hora de viajar. Este análisis interactivo e inteligente de asistencia al conductor y de seguridad, que implica la estimación y predicción de la posición y el tamaño de los diversos obstáculos en la carretera. El procesamiento en tiempo real, dada la información incompleta e incierta, es un desafío para las tecnologías actuales de detección de objetos y de seguimiento, mucho de esto se verá a continuación. 18

20 Capítulo 2. Sistemas de asistencia a conductores Figura 2.1.4: Tecnologías utilizadas por los sistemas de asistencia al conductor. Los sensores electromagnéticos o radar, por medio de la emisión de ondas, permiten medir la distancia, la velocidad relativa y la posición lateral de los vehículos que se encuentran adelante. Estos pueden clasificarse según el tipo de alcance. Aquellos de largo alcance se montan en la parte frontal del vehículo y su alcance llega a superar los 100 metros de visión. Estos son utilizados principalmente en el control de crucero adaptativo (ACC), detectores de colisión y asistente de frenos. Por último, los radares de media y corta distancia son situados en distintas partes del vehículo, según su función. Por otro lado, los sensores de ultrasonido, conocidos como sensores de posición, permiten calcular distancias a ciertos obstáculos y por lo general se integran en los paragolpes, al igual de las cámaras, facilitando al conductor en maniobras de estacionamiento. Por último, los sensores de visión, situados en varias partes del vehículo, permiten detectar los carriles y las señales de tránsito, como también asistir al conductor al momento de estacionar el vehículo. El uso de estas cámaras permiten adquirir información de manera no invasiva, ya que no interfieren uno del otro en caso de múltiples vehículos atravesando el mismo área. Tienen un rol fundamental que consiste en la localización de líneas, señales de tránsito y detección de obstáculos. A comparación de otros sensores, la información visual obtenida es de una alta resolución espacial y temporal. Algunas de las principales tecnologías en desarrollo a nivel comercial en el mercado actual son presentadas a continuación. 19

21 Capítulo 2. Sistemas de asistencia a conductores Mantenimiento de carril Este tipo de sistemas utilizan sensores infrarrojos o de radar situados en la parte inferior del paragolpes delantero o cámaras instaladas detrás del parabrisas, junto al espejo retrovisor. Existen dos tipos de sistemas cuyo objetivo es garantizar el mantenimiento del carril. Por un lado, el sistema de advertencia de cambio de carril (Lane departure warning LDW ), registra y detecta continuamente las marcas viales del carril de circulación y alerta por medio de una señal sonora al conductor en caso de detectar un cambio imprevisto de carril, y permitiendo que el mismo tome la acción que considere correspondiente. Por otro lado, existe un sistema capaz de tomar acciones correctivas en caso de que el conductor no responda ante la alerta emitida. Estos sistemas son llamados Lane-Keeping Assist (LKA) (Figura 2.1.5). Las acciones correctivas van desde aplicar una presión de frenado sobre las ruedas apropiadas, hasta el acceso a controles de dirección asistida, proporcionando una corrección más suave. Figura 2.1.5: Asistencia en mantenimiento de carril Control de crucero adaptativo (ACC) El sistema ACC permite reducir la presión sobre el conductor ayudándole a mantener una distancia mínima predefinida con el vehículo que le precede. El sistema ACC mantiene la velocidad que el conductor establece y puede adaptarla a las condiciones del tráfico, acelerando o frenando automáticamente. Con la información que genera el sensor de radar, el sistema ACC registra la situación presente delante del vehículo. Si el conductor se aproxima al vehículo de delante, el sistema ACC frena ligeramente para garantizar que se mantenga la distancia mínima. Una vez que el carril vuelve a estar despejado, el sistema ACC vuelve a acelerar hasta llegar a la velocidad seleccionada anteriormente por el conductor. Esta tecnología (Figura 2.1.6) fue utilizada por varias marcas, tales como Volkswagen y BMW, y utiliza tanto cámaras estéreo como sensores de radar de medio y largo alcance. 20

22 Capítulo 2. Sistemas de asistencia a conductores Figura 2.1.6: Control de crucero adaptativo de Bosch Detección de obstáculos Estos sistemas permiten evitar o reducir la severidad de un accidente al detectar un obstáculo que se encuentra muy próximo. Generalmente se integran con sistemas ACC y utilizan el mismo tipo de sensores, como sensores de radar y cámaras. Una vez detectado el obstáculo a una cierta distancia, el sistema es capaz de detectar una inminente colisión y ejecutar ciertas acciones correctivas, cómo aplicar automáticamente los frenos o cambiar la dirección del vehículo Realidad aumentada Los parabrisas de realidad aumentada son parte de la búsqueda de las automotrices por fabricar los vehículos más seguros. Esta clase de parabrisas tendrán gráficos simples que les permitan a los conductores ver representaciones digitales de su entorno, como bordes de un camino o animales difíciles de ver, así cómo llamar la atención sobre conductores erráticos. La tecnología combina sensores en la parte externa del vehículo con sensores internos que monitorean los ojos del conductor. Un parabrisas de realidad aumentada puede percibir, por ejemplo, que un chofer no ha visto un vehículo que aparece en su carril o que debe reducir pronto la velocidad debido al tráfico. El parabrisas indica al conductor sobre esta situación, tornándose rojo o resaltando el peligro potencial para que el conductor tome una determinada acción al respecto, como aplicar los frenos. Automotrices como General Motors Co. trabajan en parabrisas que algún día podrían compartir información crucial con los conductores sobre sus alrededores y ayudar a mejorar la seguridad y la eficiencia. Gracias a una tecnología conocida como realidad aumentada, que superpone imágenes del mundo real y digital, estos parabrisas [23] también son capaces de dar instrucciones al conductor para llegar a un determinado lugar, visualizar mensajes de texto o peligros inminentes, tal como se indica en la imagen (Figura 2.1.7), sin que los conductores desvíen los ojos del camino. 21

23 Capítulo 2. Sistemas de asistencia a conductores Figura 2.1.7: Parabrisas inteligente. Existen también sistemas de conducción aumentada, que por medio del uso de una cámara de un teléfono celular, logran detectar los carriles y vehículos en la escena, los cuales son representados en capas sobre la pantalla del teléfono. Estos sistemas ofrecen una solución de menor costo con respecto a las soluciones mencionadas anteriormente. Su principal ventaja es que la plataforma de implementación un recurso de uso común. Estos sistemas logran detectar la velocidad a la que mueve el vehículo, identificar obstáculos y realizar mediciones de distancia a otros vehículos, alertando al conductor en situaciones de riesgo. Para esto, el sistema toma imágenes de la escena en intervalos de 10, 5 o 2 segundos, según la complejidad de la escena. Están diseñados para trabajar bajo buenas condiciones de luz, y necesita de una buena definición de las líneas para los detectar los carriles. Por tal motivo, en muchas condiciones estos sistemas no logran ser de gran utilidad. Algunos ejemplos de estos sistemas comerciales de conducción aumentada son Augmented Driving 3.0 para iphone (Figura 2.1.8) e ionroad Collision Warning para iphone y Android (Figura 2.1.9). Figura 2.1.8: Sistema de conducción aumentada [24]. 22

24 Capítulo 2. Sistemas de asistencia a conductores Figura 2.1.9: Sistema de alerta de colisión ionroad [25]. 2.2 Sistemas comerciales de asistencia en vehículos de alta gama Actualmente, existen en el mercado sistemas implementados sobre vehículos de alta gama, desarrollados por empresas tales como Audi [26], Ford [27], Mercedes Benz [28], Citroen [29], Honda [30], Toyota [31], Nissan [32], Volkswagen [33] y BMW [34]. Estos sistemas han logrado brindar a través del uso de cámaras y todo tipo de sensores, soporte para la detección de vehículos cercanos o cambios de carril, y llevar a cabo acciones tales como la reducción de velocidad. Por otro lado, son capaces de proveer al conductor de otras funciones de gran utilidad, como es el caso de Citroen LDWS, el cual cuenta con un control de tracción inteligente, pantalla de visualización frontal transparente, encendido automático de luces, detección de neumáticos poco inflados, entre otras facilidades Ford El Nuevo Mondeo posee un Sistema de Mantenimiento de Carril (Figura 2.2.1) detecta las líneas marcadas en la ruta y ayuda al conductor a mantenerse en el centro del carril. Utiliza una cámara frontal para monitorear la posición del vehículo y advertir cuando este tiende a desviarse involuntariamente. El sistema puede ser configurado en 3 estados: Alerta. Ante un cambio de carril sin activación de la luz de giro, el sistema alerta al conductor mediante una vibración en el volante y una señal luminosa en el panel de instrumentos. Asistencia. El sistema automáticamente provee asistencia en la dirección para volver el vehículo a su curso normal. Alerta + Asistencia. Provee asistencia, y luego activa la alerta si continúa la desviación del carril. 23

25 Capítulo 2. Sistemas de asistencia a conductores Figura 2.2.1: Sistema de mantenimiento de carril de Ford [35] Mercedes Benz Distronic Distronic (Figura 2.2.2) consiste en un control de Crucero Adaptativo (ACC), el cual permite regular la aceleración y el frenado, logrando así mantener una distancia acorde, respecto al vehículo enfrente. Mercedes-Benz fue uno de los primeros en incorporar este sistema capaz de obtener la distancia del vehículo a los obstáculos delante del mismo, a través de un sensor de radar ubicado en la parte delantera del vehículo (más exactamente ubicado sobre la insignia del mismo), Modelos desarrollados a partir del año 2006 permiten aplicar un frenado de emergencia o emitir una alerta sonora, en caso de detectar un vehículo muy cercano en condiciones extremas como cansancio o mala visibilidad. Figura 2.2.2: Distronic radar. Mercedes Benz Distronic Citroen LDWS Citroen LDWS (Lane Departure Warning System), es uno de los sistemas de detección de carriles más simples del mercado. Surgió a partir de la necesidad de reducir accidentes ocasionados, por ejemplo, por microsueños que producen un cambio involuntario de carril. Como se observa en la imagen (Figura 2.2.3), el sistema consiste en 6 sensores ubicados 24

26 Capítulo 2. Sistemas de asistencia a conductores debajo del paragolpes, los cuales permiten detectar cuando el vehículo se encuentra posicionado sobre la línea. Una vez detectada esta acción, se procesa la información y se emite una advertencia por medio de una vibración en la parte inferior del asiento, logrando alertar automáticamente al conductor. Figura 2.2.3: Sistema de alerta de cambio de carril. Citroen Honda HIDS Honda HIDS (Honda Intelligent Driver Support), al igual que el sistema Distronic de Mercedes-Benz, utiliza un sensor de radar que le permite detectar la posición de los objetos situados al frente y la velocidad entre el vehículo y uno situado enfrente (Figura 2.2.4). Por otro lado, cuenta con una cámara ubicada cerca del espejo retrovisor, que permite identificar el carril de conducción. Esta cámara toma imágenes correspondientes a la superficie del camino y las marcas, y es capaz de detectar cuando el vehículo se desvía de su carril (Figura 2.2.5), disparando una alerta. Por último, este sistema también permite tomar ciertas acciones como ajustar el cinturón de seguridad ante una supuesta colisión. Figura A: Honda (HiDS) patrón de control. 25

27 Capítulo 2. Sistemas de asistencia a conductores Figura B: Honda (HiDS) condiciones operacionales Toyota Lexus AODS Toyota AODS (Advanced Obstacle Detection System), consiste en un sensor de radar para la detección de vehículos, similar a Distronic de Mercedes-Benz, y una cámara estéreo ubicada debajo del espejo retrovisor. Estos sistemas funcionan tanto de día como de noche, pero tienen la desventaja de no lograr detectar ciertos obstáculos, como animales o peatones. Sí permite obtener la distancia a éstos objetos. En caso de detectar una posible colisión, se emite una alerta sonora al conductor. Al igual que en Honda HiDS, en caso de colisión inevitable, ajusta el cinturón de seguridad y frena el vehículo Nissan ICC Nissan ICC (Intelligent Cruice Control), a comparación del resto de los sistemas basados en el uso de radares, utiliza un sistema de sensor infrarrojo, logrando así detectar otro tipo de obstáculos como animales y peatones sin necesidad de incorporar cámaras para ésto. El sensor permite controlar la distancia a vehículos ubicados enfrente (Figura 2.2.5), y también reducir la velocidad del vehículo ante ciertos eventos, tales como detectar una señal de stop o una curva. Tiene una desventaja, y es que no logra funcionar con exactitud en condiciones extremas, tales como neblina o lluvia. Figura 2.2.5: Nissan (ICC). 26

28 Capítulo 2. Sistemas de asistencia a conductores Volkswagen ACC Volkswagen ACC cuenta con un sensor de radar basado en MMIC (Monolithic Microwave Integrated Circuit), el cual permite obtener la posición y la velocidad relativa de varios vehículos al frente a la vez. Estos sistemas basados en radares cuentan con la ventaja de que su correcto funcionamiento no depende de ciertas condiciones extremas, como neblina o lluvia, como ocurre en los sistemas basados en sensores infrarrojos BMW ACC BMW ACC desarrollado por Bosch, utiliza como varios de los anteriores, tecnología de radar (Figura B). Permite detectar vehículos a una velocidad que alcanza los 180 km/h y detectar vehículos a larga distancia (Figura A). Figura A: BMW (ACC). Figura B: Radar de Bosch utilizado por BMW (ACC). 27

29 Capítulo 2. Sistemas de asistencia a conductores 2.3 Conclusiones Si bien existen soluciones comerciales que tratan el problema, generalmente son sistemas cerrados que carecen de flexibilidad de configuración, y de la posibilidad de incorporar nuevas capacidades. Por otra parte, no se ajustan a nuestro nivel regional como por ejemplo: estado de las rutas ya sea por deterioros del pavimento o falta de marcación. La identificación de obstáculos también es dependiente de la región, ya que ésta, por ejemplo, determina las especies de animales o señales de tránsito nacionales que se puedan encontrar, y los tipos de vehículos que serán visualizados en la carretera (por ejemplo: maquinarias agrícolas). Sistemas como los mencionados anteriormente, como los sistemas LDW, tienen sus limitaciones. Estos sistemas, generalmente se basan en información visual para seguir la posición relativa del vehículo dentro del carril, por lo que cualquier factor que oscurece u obstruye las líneas, hará que esta tecnología falle. Existen factores que afectan directamente el desempeño de estos sistemas. Los sensores son componentes electrónicos que en algunos escenarios pueden tener una tasa de fallos considerable. Generalmente se ubican en la parte inferior de los vehículos, y deben lidiar con condiciones del suelo tales como vibraciones, suciedad, agua, etc. Por otro lado, algunos de estos sistemas no son capaces de detectar ciertos obstáculos, tales como animales o peatones, ni de ver correctamente en situaciones extremas de neblina o lluvia. Los sensores de visión, comparados con otro tipo de sensores, como sensores de radar o ultrasonido, son menos robustos en condiciones extremas, tales como lluvia, neblina, nieve, exceso de sol, entre otras. En otros contextos, como por ejemplo el de un día soleado, la aparición de ciertos objetos (árboles, autos, construcciones, puentes), pueden generar sombras, las cuales afectan el color y la textura del camino. La aparición de ciertos obstáculos o vehículos, pueden obstruir parte de la ruta, generando una discontinuidad en las marcas del carril. Todos estos factores inciden directamente sobre la confiabilidad del sistema. 28

30 Capítulo 3. Procesamiento de imágenes en Sistemas I2DASW La información óptica de un ambiente generalmente permite determinar diversas características acerca del mismo. De esta forma, mediante el procesamiento de imágenes es posible reconocer objetos, texturas, colores, entre otras características de interés. El uso del procesamiento de imágenes aplicado en sistemas I2DASW está ampliamente documentado en la literatura, utilizándolos en diferentes ambientes, diferentes técnicas, e incluso diferente orientaciones de la cámara en el vehículo. Sin embargo, la captura y análisis de una imagen no puede proporcionar información tan completa, robusta y precisa como lo requieren los Sistemas I2DASW (Interactive Intelligent Driver-Assistance and Safety Warning). Los sensores de imagen tienen algunos problemas, como la baja capacidad de detección de la profundidad y una mayor capacidad de discriminación. Estas falencias pueden ser corregidas parcialmente por medio del uso de técnicas de procesamiento de video, agregando de esta forma la dimensión temporal a las imágenes. Una cámara de video situada dentro de un vehículo permite detectar por ejemplo, si el tipo de conducción es diurna, nocturna o bajo condiciones de baja visibilidad, promediando los valores de intensidad de los píxeles de la parte superior de la imagen. Detectando líneas en las imágenes es posible estimar el punto de fuga de la perspectiva, lo cual permite identificar el patrón de manejo y estimar la posición del móvil dentro de la ruta. Observando la evolución temporal de puntos notables de la imagen es posible estimar la velocidad del vehículo. Por último, el desplazamiento del punto de fuga en una dirección perpendicular al desplazamiento proporciona información de la irregularidad de la ruta, pudiendo indicar una situación de peligro. Un sistema de procesamiento de imágenes opera a partir de una imagen óptica, la cual se captura mediante el uso de foto-detectores que permiten digitalizar la escena. Las cámaras incorporan elementos de escaneo de líneas o regiones para llevar a cabo la digitalización. Este proceso conlleva el muestreo, la representación de datos y su digitalización. La representación digital de la escena es la entrada a un sub sistema de mejora de imagen, que modifica y prepara los valores de los píxeles de una imagen digital para producir una más adecuada para las operaciones posteriores. Las principales operaciones que la componen, entre otras, son: operaciones sobre pixeles (modificación de brillo, contraste, negación, umbralado), operaciones globales (ecualización del histograma, eliminación de ruido), operaciones regionales (realce de bordes, suavizado), operaciones geométricas (ampliación, rotación), y operaciones temporales (basadas en frames). La imagen mejorada es captada por la etapa de segmentación de imágenes. Este es el proceso por el cual una imagen es dividida en áreas conectadas no solapadas denominadas regiones de acuerdo a un criterio gobernante de similitud u homogeneidad. La segmentación de imágenes es un proceso fundamental en diferentes aplicaciones de procesamiento de imágenes, ya que los resultados de las etapas posteriores dependen de la calidad de segmentación lograda. El objetivo principal de la etapa es llevar a cabo una partición de la imagen en regiones homogéneas e interconectadas, sin tener en cuenta conocimiento adicional acerca de los objetos presentes en la imagen. La homogeneidad está relaciona con el color y la texturas. Finalmente, la selección y extracción de características utilizadas es uno de los aspectos más delicados dentro del diseño de un sistema de visión. En su definición es imposible evaluar cuantitativamente los efectos al aplicar los criterios seleccionados. En imágenes, este proceso transforma la representación gráfica de los datos de entrada en una 29

31 Capítulo 3. Procesamiento de imágenes en Sistemas I2DASW representación abstracta compuesta por un conjunto de valores o símbolos, siendo capaz de seleccionar las características salientes compartidas por todas las muestras de una misma clase, manteniendo separadas las descripciones de muestras pertenecientes a diferentes categorías. En las siguientes secciones se analizan las técnicas de detección de carriles y obstáculos encontradas en la literatura. 3.1 Detección de carriles La detección de carriles hace referencia a localizar los límites de un carril sin tener conocimiento de la infraestructura del camino. La detección de un carril es de gran importancia, ya que permite detectar curvas cerradas, obstáculos y la posición del vehículo sobre la ruta. Muchas veces el conductor puede intencionalmente cambiar de carril, o simplemente no ser consciente de esto y salirse del mismo. Por tal motivo, es importante conocer en cada momento la posición del vehículo sobre la ruta y lograr así alertar al conductor sobre posibles situaciones. Existen varias técnicas utilizadas para la detección y seguimiento de las líneas que conforman un carril que utilizan los siguientes supuestos: - La textura del carril es consistente. - El carril está correctamente delimitado. - El ancho del carril es constante. - Las señalizaciones siguen reglas estrictas para la aparición o la colocación. - La carretera es una superficie plana o sigue un estricto modelo de cambio de elevación. Los algoritmos existentes tienden a utilizar al menos uno o más de los supuestos previamente mencionados, lo que tiende a mejorar los resultados generales. Sin embargo, estos supuestos pueden fallar. La hipótesis de la textura constante de la carretera puede mejorar en gran medida los resultados de toda la superficie de la carretera, se puede utilizar como una característica más que sólo las marcas viales. En situaciones en las que las marcas viales son escasas o ausentes, puede proporcionar una estimación para la posición en el carril. La suposición de que el camino o el ancho de carril son constantes puede mejorar en gran medida el rendimiento al permitir la fusión de los límites laterales de la mano izquierda y derecha. Las marcas viales son a menudo líneas sólidas continuas más claras sobre una superficie oscura de carretera. Frecuentemente, se asume que la superficie de la carretera es plana o sigue un modelo de constante elevación. Esto es preciso la mayor parte del tiempo, en cambio, las suposiciones de las elevaciones pueden conducir a una estimación incorrecta de la curvatura de la carretera. Los objetivos de muchos sistemas, están orientados hacia el control de vehículo autónomo. El sistema VaMoRs [36] utiliza múltiples procesadores y lentes de gran ángulo y telefoto para la conducción de vehículos. El sistema fue probado en un camino rural con colinas. Para el control autónomo, el sistema puede ajustar la velocidad del vehículo, lo que permite más tiempo para el cálculo. Otro sistema de seguimiento del camino (YARF) [37] utiliza múltiples funciones y la estimación para mejorar el desempeño de la tarea de conducción autónoma. Se utilizan para identificar situaciones en las que la estructura de la carretera va cambiando. Taylor et al. [38] Muestran un sistema de control del vehículo que se analizaron utilizando una variedad de esquemas de control, que pusieron a prueba en una pista de pruebas ovalado y el 30

32 Capítulo 3. Procesamiento de imágenes en Sistemas I2DASW rendimiento está basado en la distancia entre los vehículos y la línea central. La asistencia al conductor con visión en tiempo real (DARVIN) [39] fusiona información de GPS con la información de la visión. El uso de un sistema de GPS proporciona mayor precisión, un conocimiento más exacto de la estructura de la carretera y de la ubicación del vehículo. Pero el uso del GPS hace que el sistema sea más dependiente de una de infraestructura en constante actualización y sólo proporciona los conocimientos hasta al último minuto de la posición del vehículo. El sistema (GOLD) [40] combina el seguimiento de carril con la detección de obstáculos. Una función especial encuentra marcas basadas en las diferencias entre un píxel y sus vecinos. Más recientemente, la Springrobot [41] utilizó Hough Adaptive Transform para el procesamiento de bordes detectados. Mientras que los sistemas mencionados anteriormente se han centrado principalmente en el control autónomo, otros se han centrado en las advertencias de cambio de carril y de asistencia al conductor. Kwon y Lee [42] están basados en una arquitectura modular que permite la fusión de múltiples funciones. La posición en el carril y la velocidad se incorporan después en una salida heurística. Otro sistema centrado en alertas es (LOIS) [43]. En este sistema, magnitud del borde y la orientación fue usada, con un estimador máximo para proporcionar posición en el carril. Risack et al. [44] Mide el rendimiento, con pocos resultados cuantitativos relacionados con el seguimiento. Otra gran diferencia entre los diversos sistemas que se han desarrollado, deriva de los tipos de entornos para los que fueron diseñados. Ma et al. [45] presenta un sistema que fusiona la información del radar con la visión para navegar los caminos rurales. Las imágenes de radar mejoran el rendimiento frente a condiciones climáticas, como la nieve, que obstruye la vista de la cámara. El sistema GPS Darvin mencionado anteriormente utiliza GPS para permitir la navegación a través de las zonas urbanas. La gran mayoría de los sistemas, sin embargo, están diseñados para entornos de autopistas. Esto es importante para el sector comercial, en la cual una gran cantidad de investigaciones se han realizado [46]. Se han visto que las mejoras en el rendimiento se pueden hacer mediante la aplicación de extractores de características que utilizan múltiples señales o pueden ser utilizados para extraer múltiples tipos de marcas viales. Las suposiciones sobre los modelos de la ruta y los vehículos también han demostrado que aumentan considerablemente el rendimiento. A menudo, las pruebas se realizan sobre unos pocos ambientes, lo que hace que lleven a desarrollar un sistema de seguimiento de carril diseñado para funciones de asistencia al conductor capaz de trabajar bien bajo una variedad más amplia de ambientes. También es importante proporcionar una evaluación completa del sistema para permitir una mejor comparación de los resultados entre los distintos entornos. Esto incluye la evaluación del sistema en distintos momentos del día con diferentes marcas viales y texturas, así como tomar un vistazo de cerca a los escenarios de casos especiales, tales como túneles, para obtener una medida cuantitativa precisa del rendimiento. A continuación se muestra un cuadro (Tabla 3.1.1) comparativo con varias de las técnicas mencionadas. Esta tabla presenta un compendio y compara diversos algoritmos de detección y seguimiento de posición de carriles, en relación con los objetivos del sistema en el que se han implementado. En la tabla se detallan las principales características de los sistemas, las técnicas de post-procesado para la detección de carriles, la metodología de evaluación del algoritmo y comentarios acerca del rendimiento y confiabilidad del algoritmo. 31

33 Capítulo 3. Procesamiento de imágenes en Sistemas I2DASW Tabla 3.1.1: Comparación de varias técnicas de detección y seguimiento de carril. Se consideró el uso de algunas de estas técnicas, durante las etapas de preprocesamiento para la extracción de características, y de post-procesamiento para la detección de carriles. Los sistemas VaMoRs y Nedevschi et al. permiten extraer elementos de borde, eliminando puntos que no estén alineados y puntos anormales. La detección de bordes es sencilla, aunque provee cierto tipo de fallas en situaciones particulares, como la aparición de sombras. Por otro lado, el sistema Gold provee mecanismos de umbralización de gran utilidad como un paso posterior a la detección de bordes, ya que permite resaltar aún más los mismos, y descartar cierto ruido generado durante la detección de bordes. 32

34 Capítulo 3. Procesamiento de imágenes en Sistemas I2DASW Por último, Lee et al y Taylor et al permiten en una etapa de post-procesamiento la detección de carriles, a partir de la implementación del algoritmo de Hough. 3.2 Identificación de obstáculos La detección de líneas en una imagen es importante, ya que permite delimitar regiones y objetos. Objetos inmóviles como postes y carteles, son un posible peligro para los conductores, y aún más lo son los peatones, ya que sus movimientos son más lentos e impredecibles. A pesar de ello, el objetivo principal consiste en enfocarse únicamente el análisis de objetos que se encuentren situados de frente al vehículo, es decir, sobre el carril en el que el vehículo se encuentre circulando. Las técnicas existentes de detección de obstáculos se dividen en las siguientes categorías [47], según el tipo de captura utilizada: - Cámara monocular. Estos métodos requieren de un procesamiento complejo y son sensibles al movimiento del vehículo. No logran detectar obstáculos estáticos, sólo obstáculos en movimiento. - Cámara monocular de movimiento. Detectan obstáculos a partir de la búsqueda de ciertas características, como la forma o la simetría. Estos métodos sólo pueden ser utilizados para detectar un tipo específico de objeto, como por ejemplo, un peatón o un vehículo. - Visión estéreo. Utilizan varias cámaras para lograr detectar imágenes desde diferentes ángulos en simultáneo, y a partir de ese conjunto de imágenes se realiza un matching para lograr detectar los obstáculos. Estos métodos requieren de un tiempo de cálculo para realizar los cálculos necesarios y al igual que la cámara monocular, es sensible al movimiento. Con el uso de una cámara monocular es posible lograr un procesamiento en tiempo real más económico, pero se estaría evitando prevenir sobre la aparición de ciertos obstáculos estáticos que podrían causar peligro, por ejemplo una caja sobre la ruta que cayó de un vehículo. La identificación de objetos en movimiento, como los vehículos, requiere lograr localizar su posición y estimar el movimiento de los mismos entre dos frames consecutivos de video. Existen varios métodos de rastreo de vehículos propuestos por varios investigadores [48]. En primer lugar, los métodos basados en extracción de características (Figura 3.2.1) se basan en el aprendizaje, a partir de la utilización de imágenes de prueba para etiquetar ciertas características de los objetos, como el borde o la esquina del vehículo. Este método ha sido testeado para detectar objetos tales como personas, rostros y vehículos principalmente [49]. 33

35 Capítulo 3. Procesamiento de imágenes en Sistemas I2DASW Figura 3.2.1: Método basado en la extracción de características. Algoritmos basados en este tipo de modelos son SIFT y SURF. SIFT permite detectar y describir las características locales en las imágenes, fue descubierto en 1999, es una técnica bastante joven, pero existe otra técnica inspirada en ésta es SURF, un método inspirado en SIFT que se destaca por su rapidez. Ambos algoritmos están basados en la extracción de puntos de interés, y combinados con un algoritmo de aprendizaje (SVM), y permiten clasificar dichos puntos. A su vez estos algoritmos son combinados con algoritmos de clustering, conocidos como algoritmos AP (Affinity Propagation), los cuales permiten agrupar los puntos de interés. Los modelos basados en contexto (context driven), para la clasificación de las imágenes de prueba utilizan algoritmos de aprendizaje supervisado (SVM) y un descriptor de características mediante un histograma para representar los contornos del objeto (HOG). Ciertas características como el tamaño y la forma, permiten distinguir un vehículo de un falso positivo. Estos modelos a su vez, analizan la información que brinda el contexto de la escena [50]. En los modelos basados en transformaciones de color propuestos por Luo-wei tsai y Jun-wei hsieh et al. [51], en una primera instancia el algoritmo distingue los pixeles que forman parte del objeto de aquellos que conforman el resto de la imagen. Para esto utiliza un clasificador bayesiano. Los modelos basados en el uso de redes bayesianas, propuestos por Hsu-Yung Cheng y Chih-Chia Weng et al. [52], utilizan un modelo orientado a pixeles. En la fase inicial de aprendizaje se extraen ciertas características en una imagen, como los bordes y esquinas. Las redes bayesianas permiten luego clasificar el color de los objetos y el color del resto de la imagen por medio de la clasificación de pixeles. Extrae las características de la imagen por medio de la eliminación del fondo, y en una fase posterior de clasificación, logra identificar los obstáculos comparando los resultados reales con los obtenidos durante la etapa de aprendizaje. Modelos basados en la extracción de objetos, introducidos por Ashley C. Holt y Edmund Y.W. Seto et al [53], presentan un enfoque orientado a objetos para la detección y clasificación de vehículos en videos de alta resolución. Cuenta con tres pasos: segmentación, aprendizaje y validación. Con este método se obtienen buenos resultados para imágenes estáticas y en escala de grises. 34

36 Capítulo 3. Procesamiento de imágenes en Sistemas I2DASW Técnica utilizada Ventajas Desventajas Color transform model. Uso de colores normalizados y matriz de bordes SIFT/SURF with SVM and AP. Basado en la extracción de características en imágenes de baja resolución Object oriented target detection. Basado en la extracción de objetos Dynamic Bayesian Network. Clasificación de pixeles Context driven Detection and motion analysis - Buen funcionamiento en días soleados. - Funciona con imágenes de baja resolución y baja calidad. - Utiliza muy pocas imágenes de prueba. - Facil de implementar - Buenos resultados con imágenes en escala de grises. - Logra detectar obstáculos que se mueven a gran velocidad - Utiliza muy pocas imágenes de prueba. - Funciona con imágenes de baja resolución - Utiliza imágenes de prueba del banco de imágenes CLIF - Utiliza muy pocas imágenes de prueba. - Requiere de imágenes de alta resolución. - Solo funciona para detectar objetos en imágenes estáticas. - Utiliza un gran número de imágenes de prueba - Alta complejidad computacional. - Requiere de imágenes de alta resolución. - Solo funciona para detectar objetos en imágenes estáticas. - Utiliza un gran número de imágenes de prueba - No funciona bien con videos de bajo contraste. - No funciona en imágenes inclinadas y tampoco detecta vehículos rotados. - Alta tasa de falsos positivos Tabla 3.2.1: Comparación de varias técnicas de detección y seguimiento de obstáculos. En el cuadro anterior (Tabla 3.2.1) se sintetiza brevemente para cada una de las tecnologías involucradas, puntos favorables y desfavorables como pueden ser la velocidad de procesamiento, la tasa de aciertos y de fallos (Figura 3.2.2), tipo de imágenes que logran procesar, entre otras características. La tasa de aciertos y de fallos es un factor a tener en cuenta al momento de decidir qué técnica utilizar. Figura 3.2.2: Tasa de aciertos y fallos para las diferentes técnicas de detección de obstáculos. 35

37 Capítulo 3. Procesamiento de imágenes en Sistemas I2DASW El objetivo de este análisis es lograr comparar los diferentes enfoques y detectar aquel que brinde resultados con un buen nivel de exactitud y una tasa de fallos relativamente baja. Por otro lado, se busca que la cantidad de imágenes de prueba requerida no sea muy alta. Por lo tanto, teniendo en cuenta el factor de relación aciertos/fallos según el gráfico anterior, y la cantidad de imágenes necesarias de prueba, las técnicas SIFT/SURF basadas en las detección de características en imágenes de baja resolución resultan una buena opción a tener en cuenta. Si se busca una mayor precisión, SIFT es la opción recomendada, mientras que si se busca una mayor velocidad, SURF es la opción indicada. 3.3 Conclusiones Como se ha mencionado anteriormente, existen condiciones extremas, como situaciones de escasa visibilidad ante lluvia, neblina, sol de frente, o la noche. A su vez, en contextos tales como un día soleado, la aparición de ciertos objetos (árboles, autos, construcciones, puentes), pueden generarse sombras, las cuales afectan el color y la textura del camino. Por tales razones, los sensores de visión suelen ser poco robustos, generando una discontinuidad en las marcas del carril y falsos positivos. Por otro lado, debido a la gran cantidad de imagen y video que deberá ser procesada, se requiere del diseño de una cierta arquitectura y un procesamiento paralelo que logre mantener la performance del sistema. Teniendo en cuenta todas limitaciones existentes, es necesario tomar algunas suposiciones para lograr garantizar el correcto funcionamiento del sistema. Algunas de estas suposiciones se listan a continuación: - Existe un alto contraste entre las líneas del carril y el resto de la carretera. - Las líneas de carril, sean centrales o límites del mismo, pueden ser líneas punteadas o simples, pero siempre mantienen una continuidad. - Solo se hace hincapié en las regiones de interés, es decir, no se analiza la totalidad de la imagen. - El ancho de las líneas no varía. La búsqueda se limita únicamente a la aparición de líneas casi paralelas. - En lo que se refiere a la geometría del camino, el procesamiento se basa en obtener líneas de orientación recta, siguiendo el modelo Straight road. 36

38 Capítulo 4. Desarrollo El presente capítulo describe el desarrollo del sistema de asistencia al conductor, cuya funcionalidad principal es proveer al conductor información de interés respecto a su conducción y el entorno, tomando como entrada las imágenes captadas por una cámara de video. El sistema busca mejorar la calidad de conducción a través de la extracción de características de una imagen. A partir de dicho procesamiento se pueden detectar carriles y obstáculos, y tomando como referencia la ubicación del vehículo se alerta al usuario de maniobras no seguras, como desvíos o cambios de carril no permitidos, distancias prudentes a los obstáculos y posibles riesgos de colisión si fuese necesario. También provee una interfaz de usuario que permite resaltar sobre las imágenes captadas por la cámara, los carriles, el área de conducción y los obstáculos detectados. A su vez, brinda otro tipo de información de gran utilidad, como la simulación de la velocidad (km/h) y las alertas sonoras que notifican al conductor sobre posibles situaciones de riesgo, como por ejemplo las ya mencionadas, cambios de carril u obstáculos cercanos situados sobre el mismo carril de conducción. A continuación se detallarán los algoritmos seleccionados para llevar a cabo la extracción de carriles y detección de obstáculos, técnicas de filtrados durante el preprocesamiento, librerías utilizadas que proveen dicha funcionalidad y consideraciones a tener en cuenta, como es la selección de las líneas óptimas durante el post-procesamiento, entre otras. Por último, se explicará el desarrollo del framework I2DASW, comenzando con el análisis de la arquitectura que se decidió aplicar, y continuando con el diseño detallado del mismo, incluyendo diagramas de capas, bloques, clases, entre otros. El desarrollo del sistema se basa en tres módulos principales, el detector de carriles, el detector de obstáculos, y el framework I2DASW. El objetivo principal del detector de carriles consiste en analizar los frames capturados para evaluar y devolver las tres líneas de la carretera (límite derecho, límite central y límite izquierdo), o al menos las dos líneas del carril por donde el vehículo está circulando. El módulo de detección de obstáculos, por otro lado, analiza los mismos frames, y los procesa en búsqueda de objetos que puedan llegar a interferir en la conducción. Ambos módulos reconocedores funcionan en paralelo, sin interferir entre ellos. En un próximo capítulo se explica que existe un motor de decisión, el cual tomará los datos obtenidos por estos módulos, y determinará en base a la ubicación del vehículo, de los carriles y del obstáculo encontrado (si es que existe), si es necesario disparar algún tipo de alerta de desvío de carril o de posible colisión, por ejemplo (Figura 4.1). 37

39 Capítulo 4. Desarrollo Figura 4.1: Sistemas de detección de carriles y obstáculos. Para el desarrollo de los algoritmos de detección fueron utilizadas dos librerías provistas por Mitov Software [54], VisionLab y VideoLab, las cuales proveen de un set de filtros de gran utilidad para la extracción de ciertas características en una imagen. Mitov Software está especializado en el desarrollo de software de alto rendimiento y soluciones de flujo de datos que implican procesamiento de audio y video, visualización de datos, control de hardware, programación paralela, entre otros. Los principales componentes utilizados, mencionados en la siguiente sección, proveen filtros que implementan técnicas de preprocesamiento (como umbralado y realce de bordes), y algoritmos de detección de líneas (Hough) y otro tipo de características. 4.1 Detección de carriles Para comenzar con esta sección referida a la detección de carriles, es importante mencionar una serie de consideraciones generales que se tuvieron en cuenta respecto a cómo es una correcta señalización de las líneas en los diferentes tipos de caminos, basado en el Manual de Señalamiento Horizontal de la Dirección Nacional de Vialidad, aprobado por Resolución 2501/2012 [55], a modo de obtener una base teórica sobre la cual se trabajará posteriormente. 38

40 Capítulo 4. Desarrollo Las líneas según su ubicación en la calzada se clasifican en 3 categorías. Las líneas centrales o Eje (H1) indican la separación de corrientes de tránsito de sentidos opuestos e incluye zonas con y sin prohibición de adelantamiento. La línea de Borde (H3) indica a los conductores dónde se encuentra el borde de la calzada, permitiendo posicionarse correctamente en la vía. Finalmente, la línea de carril (H2) indica la separación de corrientes de tránsito que circulan en el mismo sentido. Por su forma, se clasifican en líneas continuas, discontinuas o mixtas según su trazo. A su vez, la cantidad de líneas paralelas permite distinguir entre líneas simples (individuales) o dobles. Por último, en base a su dimensión pueden categorizarse entre líneas normales o anchas (Figura 4.1.1). Si nos referimos a los colores de las líneas, las marcas a utilizar en la Red Nacional de Caminos son generalmente blancas o amarillas. El color blanco se utiliza en el caso de marcas longitudinales para separar generalmente corrientes de tránsito en el mismo sentido, para marcas transversales, y para marcas especiales en caso que corresponda (Isletas, Aproximaciones a Obstrucciones). El color amarillo se utiliza en marcas longitudinales para separar exclusivamente corrientes de tránsito en sentido opuesto y para marcas especiales en caso que corresponda (Isletas, Aproximaciones a Obstrucciones). Se aplica también sobre el borde izquierdo de autovías o semi-autopistas. Las Líneas Longitudinales, son las que se ubican en forma paralela a la carretera. Suministran guía positiva al indicar al usuario de la carretera los límites de las áreas de la calzada donde es seguro circular. Definen y delimitan anchos de carriles y calzadas. En un sentido más amplio, indican dónde es seguro sobrepasar a otro vehículo. A su vez, suministran guía negativa ; esto es, indican áreas donde no es seguro circular o directamente está prohibido hacerlo. En ese sentido definen zonas con prohibición de sobrepaso. De acuerdo al Anexo L Capítulo VI Punto 27, son franjas de ancho mínimo de 0,10m a 0,30m y deben ser reflectivas. Las líneas longitudinales presentan dos tipos de trazo: continuo y discontinuo. El trazo continuo significa que la línea no se puede traspasar. El trazo discontinuo significa que la línea se puede traspasar. El trazo discontinuo está caracterizado por la sucesión de una marca o bastón que es el segmento pintado, seguido de un vacío o brecha que es el segmento sin pintar. Figura 4.1.1: Aplicación de diferentes tipos de líneas. 39

41 Capítulo 4. Desarrollo Es importante destacar que una línea continua, independientemente de su color amarillo o blanco, indica que no debe ser traspasada ni circular sobre ella. Se utiliza como Línea de Borde, siendo de color blanco en carreteras convencionales y en el margen derecho en carreteras multicarriles y de color blanco o amarillo en el margen izquierdo, según se trate de autopistas o autovías respectivamente. Una doble línea continua refuerza el concepto de lo anterior y define una separación mínima entre ambos sentidos de circulación. Se utiliza como Línea Central o separadora de sentidos de circulación. Una línea discontinua indica la posibilidad de ser traspasada. Se utiliza básicamente como Línea de Carril, o como Línea Central. Se la utiliza como extensión de Línea de Borde en intersecciones importantes y en enlaces. Por último, las líneas continuas y discontinuas paralelas indican la permisión de traspasar en el sentido de la discontinua a la continua y la prohibición de hacerlo de la continua a la discontinua. Se la emplea como Línea Central. En normas generales, las líneas centrales en zonas sin prohibición de sobrepaso, las de carril y de borde consisten en franjas de trazo discontinuo de color blanco, mientras que la línea central en zonas con prohibición de sobrepaso consiste en una franja de trazo continuo de color amarillo. Todas deben tener un ancho no inferior a 0,10m. En base a los criterios expuestos, a continuación se mostrará un análisis de las técnicas existentes de realce de bordes y detección de líneas, qué algoritmo es conveniente aplicar sobre la imagen y así obtener un número más acotado de líneas mediante un postprocesamiento. Por último, se hace un reconocimiento de las líneas del carril y una vez detectados los filtros, se puede definir como conectarlos y cuáles serían las entradas y las salidas del reconocedor que se encargará de aplicar el algoritmo analizado para finalmente devolver el conjunto de líneas que se están buscando Realce de bordes Como se mencionó recientemente en este sub-capítulo se analizarán las técnicas o filtros existentes para el realce de bordes y detección de líneas. Primero se necesita saber en profundidad que un borde en una imagen digital se puede definir como una transición entre dos regiones de niveles de gris significativamente distintos. Estos bordes brindan una valiosa información sobre las fronteras de los objetos, que puede ser utilizada para segmentar la imagen o reconocer objetos. Como paso inicial a la detección de carriles fue necesario introducir filtros de entrada que permiten realzar los bordes en la imagen, y así facilitar su posterior procesamiento. Al hablar de filtros, se entiende a máscaras que permiten obtener resultados específicos. El proceso de filtrado consiste en la aplicación de una matriz de tamaño NxN (generalmente de 3x3 aunque puede ser mayor) compuesta por números enteros, a cada uno de los pixeles de la imagen, y que genera un nuevo valor mediante una función del valor original y los de los píxeles circundantes. El resultado final se divide entre un escalar, generalmente la suma de los coeficientes de ponderación. La mayoría de las técnicas utilizadas para realzar bordes emplean operadores locales basados en distintas aproximaciones de las derivadas (primera y segunda) de los niveles de grises de la imagen. 40

42 Capítulo 4. Desarrollo Las distintas aproximaciones del operador gradiente se basan en diferencias entre los niveles de grises de la imagen. Las derivadas parciales f x(x, y) y f y(x, y) (gradiente de fila o columna) pueden aproximarse por la diferencia de pixeles adyacentes de la misma fila o misma columna respectivamente. Los operadores más utilizados para el realce de bordes son los de Roberts, Prewitt y Sobel [56]. Se realizaron pruebas con estos filtros, y a su vez los mismos fueron combinados con umbralado, a fines de transformar todas las intensidades de un rango a un solo valor y así resaltar la imagen resultante. Finalmente, se logró resaltar los bordes con un valor de intensidad 255 o blanco. Luego de varias pruebas se definió para esto un valor de umbral en RGB (Red, Green, Blue) de (64, 64, 64), el cual a su vez puede ser configurado. Se aplicaron inicialmente los tres filtros mencionados y umbralado adicional. La aplicación del filtro de Roberts (Figura 4.1.2) obtiene una buena respuesta ante bordes diagonales, pero es extremadamente sensible al ruido y por lo tanto tiene pobres cualidades de detección. Figura 4.1.2: Filtro de Roberts. Los filtros de Sobel y Prewitt (Figura 4.1.3) en la práctica brindaron resultados similares entre ellos y ambos superiores al filtro de Roberts. Sin embargo, se detectó que el filtro de Sobel era levemente más eficiente en evitar la detección de ruidos. Por consiguiente, se decidió utilizar este último. No obstante, se permitirá durante la ejecución de la aplicación, optar por medio de la pantalla de configuración entre el uso de ambos filtros. 41

43 Capítulo 4. Desarrollo Figura 4.1.3: (a) Filtro de Sobel. (b) Filtro de Prewitt Detección de carriles potenciales Para la detección de carriles potenciales se investigó la transformada de Hough que es ampliamente utilizada para la búsqueda de líneas rectas, pero también se puede utilizar para la búsqueda de cualquier figura expresable analíticamente. Por este motivo, se puede representar por un conjunto de parámetros, tal como circunferencias y elipses. Una circunferencia se puede representar en un conjunto de 3 parámetros, definidos como su centro y radio, de tal forma que con el espacio Hough se convierta en 3 dimensiones. Esto permite que una elipse o curvas arbitrarias se puedan encontrar de la misma forma que por medio de un conjunto de parámetros. En un primer paso, requiere del uso de un detector de bordes que permita obtener los puntos de la imagen que pertenezcan al contorno de la figura buscada. En éste caso particular, siendo r = x cosθ + y senθ la ecuación de la recta en forma polar. El objetivo de la transformada de Hough será encontrar puntos alineados que puedan existir, es decir, puntos en la imagen que satisfagan la ecuación de la recta, para distintos valores de r y θ, donde r es la distancia entre la línea y el origen, y θ es el ángulo del vector desde el origen al punto más cercano. El siguiente paso es evaluar la ecuación de la recta para cada punto de la imagen (x,y). Si se cumple esta ecuación se incrementa en uno el número de votos de la celda, donde un 42

44 Capítulo 4. Desarrollo elevado número de votos indica que el punto pertenece a la recta. Este valor de votos equivale a la longitud de línea. Por cada punto se dibujan un número de líneas continuas que pasan por los mismos, con distintos ángulos. Por cada línea se dibuja una recta perpendicular a ésta que pasa por el origen de coordenadas. Por cada una de estas líneas discontinuas se calcula la longitud y el ángulo. Finalmente, se crea un grafo con las longitudes de las líneas por cada ángulo, conocido como grafo del espacio de Hough. Se muestra un pseudocódigo de cómo debería funcionar el algoritmo para detectar rectas en una imagen: 1 - Cargar imagen 2 - Detectar los bordes en la imagen 3 - Por cada punto en la imagen: 4 - Si el punto (x, y) está en un borde: 5 - Por todos los posibles ángulos θ: 6 - Calcular r para el punto (x, y) con un ángulo θ 7 - Incrementar la posición (r, θ) en el acumulador 8 - Buscar las posiciones con los mayores valores en el acumulador 9 - Devolver las rectas cuyos valores son los mayores en el acumulador. Existen ciertos aspectos a tener en cuenta al usar este algoritmo. Por un lado, el algoritmo provee detección de múltiples instancias de una pasada, robustez ante ruido y presencia de otro tipo de formas. Por otro lado, el costo computacional de usar este algoritmo es muy alto y se pueden detectar falsos positivos. La eficiencia de la transformada de Hough depende de la calidad de los datos de entrada del algoritmo: los bordes se deben detectar bien para que sea eficiente el procedimiento. Usar la transformada de Hough en imágenes con mucho ruido suele ser un problema y generalmente se debe aplicar algún tratamiento a la imagen para eliminarlo. Por los errores que se pueden cometer detectando bordes, existirán imperfecciones en el espacio acumulador, lo que puede hacer que no sea trivial encontrar los picos correctos y por lo tanto, las figuras apropiadas Post procesamiento Como fue mencionado anteriormente, el algoritmo de Hough devuelve todas aquellas líneas que cumplen con las condiciones prefijadas, por lo que es necesario realizar un post procesamiento para mejorar los resultados y filtrar las líneas no válidas debido a su grosor, curvatura de los carriles, como también al resto de los objetos que componen la imagen en sí, ya sea un árbol, un cartel de señalización, una banquina, etc. (Figura 4.1.4). 43

45 Capítulo 4. Desarrollo Figura 4.1.4: Resultado de aplicar el algoritmo de Hough. Por esa razón, se cuenta con un módulo encargado de recibir las líneas candidatas, y descartar todas aquellas que cumplan con similares características. A su vez, este módulo se encarga de definir entre las líneas resultantes, cuál es la línea izquierda, la central y la derecha, a partir de una lógica introducida. Debido a la curvatura de las líneas y cierto ruido introducido, Hough devuelve varios segmentos resultantes sobre un mismo carril. Se debe seleccionar aquel que sea óptimo y pase exactamente sobre el carril, para poder posteriormente realizar los cálculos que permiten obtener el tipo de línea a partir de su color. Para esto se introduce una lógica que recorre la línea y calcula su valor promedio de intensidad. Finalmente se selecciona aquella línea que mayor valor de intensidad promedio tenga. La primera línea que se intenta reconocer es la izquierda, que será detectada en los casos donde el carril de conducción sea el izquierdo, o cuando los carriles se encuentren perfectamente señalizados, permitiendo detectar ambos carriles. Cuando el vehículo se encuentre situado en el carril izquierdo es importante obtener esta línea izquierda, dado que si el vehículo se encontrara sobre el carril derecho, nuestras líneas de interés serían la central y la derecha. Esta línea se intenta detectar buscando una recta de orientación positiva, en base a dos puntos P1 y P2 que conforman las líneas obtenidas mediante Hough (Figura a). El segundo paso es lograr detectar la línea derecha, la cual al igual que se mencionó anteriormente, será detectada mayormente en los casos en que el vehículo se encuentre sobre el carril derecho (Figura b). Figura 4.1.5: Detección de las líneas izquierda (a) y derecha (b). 44

46 Capítulo 4. Desarrollo Por último, se busca detectar la línea central entre las líneas restantes. La lógica introducida para detectarla es un poco más compleja y utiliza las líneas obtenidas en los dos pasos previos para determinar que se encuentre situada entre la línea izquierda y la derecha. Para esto, se busca lograr la intersección entre las tres líneas y evaluar si las líneas se cortan en un mismo punto, ya que las proyecciones de rectas horizontales convergen siempre en la línea del horizonte, o punto de fuga (Figura 4.1.6). Figura 4.1.6: Detección de la línea central a partir del punto de fuga. Una vez obtenida la línea central, se intenta detectar el color de la misma, con el objetivo de lograr, en un paso posterior, el reconocimiento del tipo de línea y así disparar la alerta correspondiente en caso de ser necesario. Para esto se recorren 5 líneas paralelas hacia la izquierda, y 5 líneas paralelas a la derecha, obteniendo el color de cada pixel y calculando la diferencia con los colores blanco y amarillo. Esto se realiza a fin de contabilizar el número de puntos de color cercanos a los colores blanco y amarillo, y así comparar las cantidades y decidir el color de la línea. Por defecto se supone que la línea es amarilla para evitar perder una posible alerta de sobrepaso de carril en casos de imágenes con ruido o líneas despintadas. Por último, es importante mencionar otro tipo de consideración que se tuvo en cuenta en el momento de lograr evitar la aparición de líneas falsas producto del entorno, como puede ser la pendiente empinada de un cerro o la misma delimitación de la banquina. Para mejorar los resultados se estableció una configuración que permite la utilización de los datos históricos obtenidos de frames anteriores que faciliten la selección de las líneas a dibujar. Esto se basa en la suposición de que el punto de fuga entre dos frames consecutivos no cambia considerablemente, por lo que se busca una similitud entre la orientación de una línea y la misma línea obtenida en el frame anteriormente procesado. Para esto, es importante que el ángulo de enfoque de la cámara mantenga su posición, ya que en otro caso el punto de fuga no sería constante y esto no hará posible la detección de los carriles Reconocimiento de líneas de carril Aquí se detallará el proceso de detección de líneas de carril una vez obtenidos los filtros necesarios a aplicar. En el siguiente paso se conectan entre ellos para definir cuáles son las entradas y las salidas del reconocedor. El primer filtro de realce de bordes de Prewitt (o Sobel, según cómo haya sido configurado), toma como entrada una imagen, que puede 45

47 Capítulo 4. Desarrollo provenir de un mapa de bits. Otra posible entrada para nuestro sistema es un video con extensión.avi, por lo cual, por medio de diferentes eventos, son obtenidos uno a uno los frames del video a medida que el mismo se ejecuta, generando en cada paso un nuevo mapa de bits que será inyectado en el filtro. La salida de este primer filtro se conecta a la entrada del siguiente, el cual aplicará un umbralado sobre el resultado anterior para resaltar aún más los bordes que nos interesan. En este paso, se genera una salida que será visualizada en pantalla, indicando el resultado de los filtros de detección de bordes. A su vez, esta misma salida es conectada al último filtro que se encargará de aplicar el algoritmo de Hough para finalmente devolver el conjunto de líneas que se están buscando (Figura 4.1.7). Figura 4.1.7: Reconocedor de líneas de carril. Así como se explicó en esta sección toda la lógica de detección de carriles, en el capítulo siguiente se detalla todo lo relacionado para la detección de obstáculos. 4.2 Detección de obstáculos La detección de obstáculos se basó en la selección de un método de extracción de características (features) sobre la imagen. Previo a ejecutar dicho algoritmo sobre cada frame, es necesario aplicar una lógica que permita resaltar las características de los obstáculos y facilitar su detección. Para esto, fue necesario aplicar un umbralado inicial con un valor de umbral en RGB de (50, 50, 50). Este valor de umbral era el que mejor se ajustaba a las imágenes de una carretera y fue logrado luego de realizar diferentes pruebas con distintos colores. Dicho umbral resaltará en color blanco los puntos de interés que posteriormente serán obtenidos (Figuras 4.2.1). A su vez, puede ser configurado con el objetivo de lograr resaltar aquellos obstáculos que dadas ciertas condiciones, como sol de frente, no logran ser detectados. 46

48 Capítulo 4. Desarrollo Figura A: Umbralado. Figura B: Umbralado. Luego del amplio estudio que se realizó de posibles algoritmos para la extracción de obstáculos se optó por el algoritmo de SURF (Speeded Up Robust Features) basado en la extracción de características. El mismo consiste en un detector de alto rendimiento de puntos de interés en una imagen. Es invariante a rotaciones, cambios de escala o de iluminación, por lo cual presenta una gran robustez ante posibles transformaciones de la imagen. SURF utiliza un detector de BLOB (Binary Large Object) basado en el determinante de una matriz hessiana para la localización y la escala de los puntos de interés. La extracción de los mismos se realiza detectando en primer lugar los posibles puntos y su localización dentro de la imagen. Se conoce la expresión: como la derivada de segundo orden del filtro de Gauss. Así Lxx (x,σ) es la convolución entre la derivada de segundo orden del filtro de Gauss y la imagen en el punto x=(x,y). Lo mismo ocurre con los otros términos. Estas derivadas se conocen como laplacianas de gausianas. La ventaja del método de SURF es que en vez de usar gausianas para promediar las zonas de la imagen, se usan cuadrados. Estos cuadrados son una aproximación que reduce mucho el costo computacional del algoritmo. 47

49 Capítulo 4. Desarrollo En la siguiente imagen (Figura 4.2.2) se puede observar la representación de la derivada parcial de segundo orden de un filtro gaussiano y la aproximación de la derivada implementada en el caso del descriptor SURF. Figura 4.2.2: SURF. Aproximación de las derivadas parciales de segundo orden. Para calcular la localización de todos los puntos de interés en todas las escalas, se procede mediante la eliminación de los puntos que no cumplan la condición de máximo en un vecindario de 3 x 3 x 3, según el ejemplo anterior. La descripción de la vecindad se hace mediante un cuadrado centrado en el píxel en cuestión y orientado según la orientación que se ha calculado previamente. De esta manera, el máximo determinante de la matriz Hessiana es interpolado en la escala y posición de la imagen. Este algoritmo es ejecutado sobre la imagen previamente filtrada con un umbralado como se mencionó al inicio de la sección, permitiendo resaltar aquellos puntos de interés. Por lo tanto, la imagen umbralada se utilizará como entrada al algoritmo SURF, el cual devuelve el conjunto de regiones que corresponden con los puntos de interés. Los fragmentos obtenidos son englobados en una o varias áreas comunes delimitadas en color azul como muestra las imágenes (Figura 4.2.3). Figura 4.2.3: Regiones obtenidas tras aplicar SURF. Se determinan estas áreas como posibles obstáculos, y se calcula la posición con respecto al actual carril por el que se está transitando, y la distancia a las mismas. La distancia al obstáculo se deduce a partir de dividir en rangos el eje Y de la imagen, y de acuerdo a la posición Y del objeto en qué sector se posicione, tendrá asignando un valor fijo expresado en metros. 48

50 Capítulo 4. Desarrollo La posición permite definir si el obstáculo se encuentra sobre el mismo carril que el vehículo. Se logra determinar si el objeto se encuentra en el mismo carril (O3), en el carril izquierdo o banquina (O1), en el límite del carril izquierdo (O2), en el límite del carril derecho (O4), en el carril derecho o banquina (O5) o si la posición del obstáculo está por fuera del contexto del vehículo (O6). Para determinar esto, se trazó una línea horizontal a partir del obstáculo (línea roja) para obtener la intersección con las dos líneas que delimitan el carril por donde se está circulando. Una vez obtenidos los puntos de intersección, comparamos la posición respecto del eje X de estos puntos y el objeto para conocer el lugar relativo que ocupa el mismo (Figura 4.2.4). Figura 4.2.4: Determinación del carril de conducción. Para esto sería necesario desde el reconocedor de obstáculos, tener conocimiento acerca de las líneas detectadas por el reconocedor de carriles para lograr detectar el carril de conducción. Dado que no se busca lograr un acoplamiento entre ambos reconocedores, sino que ambos funcionen en paralelo y disparen eventos, se tendrá en cuenta el histórico para utilizar la información de los carriles obtenidos en el frame anterior. En el caso de estar procesando el primer frame, se supondrá por defecto que el carril es el actual. A modo de intentar descartar la mayor cantidad de falsos positivos, como ocurre al detectar árboles o sombras en la imagen, se limita la búsqueda al área visualizada en rojo en la siguiente imagen de muestra (Figura 4.2.5). Figura 4.2.5: Área de interés para la detección de obstáculos. 49

51 Capítulo 4. Desarrollo Al igual que se mencionó en la explicación de la detección de carriles, aquí también se estableció una configuración inicial que permite la utilización de los datos históricos obtenidos de frames anteriores para lograr descartar falsos positivos generados principalmente por la aparición de sobras o grietas en el pavimento. En este caso, la lógica se basa en el supuesto de que si existe un obstáculo detectado en un frame, y a una distancia considerable, entonces el mismo obstáculo debe haber sido detectado en el frame anterior sobre el mismo carril. A continuación (Figura 4.2.6) se muestra cómo la configuración del sistema, con sus entradas y sus salidas, al igual que se explicó en la sección anterior para el reconocimiento de líneas: Figura 4.2.6: Reconocedor de obstáculos. 4.3 Framework I2DASW Centrándose en el desarrollo del framework I2DASW (Interactive Intelligent Driver- Assistance and Safety Warning), para el comienzo del mismo, se tuvo en cuenta el análisis de diferentes arquitecturas de sistemas I2DASW publicadas, como los tres ejemplos que se mencionan al comienzo del capítulo 2. Luego del análisis, se prosiguió con el diseño detallado de la implementación de este framework en particular. En primer lugar se comenzó con el análisis de los requisitos para especificar las características operacionales del software. Luego, se continuó con una vista general, y a continuación, una vista arquitectónica donde se determinó el tipo de arquitectura a utilizar y para terminar, las diferentes clases implementadas con su utilidad dentro del sistema. El framework desarrollado, permite interactuar con un gran número de sensores, como pueden ser, sensor de imágenes de cámara, u otros como imágenes infrarrojas, sonido o información del vehículo, como velocidad, estos sensores pueden entregar al framework diferentes tipos de datos todos tomados desde una simulación de conducción real. Esto puede apreciarse en los diferentes diagramas del sistema. Así mismo, se puede observar en el Diagrama de Capas y en el Diseño Detallado del framework, que éste permite la implementación de varios reconocedores distintos que trabajen con iguales o diferentes datos pero que intenten reconocer los mismos objetos, tales como rutas u obstáculos. Esto demuestra la versatilidad del framework para trabajar con diferentes sensores y reconocedores, y poder combinarlos como se desee. A continuación también se detallará el uso de la Base de Datos y la importancia de ella a la hora de evaluar condiciones donde el framework deba actuar. 50

52 Capítulo 4. Desarrollo Análisis de los Requisitos Como se mencionó anteriormente, analizando el estado del arte, los objetivos, necesidades, atributos, capacidades y características que necesita cumplir el sistema para que tenga valor y utilidad para el conductor, se recolectaron los siguientes requisitos: - Aumentar la calidad de conducción. - Proveer información de interés relacionada al vehículo, la carretera y el entorno. - Alertar de forma pasiva situaciones riesgosas. - Alertar de forma activa sobre el control del vehículo. - Proporcionar la distancia con respecto al vehículo precedente. - Asistir al conductor cuando desea cambiar o mantenerse en un carril o en las maniobras de estacionamiento. - Detectar carriles y obstáculos móviles o estáticos, y determinar si se ubican en el mismo carril de conducción, en su defecto, en el carril izquierdo o derecho. - Permitir determinar situaciones de riesgo mediante un grupo de sensores (brindándole información de la condición actual del vehículo y del camino). - Analizar el grado de severidad de una situación riesgosa. - La interfaz de usuario, debe presentar las alertas, desplegar información general del vehículo, de navegación (sistema GIS) y de la carretera. - Proporcionar la simulación de la velocidad del vehículo mediante la interfaz gráfica. - La información en pantalla debe poder ser configurada dinámicamente por el usuario. - El framework debe ser escalable y debe poseer atributos de modificabilidad Vista General del Sistema En la figura se observa un diagrama que proporciona una vista general del framework, en el que cada bloque agrupa varias clases que serán detalladas más adelante. Empezando desde abajo en el diagrama, se encuentran los bloques de los Sensores, los cuales pueden brindar diferentes tipos de imágenes, sonidos y datos dinámicos del vehículo, todos ellos en bruto al framework. Esta información es tomada por el bloque Recolector de Datos, que éste la envía al bloque Reconocedor de Datos. Los reconocedores pueden subscribirse para manejar diferentes tipos de datos tales como imágenes, imágenes infrarrojas, etc. Según lo que intente detectar cada Reconocedor será la información que reciba desde el Recolector de Datos. Los Reconocedores junto con la Base de Datos y el Perfil del Usuario interpretan y manipulan dicha información, encargándose de detectar carriles, obstáculos y más información, y de comunicarse con el bloque Motor de Decisión para que éste tome la acción correcta, basada en preferencias del usuario, reglas de tránsito y condiciones/acciones almacenadas en la Base de Datos local. Esta decisión podrá ser notificada mediante la Interfaz de Usuario. El usuario podrá también habilitar y deshabilitar opciones de visualización o toma de acción por el Motor de Decisión en caso de que no requiera la ayuda o avisos del framework. 51

53 Capítulo 4. Desarrollo Figura 4.3.1: Diagrama general del framework Arquitectura Luego de analizar los requisitos se detectó que los componentes arquitectónicos son: Sensores Interfaz de Usuario Información Estática (base de datos) Motor de decisión El estilo arquitectónico que se decidió aplicar es la Arquitectura en Capas. Esta arquitectura se enfoca en la distribución de roles y responsabilidades de forma jerárquica, muy efectiva en la separación de responsabilidades. Describe la descomposición de servicios de forma que la mayoría de la interacción ocurre solamente entre capas vecinas. Además, permite distribuir el trabajo de creación de una aplicación por niveles; cada grupo de trabajo está totalmente abstraído del resto de niveles. Y cada capa agrega responsabilidad y abstracción a 52

54 Capítulo 4. Desarrollo la capa directamente sobre ella. Los componentes de cada capa se comunican con otros componentes en otras capas a través de interfaces muy bien definidas. También se decidió usar este tipo de arquitectura porque abstrae la vista del modelo como un todo mientras que provee suficiente detalle para entender las relaciones entre capas. Tiene un buen encapsulamiento, no hace suposiciones acerca de tipos de datos, métodos, propiedades o implementación. Posee una funcionalidad claramente definida. El diseño claramente define la separación entre la funcionalidad de cada capa. La alta cohesión, hace que cada capa contenga funcionalidad directamente relacionada con la tarea de dicha capa. Puede ser reutilizable, las capas inferiores no tienen ninguna dependencia con las capas superiores, permitiéndoles ser reutilizadas en otros escenarios. La comunicación entre las capas al estar basada en la abstracción, provee un desacople entre las capas. En la siguiente tabla se muestra el análisis de los beneficios, como así también las desventajas y problemas de esta arquitectura, que se solucionan comenzando con el nivel más bajo. Beneficios Desventajas Problemas Las capas permiten cambios que se realicen en un nivel abstracto. El estilo de arquitectura de capas permite aislar los cambios en tecnologías a ciertas capas para reducir el impacto en el sistema total. Distribuir las capas entre múltiples sistemas (físicos) puede incrementar la escalabilidad, la tolerancia a fallos y el rendimiento. La capacidad de realizar pruebas se beneficia de tener unas interfaces bien definidas para cada capa así como de la habilidad para cambiar a diferentes implementaciones de las interfaces de cada capa. A veces no se logra la contención del cambio y se requiere una cascada de cambios en varias capas. Pérdida de eficiencia si son demasiadas capas. Trabajo innecesario por parte de capas más internas o redundante entre varias capas. Dificultad de diseñar correctamente la granularidad de las capas. Diferentes niveles de abstracción. Es posible definir las interfaces entre las capas estables. Es capaz de cambiar o añadir capas a través del tiempo. Las peticiones van desde las capas superiores hacia las inferiores y las respuestas desde abajo hacia arriba. Tabla Análisis de ventajas y desventajas de la arquitectura. De esta manera el diseño planteado se realizó tal como lo describe la figura Comenzando de abajo hacia arriba, en la Capa de Captura de Datos se encuentran los Sensores que son los encargados de brindar la información al framework. Esta información es tomada en bruto por el Recolector de Datos que se encuentra en la capa siguiente (Capa de 53

55 Capítulo 4. Desarrollo Reconocimiento de Datos), y ésta la envía al Reconocedor de Datos que junto con la Base de Datos y el Perfil del Usuario componen la Capa de Procesamiento de Datos. Esta capa es la encargada de procesar dicha información, detectar carriles y obstáculos, y de comunicarse con el Motor de Decisión para que éste tome la decisión adecuada. La decisión puede ser un aviso visualizado mediante la Interfaz de Usuario o una acción directa sobre el Vehículo. Ambos componentes están ubicados en la Capa de Presentación. Figura 4.3.2: Diagrama de capas. Se desestimó aplicar una arquitectura Cliente-Servidor debido a que no se ajusta a este tipo de aplicaciones, donde no hay recursos centralizados ni peticiones del Cliente al Servidor. En esta aplicación los datos circulan en un único sentido (de abajo hacia arriba, desde los sensores hacia la interfaz) La performance de una arquitectura cliente-servidor está dada por la velocidad de transmisión entre los clientes y el servidor, pero en esta aplicación, eso es vital y un buen planteo de la Arquitectura en Capas hace que la performance sea buena Diseño Detallado Para explicar el Diseño Detallado de forma simple, se seguirá el Diagrama de Capas que se mencionó anteriormente comenzando por la capa más baja y se continuará subiendo y detallando cada una de ellas mediante clases y diagramas. La figura siguiente muestra la Capa de Captura de Datos (Figura 4.3.3), siendo esta el punto de entrada de información al framework. 54

56 Capítulo 4. Desarrollo Figura 4.3.3: Diagrama de Capas - Capa de Captura de Datos. Se encuentran dentro de esta capa la clase Sensor y su jerarquía de clases (SensorImage, SensorInfrared y SensorVehicle) las cuales manejan la entrada de datos desde los sensores físicos incluidos en el vehículo. Cada vez que un sensor obtiene un nuevo dato en bruto, este es enviado a la capa siguiente de Reconocimiento de Datos, más específicamente a la clase que recolecta los datos (DataCollector). Esta clase recibe en su iniciación la lista de sensores que la aplicación tendrá en uso, y se subscribe a los eventos de estos sensores para que los datos recibidos por estos le sean transmitidos para su procesamiento. Estos datos son recibidos por un único método NewDataFromSensor, el cual recibe como parámetro la clase padre Data, que representa la información detectada. Estos envíos de información desde los sensores al recolector son asincrónicos, haciendo uso de un sistema de eventos que nos permite recibir información en paralelo desde diferentes sensores al mismo tiempo y sin generar un cuello de botella para el procesamiento de distintas fuentes de información. En la figura 4.3.4, se puede ver la jerarquía de clases de Sensores. Figura 4.3.4: Jerarquía de clases de Sensores. 55

57 Capítulo 4. Desarrollo Siguiendo el nivel de jerarquías del Diagrama de Capas, como se mencionó recientemente se encuentra la Capa de Reconocimiento de Datos (Figura 4.3.5): Figura 4.3.5: Diagrama de Capas - Capa de Reconocimiento de Datos. Los datos que recibirá el recolector pueden ser Imágenes, Imágenes Infrarrojas, Información de GPS, etc, representadas por la clase Data y su herencia de clases, GPS, Image e Infrared las cuales serán diagramadas a continuación. Cada una de estas clases tiene información específica de acuerdo al tipo de dato a tratar, por ejemplo, la clase GPS manejará información como velocidad del vehículo, altitud, etc., mientras que la clase Image tendrá entre sus atributos al ancho, alto y resolución de esta. El framework permite el agregado de nuevos tipos de datos, creando nuevas clases hijas de la clase Data. En la figura 4.3.6, se puede observar la jerarquía de clases de la información reconocida por los sensores y la clase DataCollector con el método NewDataFromSensor, encargado de recibir información de los sensores. 56

58 Capítulo 4. Desarrollo Figura 4.3.6: Clase Data y su jerarquía. Clase DataCollector. Interfaz Visitor. Ya que el DataCollector recibe una clase abstracta (Data), y necesita saber qué objeto concreto es, se implementó el patrón Visitor. Este patrón fue desarrollado añadiendo una interfaz IVisitor, la cual tiene un método visit por cada clase hija de Data (Image, Infrared, GPS). Esta interfaz es implementada por la clase DataCollector, la cual está interesada en conocer la verdadera clase hija. Por otro lado, la clase abstracta Data tiene un método abstracto accept(ivisitorvisitor) el cual necesita ser sobreescrito por cada uno de sus hijos. Cuando la clase DataCollector recibe el tipo de dato específico con el uso del patrón Visitor, mediante el patrón Observer-Observable esta información es enviada a la Capa de Procesamiento de Datos (Figura 4.3.7). 57

59 Capítulo 4. Desarrollo Figura 4.3.7: Diagrama de Capas - Capa de Procesamiento de Datos. Esta información llega a los reconocedores encargados de interpretar cada tipo de información en particular. Por ejemplo, la clase RecognizerRoad, será el encargado de recibir un objeto tipo Image e interpretar este tipo de dato, reconocer el camino y sus respectivas líneas de carril. Para esto, existen diferentes eventos para subscribirse cuando se capturan nuevos datos, tales como NewImageDataCollected, NewInfraredDataCollected y NewGPSDataCollected. La decisión de diseño de que el DataCollector tenga un evento por cada tipo de dato, es debido a que un reconocedor puede estar interesado en un determinado tipo de información que llega, o en varios tipos si así lo requiriera. En la figura y como Capa de Procesamiento de Datos, se observan los diferentes reconocedores del framework y la implementación concreta del reconocedor de caminos (RecognizerRoadMitov) y reconocedor de obstáculos (RecognizerObstacleMitov). En la clase padre RecognizerAF se pueden ver los diferentes eventos a los cuales se suscribe el motor de decisiones para saber cuándo algún tipo de información es reconocida (NewDynamicModelWasRecognized, NewRoadWasRecognized y NewObstacleWasRecognized). Esto demuestra la facilidad y flexibilidad del framework para adoptar nuevas implementaciones para los diferentes reconocedores. 58

60 Capítulo 4. Desarrollo Figura A: Clase RecognizerAF extendida. 59

61 Capítulo 4. Desarrollo Figura B: Clases Reconocedores, genéricas e implementaciones. Esta jerarquía de clases está constituida por la clase padre RecognizerAF y cada una de las clases que la heredan pueden subscribirse a los eventos detallados en el párrafo anterior para recibir información de datos específicos con los que cada reconocedor desea trabajar. En cada reconocedor se introducirá la lógica para interpretar cada dato y elevar el nivel de abstracción de la información, extrayendo las características particulares y reduciendo el volumen de información. La información reconocida por los reconocedores se ve representada en la jerarquía de clases teniendo como padre la clase InformationAP, e hijos las clases Obstacle, Road y DynamicModel. Road por ejemplo, será la clase que represente a un camino que haya sido reconocido en una imagen. Contendrá atributos específicos como la línea izquierda, línea central y línea derecha del camino, que permitirán conocer información sobre el tipo de ruta 60

62 Capítulo 4. Desarrollo que el vehículo vaya transitando en un momento dado. A su vez, cada línea de la ruta tendrá determinado su color (blanco o amarillo), atributo que es de gran ayuda para determinar por ejemplo, si es posible un sobrepaso o no. Otra información almacenada en cada línea, determina si ésta es línea simple o doble, que ayudado con el color como se explicó previamente, es vital para conocer acerca del camino que se circula. Se podrán agregar nuevos tipos de información reconocidos, creando clases que hereden de la clase InformationAP, así como nuevos reconocedores de información, heredando de la clase RecognizerAF. Un nuevo reconocedor, como se detalló en párrafos anteriores, deberá subscribirse a la información obtenida por los sensores que esté interesado en recibir y agregar la lógica necesaria para reconocer el objeto. En la figura 4.3.9, se puede ver los distintos tipos de información que el sistema puede reconocer. Figura 4.3.9: Jerarquía de clases de Información. También se utilizó el patrón Factory donde la clase fábrica abstracta en este caso es el RecognizerAF y la clase abstracta producto es InformationAP. Cada fábrica concreta será la encargada de reconocer (método de creación del producto) y devolver una determinada información (producto concreto). En la figura se puede observar la idea del patrón Factory y las clases que la integran. 61

63 Capítulo 4. Desarrollo Figura : Ejemplo de patrón Factory. En la figura siguiente (4.3.11) se detallan dos clases importantes, LineCollection y Line. Ambas se relacionan con la clase Road, y determinan las líneas reconocidas del camino y los atributos propios de cada una de ellas como se mencionó anteriormente. Figura : Clases para el manejo de las Líneas. 62

64 Capítulo 4. Desarrollo La clase LineCollection almacena las líneas del camino, mientras que la clase Line tiene el color, tipo, ángulo y puntos X/Y de inicio y fín de la línea en cuestión. Esta capa cuenta también con un Perfil de Usuario representado por la clase UserProfile y ManagerProfile. El Perfil del Usuario permite manejar ciertos aspectos como por ejemplo, mediante qué medios se le informará de posibles riesgos: alerta sonora, visual o si permite que el framework pueda accionar sobre el vehículo. También, el usuario podrá habilitar/deshabilitar alertas referidas al camino, obstáculos y datos del vehículo de forma independiente. En la figura se puede ver la clase DataBase, la cual maneja la conexión y las consultas a la información almacenada en esta. Figura : Clase de la Base de Datos. Todas las clases de la figura representan los objetos que junto con las reglas de tráfico almacenadas en la Base de Datos y con el Perfil del Usuario, interactúan con el Motor de Decisiones para que, de acuerdo a toda la información que le llega, tome la mejor decisión. En la Capa de Acción (Figura ) el motor de decisiones, clase DecisionEngine, se subscribe a los eventos para saber cuándo se reconoce determinado tipo de información. El motor recibe la lista de reconocedores y se subscribe a todos los eventos de información que puede tener un reconocedor (NewRoadWasRecognized, NewObstacleWasRecognized y NewDynamicModelWasRecognized), ya que no se sabe qué tipo de información reconoce cada uno de ellos. Un reconocedor puede proveer distintos tipos de información, aunque no es lo común. Por ejemplo, un reconocedor puede informar de un camino y de un obstáculo reconocido. 63

65 Capítulo 4. Desarrollo Figura : Capa de Acción. Una vez que al motor le llega un evento que se ha reconocido un tipo de información (Camino, Obstáculo o Datos del vehículo), se obtiene la lista de condiciones a evaluar cuando se ha reconocido ese tipo de información. Por ejemplo, si se ha reconocido un obstáculo, se buscan todas las condiciones que tengan como objeto detectado a un obstáculo. Toda información obtenida de los eventos es procesada de acuerdo a un conjunto de reglas de tráfico que evalúan situaciones de riesgo o precaución. Estas reglas de tráfico podrán ser insertadas o eliminadas por medio de la clase ManagerRules. Con respecto al almacenamiento de información en el sistema, se optó por utilizar una Base de Datos relacional PostgreSql instalada localmente. Esta base de datos contiene 3 tablas: Condition, Action y Action_Argument, las cuales son utilizadas por el Motor de Decisiones para obtener las reglas de tráfico y otras, para determinar si la conducción es segura o no, y en este último caso, qué acción tomar. Para mejorar la performance del sistema, se implementó que se lea la información de la Base de Datos al iniciar la aplicación y se mantenga en memoria para su posterior acceso, y evitar el continuo acceso a disco que en comparación es mucho más lento. En la figura A, se puede ver el diagrama de clases del manejo de expresiones, operadores y Motor de Decisiones. 64

66 Capítulo 4. Desarrollo Figura A: Clases del Motor de Decisiones y manejo de Condiciones. El sistema de guardado de las condiciones, permite que se pueda agrupar varias expresiones uniendo estas mediante distintos operadores lógicos como AND, OR, XOR, etc. Esta información almacenada en tablas fue llevada a clases manteniendo la programación orientada a objetos y permitiendo la flexibilidad para poder agregar nuevos operadores. Condition agrupa la lista de expresiones a evaluar, las cuales se pueden agrupar con operadores lógicos (AND, OR, etc), y cada condición puede contener operadores de comparación como ==, >, <, etc. Cada condición en la tabla Condition tendrá un padre que será la fila que contenga un IdParent = 0, que además tendrá seteado el objeto reconocido al cual aplica (columna objectdetected cuyos valores pueden ser road, obstacle, dynamic_vehicle). Los hijos de esta condición tendrán seteado en la columna IdParent el Id de la fila de su padre, y el operador que lo une a la siguiente condición hija en la columna OperatorLogic. Además, contiene la condición a chequear para comprobar si se cumple, y el objeto al cual debe aplicarse la 65

67 Capítulo 4. Desarrollo condición (obstacle, vehicle, road, linecentral) en la columna object. Esta lógica permite agrupar varias condiciones al detectar cierto objeto, y validar si todas se cumplen, alguna de ellas o ninguna, para determinar qué acción realizar. En la Tabla 4.2 se puede apreciar la agrupación de diferentes condiciones para que se ejecute determinada acción, o conjunto de acciones, dependiendo del tipo de información reconocida. Por un lado se tiene la clase abstracta Expresion, la cual tiene el método abstracto eval() que retornará un booleano para conocer si se cumple la condición o el conjunto de condiciones. Como hijas de esta clase están la clase Condition que puede ser evaluada, y la clase Operator, la cual es la clase padre de las clases de los operadores lógicos AND, OR, XOR, que contiene a dos objetos de la clase Expresion, y que también deben implementar el método eval() para ver si se cumplen las dos condiciones, alguna de ellas, o una condición o la otra, respectivamente. Tabla Tabla Condition. Como se puede ver en la Tabla 4.3.2, cuando se detecta un camino, se tienen 4 condiciones distintas a evaluar, cada una con su conjunto de acciones correspondiente. En este ejemplo, las filas de la tabla con id 1, 3, 9 y 14 son las condiciones padre. Por ejemplo, la condición padre con id 9 se formaría con la siguiente expresión: 66

68 (camino.tipo == recta) AND (lineacentral.color == amarillo) AND (lineacentral.tipolinea == doble) AND (obstáculo no existe) Capítulo 4. Desarrollo Para mapear esta tabla a objetos, se utiliza el patrón Composite creando las clases Expresion, Operator, OperatorAnd, etc. En el caso de que una condición evaluada se cumpla, se obtienen las acciones correspondientes a esa Condition desde la Base de datos con la tabla Action. Tabla Tabla Action. En la Tabla 4.3.3, se puede ver a Action y como se pueden agrupar varias acciones, y darles un orden para ser ejecutadas secuencialmente si una condición se cumple. Para la condición de id 9 que se describió anteriormente, se corresponde la acción con id = 5. Como se ve en la Tabla 4.3.3, se deben ejecutar 2 acciones en un respectivo orden. 1. Mostrar mensaje. 2. Alarma sonora. 67

69 Capítulo 4. Desarrollo Para el mapeo de estas acciones a objetos, se utilizó el patrón Command (Figura B). Donde se tienen acciones simples o acciones que pueden encolarse y ejecutarse de manera secuencial. Figura B: Clases para el manejo de acciones. En la Tabla y Tabla 4.3.4, se puede observar la tabla Action y Action_Argument, las cuales se relacionan entre sí. 68

70 Capítulo 4. Desarrollo Tabla Tabla Action_Argument. 69

71 Capítulo 4. Desarrollo Action_argument permite personalizar cada acción, agregando parámetros para cada una de estas a la hora de ejecutarse. Siguiendo el ejemplo, para cada una de las 2 acciones que deben ejecutarse, existen sus parámetros de ejecución en la tabla Action_Argument. Entonces, las acciones se ejecutarán con la siguiente información: 1. Mostrar mensaje de aviso con título Atención y mensaje No sobrepasar. Este mensaje debe ser visualizado con color #FFFF00 (amarillo) y el carril por donde estemos circulando debe ser pintado de color #59FFFF00 (amarillo con transparencia). 2. Reproducir sonido que se corresponde al valor No sobrepasar. Se decidió el color amarillo para indicar cuando no se puede sobrepasar, rojo si hay un obstáculo y verde si hay vía libre, tanto para las alertas como para el triángulo de conducción, que a su vez a éste último se le agrega una transparencia para no perjudicar la visión del camino. La base de datos está preparada para soportar N condiciones según el objeto detectado, y X acciones secuenciales para cada condición en particular. En la figura se puede observar la clase ActionArgument. Figura : Clase Action Argument. Por último, la Capa de Presentación (Figura ) es en donde todas las decisiones que tome el Motor de Decisiones podrán ser visualizadas mediante la Interfaz de Usuario o mediante una acción directa sobre el Vehículo. Figura : Capa de Presentación. En esta capa es donde el usuario ve las acciones determinadas por las condiciones del contexto, ya sea a través la pantalla mediante avisos visuales, a través del vehículo cuando el framework decide accionar directamente al aplicar un freno o a través de avisos sonoros. Mediante la Interfaz del Usuario éste tendrá acceso a opciones generales del framework, decidir sobre qué información quiere recibir notificaciones y visualizaciones en pantalla, si desea sonido continuo de alerta, activar/desactivar el sistema I2DASW, asignarle el 70

72 Capítulo 4. Desarrollo umbral deseado para la detección de obstáculos y líneas, y seleccionar entre el uso de los filtros de preprocesamiento de Prewitt o Sobel. Estas opciones del sistema pueden observarse en la pantalla de Configuración (Figura ). También, el usuario podrá especificar si desea utilizar el modo de velocidad crucero y que el framework mantenga la velocidad en un valor constante seteada por el usuario o que esta se mantenga entre un valor mínimo y máximo configurado. Esta opción puede visualizarse en las figuras A y B. Figura : Pantalla de Configuración. Figura A: Acceso para cambio de Velocidad. 71

73 Capítulo 4. Desarrollo Figura B: Ingreso de Velocidad. En la figura se puede observar la clase HistoryData, la cual fue desarrollada para en casos donde no es factible reconocer las líneas del camino actual, o donde no se puede llegar a detectar un obstáculo que en frames anteriores si se detectaba. Esta clase permite almacenar las últimas líneas detectadas como así también el último obstáculo visualizado, que nos ayudará a procesar el contexto cuando los sensores o el clima no ayudan a dar información del todo clara. Figura : Clase de Datos Históricos. En la figura se puede ver la clase Settings, la cual guarda las configuraciones del framework que el usuario ha seleccionado. Esta clase permite mantener los valores seleccionados por el usuario aun cuando el sistema se cierra, y recuperarlos al iniciarlo nuevamente. 72

74 Capítulo 4. Desarrollo Figura : Clase de Propiedades. En la figura se puede ver la pantalla principal de la aplicación. Sobre el costado superior izquierdo, se pueden observar los botones que nos permitirán comenzar a procesar la o las imágenes cargadas o parar un video. Debajo de estos botones, se puede observar el panel de velocidad del vehículo, el cual el usuario puede ocultar desde la pantalla de Configuración como se mencionó anteriormente. En la esquina inferior izquierda, se observa el panel de información del estado del camino, el cual dependiendo del contexto y las reglas de tráfico, se irá modificando en tiempo real. En el centro de la pantalla se visualiza la imagen obtenida por el sensor y que está siendo procesada, dibujando sobre esta las líneas principales del camino, color del carril según el contexto y marcado en color azul, los objetos detectados. La visualización en color de las líneas junto con el coloreado del carril, puede ocultarse mediante la pantalla de Configuración si así el usuario lo desea. Debajo de la imagen principal, se detalla la línea central del camino, brindando información de su tipo (simple o doble) como de su color (blanco o amarillo). 73

75 Capítulo 4. Desarrollo Figura : Pantalla general del framework. La pantalla principal de la aplicación, fue diseñada para lograr mostrar la mayor cantidad de información posible pero sin abrumar al usuario con ella, brindando la posibilidad de ocultar los paneles que desee y pudiendo customizar a través de las reglas almacenadas en la Base de Datos, los mensajes, colores del camino y de las alertas. El framework se ha implementado de manera tal que, si se desea agregar otra variante de como calcular los resultados pueda realizarse sin problemas, lo cual demuestra también la flexibilidad del framework en adaptarse a nuevos cambios Tecnologías aplicadas La implementación del framework fue llevada a cabo mediante el lenguaje de programación C#, acoplado a que las librerías utilizadas de Mitov [54] soportan este lenguaje orientado a objetos y no el lenguaje de programación Java. Otra opción era utilizar C++ como lenguaje para tener una mejor performance ya que es un lenguaje de más bajo nivel que C#, pero para una mayor rapidez en el desarrollo del framework y una mejor abstracción, se decidió por C#, ya que pretende combinar la facilidad de Visual Basic y la potencia de C++ [57]. En C# no se utilizan punteros (se permite utilizarlos en casos especiales), en su lugar se utilizan referencias a objetos, se eliminan las macros, las plantillas, la herencia múltiple, los ficheros de cabecera, IDL, librerías de tipos. Además se añaden otras características, como orientación a objetos casi pura, seguridad de tipos, versiones, gestión automática de memoria 74

76 Capítulo 4. Desarrollo (garbage collector) y permite la interoperación con otros lenguajes. El framework ha quedado desarrollado para un rápido y fácil cambio de lenguaje de C# a Java si es necesario ya que se siguió un proceso de desarrollo orientado a objetos. Respecto a las librerías, se pueden nombrar a dos pertenecientes al grupo Mitov Software: VisionLab y VideoLab. Estas fueron de gran utilidad para la extracción de ciertas características en una imagen ya que están especializados en el desarrollo de software de alto rendimiento y soluciones de flujo de datos que implican procesamiento de audio y video, visualización de datos, control de hardware, programación paralela, entre otros. En cuanto a la base de datos del framework, se utilizó PostgreSQL, ya que es una base de datos relacional sin costo y sin problemas para trabajar con este tipo de aplicaciones que no requieren gran cantidad de datos almacenados, ni muchas transacciones. 4.4 Conclusiones Como se vió en el transcurso de este capítulo, se debieron aplicar distintos algoritmos y técnicas para obtener la información necesaria a partir de una imagen. Comenzando con el realce de bordes utilizando una matriz de Prewitt o Sobel, seguido por un umbralado, permite resaltar las líneas de la imagen. La transformada de Hough provee robustez ante ruido y presencia de otro tipo de formas para detectar los carriles, aunque el costo computacional de usarlo es muy alto, se pueden detectar falsos positivos. Como se mencionó anteriormente, es necesario hacer un post-procesamiento para reducir el número de líneas detectadas no válidas. La eficiencia de este procedimiento depende de la calidad de los datos de entrada del algoritmo, y por eso como se describió, es importante que sean bien detectados. Este procedimiento es ayudado por el uso de datos históricos para obtener mejores resultados en imágenes no del todo nítidas o con líneas algo despintadas. Previo a la detección de obstáculos se debió realizar un umbralado para resaltar los posibles objetos. Luego, para la extracción de obstáculos se optó por el algoritmo de SURF el cual presenta una gran robustez y es invariante a rotaciones, cambios de escala o de iluminación. La ventaja del método de SURF es que reduce el costo computacional del algoritmo. Con respecto al framework, al implementarlo se pudo poner en práctica los algoritmos y técnicas descritas arriba, y hacer que funcionen en conjunto. El framework no actúa directamente sobre el vehículo, pero permite alertar al conductor en situaciones de riesgo. La arquitectura del framework, y la forma en que se implementaron los reconocedores de camino y obstáculos, los cuales funcionan de manera asincrónica, permitiendo la flexibilidad de poder realizar cambios en la implementación de las técnicas y algoritmos sin verse afectado el resto del sistema. 75

77 Capítulo 5. Resultados En este capítulo se detalla el estudio realizado, con el fin de analizar resultados cuantitativos y cualitativos a partir de los cuales poder concluir si el sistema de asistencia propuesto, soportado por los algoritmos e implementaciones mencionadas, cumplen los objetivos esperados, entre ellos principalmente ofrecer una ayuda a futuro para reducir accidentes de tránsito. Para llevar a cabo la experimentación fue necesario suponer e introducir los datos con los cuales deberán operar los diferentes algoritmos propuestos. Estos pueden dividirse en estáticos, como suponer la posición de la cámara fija, la entrega de frames por segundo y la distancia, y por otro lado, los datos del usuario, que varían según éste indique cuáles son sus preferencias, como la velocidad que puede variar o ser estática, las alertas que desea visualizar, que los datos históricos puedan ser tomados o no en cuenta, entre otras. En primer lugar, se ejecutaron los algoritmos sobre un conjunto de imágenes de muestra obtenidas a partir de un banco de imágenes [58]. Además se utilizó un número de imágenes patológicas y videos tomados en rutas argentinas. Todas las imágenes tienen una resolución de 256 x 240 y fueron tomadas desde el interior de un vehículo a partir de una cámara frontal ubicada cercana al espejo retrovisor, permitiendo así visualizar, en la mayoría de los casos, el carril de conducción completo, con ambas líneas. El principal objetivo de analizar los resultados es comprobar la fiabilidad del sistema. 5.1 Detección de carriles Para mostrar la detección de carriles se mantuvo activada la alerta de camino y se configuró el uso de los datos históricos en los casos en los que son analizadas secuencias de imágenes consecutivas o video. En el cuadro a continuación (Figura 5.1.1) se lista una serie de imágenes procesadas a partir del banco de imágenes, en donde se buscó resaltar mediante dos líneas (amarilla y roja), el carril de conducción actual. A su vez, se indica mediante un área de color el carril de conducción, indicando con verde si posee vía libre, con amarillo si no puede sobrepasar y con rojo si existe un posible riesgo de un obstáculo al frente. 76

78 Capítulo 5. Resultados 77

SISTEMA DE APARCAMIENTO ASISTIDO

SISTEMA DE APARCAMIENTO ASISTIDO SISTEMA DE APARCAMIENTO ASISTIDO El sistema principalmente es una ayuda que recibe el conductor para realizar el estacionamiento del vehículo sin grandes problemas. Hay varios sistemas: El sistema localiza

Más detalles

FICHA PÚBLICA DEL PROYECTO

FICHA PÚBLICA DEL PROYECTO NUMERO DE PROYECTO: 218824 EMPRESA BENEFICIADA: MICROCALLI DEL GOLFO S.A DE C.V TÍTULO DEL PROYECTO: LÍNEA DE PRODUCTOS DE SOFTWARE PARA DOMÓTICA OBJETIVO DEL PROYECTO: Incorporar el paradigma de LPS como

Más detalles

CAPITULO 1 INTRODUCCION AL PROYECTO

CAPITULO 1 INTRODUCCION AL PROYECTO CAPITULO 1 INTRODUCCION AL PROYECTO 1 INTRODUCCION AL PROYECTO 1.1 Marco Teórico Los procesadores digitales de señales ganaron popularidad en los años sesentas con la introducción de la tecnología de estado

Más detalles

CONCEPTO TÉCNICO No. 18

CONCEPTO TÉCNICO No. 18 CONCEPTO TÉCNICO No. 18 SM - 57207-09 CONCEPTO TÉCNICO No 18 Referencia: Concepto técnico mediante el cual la Dirección de Seguridad Vial y Comportamiento del Tránsito, adopta las especificaciones técnicas

Más detalles

CUADRO DE MANDO PARA LA ALTA DIRECCIÓN EN EL MINISTERIO DE FOMENTO

CUADRO DE MANDO PARA LA ALTA DIRECCIÓN EN EL MINISTERIO DE FOMENTO CUADRO DE MANDO PARA LA ALTA DIRECCIÓN EN EL MINISTERIO DE FOMENTO Jefe de Proyecto BGS Online Consultores Subdirector General de Tecnología y Sistemas de la Información Ministerio de Fomento Asesor Área

Más detalles

DEPARTAMENTO DE ORGANIZACIÓN INDUSTRIAL Y GESTIÓN DE EMPRESAS ESCUELA SUPERIOR DE INGENIEROS DE LA UNIVERSIDAD DE SEVILLA

DEPARTAMENTO DE ORGANIZACIÓN INDUSTRIAL Y GESTIÓN DE EMPRESAS ESCUELA SUPERIOR DE INGENIEROS DE LA UNIVERSIDAD DE SEVILLA 6. CONCLUSIONES 6.1. Introducción En este trabajo se ha intentado realizar un estudio suficientemente exhaustivo, que pudiera recopilar los métodos y técnicas más relevantes en la gestión de proyectos

Más detalles

Objeto del informe. ALUMNO 1 Página: 1

Objeto del informe. ALUMNO 1 Página: 1 Nombre: ALUMNO 1 Centro: NOMBRE DEL COLEGIO Curso: 2º E. PRIMARIA Responsable: RESPONSANBLE Localidad: LOCALIDAD Fecha: 21 / julio / 2015 Objeto del informe El presente informe recoge la evaluación psicológica

Más detalles

Recomendaciones para la instalación e-netcamanpr

Recomendaciones para la instalación e-netcamanpr Recomendaciones para la instalación e-netcamanpr Propósito del documento El presente documento ofrece al instalador una serie de recomendaciones que deben ser tenidas en cuenta a la hora de instalar un

Más detalles

Capítulo Uno. Planteamiento del Problema

Capítulo Uno. Planteamiento del Problema Capítulo Uno 1.1 Planteamiento del problema Hoy en día en un mercado global, donde continuamente se dan cambios, las empresas que logran una flexibilidad y capacidad de adaptación al entorno, son las que

Más detalles

1.1 SISTEMAS DE COBRO ELECTRONICO.

1.1 SISTEMAS DE COBRO ELECTRONICO. 1.1 SISTEMAS DE COBRO ELECTRONICO. 1.1.1 Definiciones, Principios y Conceptos Estos sistemas, como su nombre lo indica, son sistemas de cobro de peaje en los que no está involucrado el manejo de dinero

Más detalles

Escala San Martín. InstruccIones para la aplicación InformátIca. Evaluación de la Calidad de Vida de Personas con Discapacidades Significativas

Escala San Martín. InstruccIones para la aplicación InformátIca. Evaluación de la Calidad de Vida de Personas con Discapacidades Significativas Escala San Martín Evaluación de la Calidad de Vida de Personas con Discapacidades Significativas InstruccIones para la aplicación InformátIca Guía rápida INICO - FOSM 2014 INFORMACIÓN GENERAL La presente

Más detalles

Detección y Diagnóstico de Fallas por Medición y Análisis de Vibraciones

Detección y Diagnóstico de Fallas por Medición y Análisis de Vibraciones Monitoreo de Vibraciones Al monitorear la vibración y otras variables de la maquinaria industrial, se obtiene información que permite reducir costos por: paros de producción, reparaciones mayores y gastos

Más detalles

Software de control y adquisición de datos SCM4000

Software de control y adquisición de datos SCM4000 Software de control y adquisición de datos SCM4000 El programa SCM4000, es un sistema diseñado para el control y adquisición de datos para ensayos de fatiga en equipos dinámicos. El software esta diseñado

Más detalles

Tutorial. HERRAMIENTA WEB / TERRA-i PERU

Tutorial. HERRAMIENTA WEB / TERRA-i PERU HERRAMIENTA WEB / TERRA-i PERU Citación sugerida: PAZ-GARCIA, P. & COCA-CASTRO, A. (2014) Herramienta Web / Terra-i Perú. del proyecto Terra-i-Perú. Versión 1 Resumen El siguiente tutorial contiene la

Más detalles

Diseño arquitectónico 1ª edición (2002)

Diseño arquitectónico 1ª edición (2002) Unidades temáticas de Ingeniería del Software Diseño arquitectónico 1ª edición (2002) Facultad de Informática objetivo Los sistemas grandes se descomponen en subsistemas que suministran un conjunto relacionado

Más detalles

Perfilómetro Laser para Medición de Perfil Transversal y Cálculo del Ahuellamiento de Pavimentos en Tiempo Real

Perfilómetro Laser para Medición de Perfil Transversal y Cálculo del Ahuellamiento de Pavimentos en Tiempo Real Perfilómetro Laser para Medición de Perfil Transversal y Cálculo del Ahuellamiento de Pavimentos en Tiempo Real "Usar la plataforma de hardware modular NI PXI y el software de desarrollo gráfico NI LabVIEW,

Más detalles

SEGMENTACIÓN AUTOMÁTICA DE TEJIDOS CEREBRALES EN MRI MULTIESPECTRALES MEDIANTE CLASIFICACIÓN POR MÍNIMA DISTANCIA EUCLÍDEA

SEGMENTACIÓN AUTOMÁTICA DE TEJIDOS CEREBRALES EN MRI MULTIESPECTRALES MEDIANTE CLASIFICACIÓN POR MÍNIMA DISTANCIA EUCLÍDEA 42 Jornadas Argentinas de Informática 4 Congreso Argentino de Informática y Salud Facultad de Matemática, Astronomía y Física Universidad Nacional de Córdoba Córdoba, Argentina SEGMENTACIÓN AUTOMÁTICA

Más detalles

DIFERENCIA, VENTAJAS Y DESVENTAJAS DE INSTRUMENTOS ANALÓGICOS Y DIGITALES

DIFERENCIA, VENTAJAS Y DESVENTAJAS DE INSTRUMENTOS ANALÓGICOS Y DIGITALES DIFERENCIA, VENTAJAS Y DESVENTAJAS DE INSTRUMENTOS ANALÓGICOS Y DIGITALES En general los parámetros que caracterizan un fenómeno pueden clasificarse en Analógicos y Digitales, se dice que un parámetro

Más detalles

Experiencia 2. Laboratorio de Redes 2010, UTFSM. Valparaíso, 25 de marzo de 2011

Experiencia 2. Laboratorio de Redes 2010, UTFSM. Valparaíso, 25 de marzo de 2011 Experiencia 2 Laboratorio de Redes 2010, UTFSM Valparaíso, 25 de marzo de 2011 Índice 1. Simulación de Redes 3 1.1. Introducción.......................................... 3 1.2. Tipos de Simulación.....................................

Más detalles

ORGANIZACIÓN, IMPLEMENTACIÓN Y CONTROL DE MARKETING. Omar Maguiña Rivero

ORGANIZACIÓN, IMPLEMENTACIÓN Y CONTROL DE MARKETING. Omar Maguiña Rivero ORGANIZACIÓN, IMPLEMENTACIÓN Y CONTROL DE MARKETING 1 OBJETIVOS ESPECIFICOS Explicar la importancia de seguir un proceso adecuado de marketing internacional. 2 CONTENIDOS 1. Estructura Organizacional y

Más detalles

Interfaces. Carrera: SCF Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Interfaces. Carrera: SCF Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos. 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Interfaces Ingeniería en Sistemas Computacionales SCF - 0417 2-4-8 2.- HISTORIA

Más detalles

Intel lanza su procesador Caballero Medieval habilitado para Inteligencia Artificial

Intel lanza su procesador Caballero Medieval habilitado para Inteligencia Artificial Intel lanza su procesador Caballero Medieval habilitado para Inteligencia Artificial Intel ha lanzado su procesador Xeon Phi en la Conferencia Internacional de Supercomputación de Alemania. El procesador

Más detalles

Laboratorio de Visión para Robots. Práctica 2

Laboratorio de Visión para Robots. Práctica 2 1. Preparación del entorno de trabajo Laboratorio de Visión para Robots Práctica 2 La manera en la que trabajaremos será primero utilizando Eclipse para prototipar nuestro programa. Cuando podamos procesar

Más detalles

SERIE DE C4000. Terminal de datos portátil al uso industrial. Reducción de costos laborales

SERIE DE C4000. Terminal de datos portátil al uso industrial. Reducción de costos laborales SERIE DE C4000 Terminal de datos portátil al uso industrial Reducción de costos laborales www.chainway.net Liderar el futuro del lot ANDROID SYSTEM HANDHELD COMPUTER Sistema de Android Chainway C4000 emplea

Más detalles

SEGUIMIENTO DE LOS ACUERDOS DE NIVEL DE SERVICIO DE INTERNET. Paloma Sánchez López Subdirección General de Informática TGSS

SEGUIMIENTO DE LOS ACUERDOS DE NIVEL DE SERVICIO DE INTERNET. Paloma Sánchez López Subdirección General de Informática TGSS SEGUIMIENTO DE LOS ACUERDOS DE NIVEL DE SERVICIO DE INTERNET Paloma Sánchez López Subdirección General de Informática TGSS 1 Blanca SEGUIMIENTO DE LOS ACUERDOS DE NIVEL DE SERVICIO DE INTERNET 1. OBJETIVO

Más detalles

Elaboración de una campaña de tráfico

Elaboración de una campaña de tráfico Elaboración de una campaña de tráfico Física y Química 4º ESO IES Saulo Torón María Dolores Ramírez Rodríguez En España los accidentes de tráfico son la quinta causa de muerte no natural siendo la velocidad

Más detalles

OFERTA PFC DEPARTAMENTO DTE (ÁREAS: TELEMÁTICA y ELECTRÓNICA) OTOÑO

OFERTA PFC DEPARTAMENTO DTE (ÁREAS: TELEMÁTICA y ELECTRÓNICA) OTOÑO OFERTA PFC DEPARTAMENTO DTE (ÁREAS: TELEMÁTICA y ELECTRÓNICA) OTOÑO 2016-17 Procedimiento y plazos para solicitar el PFC en el Dpto. La oferta de PFC se publicará el viernes 16 de septiembre en los tablones

Más detalles

Descripción del. Sistema de Alerta de Cambio Involuntario de Carril y evidencias científicas de su eficacia

Descripción del. Sistema de Alerta de Cambio Involuntario de Carril y evidencias científicas de su eficacia 3 Descripción del Sistema de Alerta de Cambio Involuntario de Carril y evidencias científicas de su eficacia El objetivo de esta línea de actuación de Fitsa es difundir la eficacia, científicamente probada,

Más detalles

Rocío M. Parra Zacarías Noviembre 04, Diseño e Implementación de un Sistema Gestión de Proyectos de Obras Civiles pa Empresas Constructoras

Rocío M. Parra Zacarías Noviembre 04, Diseño e Implementación de un Sistema Gestión de Proyectos de Obras Civiles pa Empresas Constructoras Rocío M. Parra Zacarías Noviembre 04, 2016 Diseño e Implementación de un Sistema Gestión de Proyectos de Obras Civiles pa Empresas Constructoras Agenda Introducción Metodología para la implementación Ejemplo

Más detalles

Developing ASP.NET MVC 4 Web Applications

Developing ASP.NET MVC 4 Web Applications Código: S28 Duración: 25 horas En este curso, los estudiantes aprenderán a desarrollar aplicaciones ASP.NET MVC con avanzadas tecnologías y herramientas de.net Framework 4.5. Se centrará en la codificación

Más detalles

GRADIENTE La laplaciana es un buen filtro paso alto, pero no es una buena herramienta para resaltar o detectar los bordes. En muchos casos, los bordes o límites de las figuras o de las regiones aparecen

Más detalles

CAPITULO III. El propósito de la investigación fue recopilar información actualizada de las Micro

CAPITULO III. El propósito de la investigación fue recopilar información actualizada de las Micro 90 CAPITULO III INVESTIGACIÓN DE CAMPO SOBRE LA APLICACION DE UN SISTEMA DE DESARROLLO DE MARCA PARA LA COMERCIALIZACIÓN DE LA MIEL DE ABEJAS PRODUCIDA POR LAS MICRO EMPRESAS, UBICADAS EN EL DEPARTAMENTO

Más detalles

CercaDeTi. Ayuda a tus clientes a disfrutar de su estancia

CercaDeTi. Ayuda a tus clientes a disfrutar de su estancia CercaDeTi Ayuda a tus clientes a disfrutar de su estancia Qué es CercaDeTi? CercaDeTi es una aplicación móvil que guía a los usuarios en el descubrimiento de un nuevo destino, ofreciéndoles información

Más detalles

Información general sobre el sistema neumático

Información general sobre el sistema neumático Definiciones Es importante tener en cuenta las siguientes definiciones y conceptos en relación con el sistema neumático del vehículo: Calderín Depósito a presión que contiene aire comprimido. Se utiliza

Más detalles

En GSG Petroleum le brindamos soluciones tecnológicas personalizadas. de toma de decisiones.

En GSG Petroleum le brindamos soluciones tecnológicas personalizadas. de toma de decisiones. En GSG Petroleum le brindamos soluciones tecnológicas personalizadas que le ayudarán en el proceso de toma de decisiones. Somos una firma que le ofrece soluciones en el área de Tecnologías de la Información

Más detalles

INTERPRETACIÓN NORMA OHSAS 18001:2007 MÓDULO 1 SESIÓN 1 INTERPRETACIÓN DE LA NORMA OHSAS 18001:2007 DOCENTE: Ing. Dª. Ana I.

INTERPRETACIÓN NORMA OHSAS 18001:2007 MÓDULO 1 SESIÓN 1 INTERPRETACIÓN DE LA NORMA OHSAS 18001:2007 DOCENTE: Ing. Dª. Ana I. INTERPRETACIÓN NORMA OHSAS 18001:2007 MÓDULO 1 SESIÓN 1 INTERPRETACIÓN DE LA NORMA OHSAS 18001:2007 DOCENTE: Ing. Dª. Ana I. Menac Lumbreras Especializados 1 TEMA 1 Contenidos INTRODUCCIÓN A LA NORMA OHSAS

Más detalles

Contenido Introducción Resumen Ejecutivo Objetivos del Estudio General Específicos...

Contenido Introducción Resumen Ejecutivo Objetivos del Estudio General Específicos... - 1-1. Contenido 1. Contenido... 1 2. Introducción... 2 3. Resumen Ejecutivo... 2 4. Objetivos del Estudio... 3 4.1. General... 3 4.2. Específicos... 3 5. Distribución de la Muestra... 4 6. Resultados

Más detalles

Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Departamento de Computación Informe final de pasantía

Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Departamento de Computación Informe final de pasantía Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Departamento de Computación Informe final de pasantía Desarrollo de Componentes de software para el procesamiento de servicios web

Más detalles

DESCRIPCIÓN GENERAL. Calle 22 Bis No. 43A - 31 / PBX: (+57) (+1) / Bogotá - Colombia / /

DESCRIPCIÓN GENERAL. Calle 22 Bis No. 43A - 31 / PBX: (+57) (+1) / Bogotá - Colombia / / DESCRIPCIÓN GENERAL El sistema T-board convierte cualquier superficie como tableros de acrílico, paredes, telones o pantallas (Plasma, LCD o LED) en un ÁREA SENSIBLE con la que se puede interactuar con

Más detalles

Lista de chequeo de buenas prácticas administrativas

Lista de chequeo de buenas prácticas administrativas Lista de chequeo de buenas prácticas administrativas www.auditool.org 1/09/2009 LISTA DE CHEQUEO DE BUENAS PRÁCTICAS ADMINISTRATIVAS "NO ES NECESARIO QUE REINVENTEMOS LA RUEDA Esta lista de chequeo está

Más detalles

DESCRIPCIÓN DEL RESULTADO DE INVESTIGACIÓN

DESCRIPCIÓN DEL RESULTADO DE INVESTIGACIÓN REF.: TRANSP_UAH_07 SECTOR INDUSTRIAL INVESTIGADOR DEPARTAMENTO DATOS DE CONTACTO PÁGINA WEB Industria y Transporte Carlos Andrés Luna Vázquez Manuel Mazo Quintas Marta Marrón Romera Sira Palazuelos Cagigas

Más detalles

SISTEMA DE ADMINISTRACION DE RIESGO OPERATIVO

SISTEMA DE ADMINISTRACION DE RIESGO OPERATIVO 1. INTRODUCCIÓN Las organizaciones no pueden eliminar completamente los riesgos de negocios; esto es un hecho inherente a la realidad de las empresas. La Alta Dirección de la organización decide qué nivel

Más detalles

ESTÁNDAR DE COMPETENCIA. Mantenimiento a equipo de cómputo y software

ESTÁNDAR DE COMPETENCIA. Mantenimiento a equipo de cómputo y software I.- Datos Generales Código Título Mantenimiento a equipo de cómputo y software Propósito del Estándar de Competencia Servir como referente para la evaluación y certificación de las personas que realicen

Más detalles

SISTEMAS DE SEGURIDAD FORLAB. En seguridad no puedes elegir la segunda mejor opción. indracompany.com

SISTEMAS DE SEGURIDAD FORLAB. En seguridad no puedes elegir la segunda mejor opción. indracompany.com SISTEMAS DE SEGURIDAD FORLAB En seguridad no puedes elegir la segunda mejor opción indracompany.com FORLAB FORLAB Laboratorio forense móvil para investigación de incidentes: optimización de recogida y

Más detalles

CAPITULO III Metodología

CAPITULO III Metodología CAPITULO III Metodología 3.1 Investigación de mercados Al desarrollar el presente Plan de Negocios para llevar a cabo el establecimiento del DAY SPA en la Cd. de Veracruz, es necesario realizar una investigación

Más detalles

CAPITULO 5. Diseño de la Herramienta de Medición y Seguimiento de Indicadores de Gestión.

CAPITULO 5. Diseño de la Herramienta de Medición y Seguimiento de Indicadores de Gestión. CAPITULO 5 Diseño de la Herramienta de Medición y Seguimiento de Indicadores de Gestión. 5.1. Metodología Con el objetivo de enriquecer los parámetros de Auditoría de Procesos propuesto en el capítulo

Más detalles

Tecnológico Nacional de México INSTITUTO TECNOLÓGICO DE SALINA CRUZ

Tecnológico Nacional de México INSTITUTO TECNOLÓGICO DE SALINA CRUZ Tecnológico Nacional de México INSTITUTO TECNOLÓGICO DE SALINA CRUZ UNIDAD 2: ENRUTAMIENTO ESTÁTICO Y DINÁMICO ACTIVIDAD: TRABAJO DE INVESTIGACIÓN 1 MATERIA: REDES DE COMPUTADORAS DOCENTE: SUSANA MÓNICA

Más detalles

Balanced ScoreCard BSC

Balanced ScoreCard BSC Balanced ScoreCard BSC QUÉ ES UN BALANCED SCORECARD? El Balanced ScoreCard o Cuadro de Mando Integral, es una técnica moderna de control y administración empresarial, que le ofrece al ejecutivo de hoy,

Más detalles

Procesos de Fabricación I. Guía 1 1 SISTEMAS DE CONTROL HIDRÁULICO Y NEUMÁTICO

Procesos de Fabricación I. Guía 1 1 SISTEMAS DE CONTROL HIDRÁULICO Y NEUMÁTICO Procesos de Fabricación I. Guía 1 1 SISTEMAS DE CONTROL HIDRÁULICO Y NEUMÁTICO Sistemas de Control Hidráulico y Neumático. Guía 2 1 Tema: UTILIZACIÓN DE SOFTWARE PARA DISEÑO Y SIMULACIÓN DE CIRCUITOS NEUMÁTICOS.

Más detalles

Guía docente 2012/2013

Guía docente 2012/2013 Guía docente 2012/2013 Plan 302 Lic.Publicidad y R. Públicas Asignatura 30751 TECNOLOGIA DE LOS MEDIOS AUDIOVISUALES Grupo 1 Presentación Introducción a los conceptos básicos de la tecnología audiovisual.

Más detalles

Figura 1: Abriendo el Performance Monitor Figura 2: Pantalla Inicial del Monitor

Figura 1: Abriendo el Performance Monitor Figura 2: Pantalla Inicial del Monitor Universidad de Los Andes Departamento de Ingeniería de Sistemas y Computación Infraestructura Computacional ISIS 2203 (C1) Manual Performance Monitor Windows Server 2008 Preparado por: Asistente Graduado

Más detalles

CONALEP 150 TEHUACÁN INSTALACIÓN DE SISTEMAS DE CIRCUITO CERRADO DE TELEVISIÓN PROYECTO FINAL DE MÓDULO

CONALEP 150 TEHUACÁN INSTALACIÓN DE SISTEMAS DE CIRCUITO CERRADO DE TELEVISIÓN PROYECTO FINAL DE MÓDULO CONALEP 150 TEHUACÁN INSTALACIÓN DE SISTEMAS DE CIRCUITO CERRADO DE TELEVISIÓN PROYECTO FINAL DE MÓDULO PLANTEAMIENTO INICIAL Proyecto práctico de aplicación para un Sistema CCTV con elementos de control

Más detalles

INTENSIDAD DE LUZ. Sensores Fisicoquímicos del Plan Ceibal. Autor. Versión 1 Fecha. Ubicación FOTO. Plan Ceibal Lab. Digitales Sensores

INTENSIDAD DE LUZ. Sensores Fisicoquímicos del Plan Ceibal. Autor. Versión 1 Fecha. Ubicación FOTO. Plan Ceibal Lab. Digitales Sensores INTENSIDAD DE LUZ Sensores Fisicoquímicos del Plan Ceibal. FOTO Autor Plan Ceibal Lab. Digitales Sensores Versión 1 Fecha Ubicación Índice Introducción:...3 Objetivo:...3 Preguntas iniciales:...3 Teoría:...3

Más detalles

FÍSICA Y QUÍMICA 3º ESO. OBJETIVOS, CONTENIDOS Y CRITERIOS DE EVALUACIÓN 1ª Evaluación: Unidad 1. La medida y el método científico.

FÍSICA Y QUÍMICA 3º ESO. OBJETIVOS, CONTENIDOS Y CRITERIOS DE EVALUACIÓN 1ª Evaluación: Unidad 1. La medida y el método científico. FÍSICA Y QUÍMICA 3º ESO. OBJETIVOS, CONTENIDOS Y CRITERIOS DE EVALUACIÓN 1ª Evaluación: Unidad 1. La medida y el método científico. OBJETIVOS 1. Reconocer las etapas del trabajo científico y elaborar informes

Más detalles

USO DE SMARTPHONE CON ANDROID COMO MEDIDOR DE COBERTURA CELULAR PARA USO DE UNA HERRAMIENTA DE OPTIMIZACIÓN EN REDES MÓVILES

USO DE SMARTPHONE CON ANDROID COMO MEDIDOR DE COBERTURA CELULAR PARA USO DE UNA HERRAMIENTA DE OPTIMIZACIÓN EN REDES MÓVILES 1 USO DE SMARTPHONE CON ANDROID COMO MEDIDOR DE COBERTURA CELULAR PARA USO DE UNA HERRAMIENTA DE OPTIMIZACIÓN EN REDES MÓVILES Rosa Laime Ore María Guisado Apaza Maydeli Capcha Campian A1410256@iberotec.edu.pe

Más detalles

MARIA. -Plan de Estudios- Doctorado en Marketing

MARIA. -Plan de Estudios- Doctorado en Marketing MARIA -Plan de Estudios- en Marketing CONTENIDOS 1) Presentación 5) Objetivos 2) Requisitos 6) Cursos Obligatorios 3) Plan de Estudios / Duración 7) Cursos Sugeridos 4) Tabla de Créditos 1) Presentación

Más detalles

Manual del Integrador Contable Premium Soft

Manual del Integrador Contable Premium Soft Manual del Integrador Contable Premium Soft Desarrollado por el TSU. Douglas D. Diaz A. El módulo de Integración Contable permite registrar la información de manera automática al sistema de Contabilidad

Más detalles

Sistemas Operativos. Curso 2016 Sistema de Archivos

Sistemas Operativos. Curso 2016 Sistema de Archivos Sistemas Operativos Curso 2016 Sistema de Archivos Agenda Interfaz. Archivos. Directorios. Seguridad en archivos. Implementación. Definiciones. Sistema de archivos virtual. Estructura de los directorios.

Más detalles

Introducción a las Observaciones Meteorológicas

Introducción a las Observaciones Meteorológicas Introducción a las Observaciones Meteorológicas Climatología Práctico 2013 Natalia Gil Que fenómenos atmosféricos podemos observar...? Tornados Nubes rollo Frentes En que consiste la observación meteorológica?

Más detalles

Programa de parametrización, control y monitorización de sistema operador de puertas automáticas peatonales

Programa de parametrización, control y monitorización de sistema operador de puertas automáticas peatonales Programa de parametrización, control y monitorización de sistema operador de puertas automáticas peatonales "La posibilidad de utilizar librerías propias en aplicaciones LabVIEW ha permitido reutilizar

Más detalles

MÉTODO PARA MEDIR EL AHUELLAMIENTO EN SUPERFICIES PAVIMENTADAS I.N.V. E

MÉTODO PARA MEDIR EL AHUELLAMIENTO EN SUPERFICIES PAVIMENTADAS I.N.V. E MÉTODO PARA MEDIR EL AHUELLAMIENTO EN SUPERFICIES PAVIMENTADAS I.N.V. E 789 07 1. OBJETO 1.1 Esta norma describe el método de ensayo para medir la profundidad del ahuellamiento en la superficie de pavimentos

Más detalles

Ingeniería de Software y Sistemas Computacionales

Ingeniería de Software y Sistemas Computacionales Ingeniería de Software y Sistemas Computacionales Con reconocimiento de Validez Oficial de Estudios conforme al acuerdo No. 2002188 con fecha 18 de agosto de 2000 ante la Secretaría de Educación Pública.

Más detalles

ESDUDIO DE CASO. Eficiencia Energética Buaiz Alimentos 1 CARACTERÍSTICAS DE LA EMPRESA

ESDUDIO DE CASO. Eficiencia Energética Buaiz Alimentos 1 CARACTERÍSTICAS DE LA EMPRESA Eficiencia Energética Buaiz Alimentos 1 CARACTERÍSTICAS DE LA EMPRESA Nombre fantasía: Buaiz Alimentos Ramo de actividad: Alimenticio Ubicación:: Vitória / ES Estructura tarifaria: Horo-sazonal Azul A4

Más detalles

Ingeniería de Requerimientos. requiere de un Sistema de Software.

Ingeniería de Requerimientos. requiere de un Sistema de Software. Ingeniería de uestableciendo lo que el cliente requiere de un Sistema de Software. Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 1 Objetivos u Introducción a la Noción

Más detalles

CONTENIDOS MÍNIMOS BLOQUE 2. NÚMEROS

CONTENIDOS MÍNIMOS BLOQUE 2. NÚMEROS CONTENIDOS Y CRITERIOS DE EVALUACIÓN DE MATEMÁTICAS 1º DE ESO. Bloque 1: Contenidos Comunes Este bloque de contenidos será desarrollado junto con los otros bloques a lo largo de todas y cada una de las

Más detalles

De la seguridad vial a la realidad aumentada Joaquin Ruiz Bosch

De la seguridad vial a la realidad aumentada Joaquin Ruiz Bosch De la seguridad vial a la realidad aumentada Joaquin Ruiz Bosch CEO PrevenControl http://prevencionar.com/ Ideas a destacar: Pasar hora y horas sentado delante del ordenador no es un buen deporte para

Más detalles

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS.

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS. TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS. HOJA DE ASIGNATURA CON DESGLOSE DE UNIDADES TEMÁTICAS 1. Nombre de la asignatura Ingeniería de

Más detalles

TALLER CAPACITACIÓN : USO DE LA GUÍA PARA EL ANÁLISIS DE CAUSAS EN LA TOMA DE ACCIONES CORRECTIVAS Y PREVENTIVAS. Ing. Emperatriz Zapata Zapata

TALLER CAPACITACIÓN : USO DE LA GUÍA PARA EL ANÁLISIS DE CAUSAS EN LA TOMA DE ACCIONES CORRECTIVAS Y PREVENTIVAS. Ing. Emperatriz Zapata Zapata ANÁLISIS DE CAUSAS EN LA TOMA DE ACCIONES Ing. Eira Madera Reyes Ing. Emperatriz Zapata Zapata Diciembre de 2010 Objetivo Capacitar al personal de la universidad, en el uso de la Guía para el análisis

Más detalles

Atención a Proveedores

Atención a Proveedores Atención a Proveedores Documentación Intelisis. Derechos Reservados. Publicado en http://docs.intelisis.info 1. Introducción 3 1.1 DEFINICIONES GENERALES Y APLICACIÓN CON EL ERP 4 1.2 VERSIONES DISPONIBLES

Más detalles

Transporte diario de viajeros

Transporte diario de viajeros Objetivo Desde un punto de vista medioambiental es de importancia el conocer el transporte de los viajeros con los siguientes objetivos: a) El impulso para alcanzar una movilidad sostenible. b) El derecho

Más detalles

Nueva aplicación para acceder a casilla electrónica en Internet

Nueva aplicación para acceder a casilla electrónica en Internet Nueva aplicación para acceder a casilla electrónica en Internet Antecedentes El servicio informático de mensajería electrónica es actualmente el de mayor demanda por parte de la comunidad universitaria.

Más detalles

ISO SERIE MANUALES DE CALIDAD GUIAS DE IMPLEMENTACION. ISO 9001:2008 Como implementar los cambios parte 1 de 6

ISO SERIE MANUALES DE CALIDAD GUIAS DE IMPLEMENTACION. ISO 9001:2008 Como implementar los cambios parte 1 de 6 ISO 9001 2008 GUIAS DE IMPLEMENTACION ISO 9001:2008 Como implementar los cambios parte 1 de 6 SERIE MANUALES DE CALIDAD 1 NORMA INTERNACIONAL ISO 9000 Dentro de las modificaciones de la nueva versión de

Más detalles

red de transporte de pasajeros del D.F. E s c o l a r

red de transporte de pasajeros del D.F. E s c o l a r E s c o l a r Somos un Organismo Público Descentralizado del Gobierno del Distrito Federal creado hace 9 años para brindar el servicio de transporte urbano de pasajeros, y ahora ofrecemos nuestro servicio

Más detalles

GRADO EN INGENIERÍA INFORMÁTICA

GRADO EN INGENIERÍA INFORMÁTICA Facultad de Informática Universidad Complutense de Madrid GRADO EN INGENIERÍA INFORMÁTICA El Grado en Ingeniería Informática incluye dos itinerarios. Itinerario de computación Itinerario de tecnología

Más detalles

Microsoft Project 2013

Microsoft Project 2013 Microsoft Project 2013 SALOMÓN CCANCE Project 2013 Salomón Ccance www.ccance.net CCANCE WEBSITE ANEXO 2. MANEJO DE VISTAS Y TABLAS. 2.1. ELEMENTOS DE VISUALIZACIÓN DE MICROSOFT OFFICE PROJECT PROFESSIONAL

Más detalles

ECUADOR ESTRATÉGICO GUÍA DE DISEÑO BIOCLIMÁTICO EFICIENCIA ENERGÉTICA Y CONFORT TÉRMICO ADAPTABLE A LAS ZONAS CLIMÁTICAS DEL ECUADOR

ECUADOR ESTRATÉGICO GUÍA DE DISEÑO BIOCLIMÁTICO EFICIENCIA ENERGÉTICA Y CONFORT TÉRMICO ADAPTABLE A LAS ZONAS CLIMÁTICAS DEL ECUADOR ECUADOR ESTRATÉGICO GUÍA DE DISEÑO BIOCLIMÁTICO EFICIENCIA ENERGÉTICA Y CONFORT TÉRMICO ADAPTABLE A LAS ZONAS CLIMÁTICAS DEL ECUADOR En base a los requerimientos de las Comunidades del Milenio, el proyecto

Más detalles

En un accidente de circulación, es obligatorio avisar a la Autoridad si no hay herido y la seguridad de la circulación está restablecida?

En un accidente de circulación, es obligatorio avisar a la Autoridad si no hay herido y la seguridad de la circulación está restablecida? TEST 21 1º- En un accidente de circulación, es obligatorio avisar a la utoridad si no hay herido y la seguridad de la circulación está restablecida? Sí. No. Sí, cuando alguna de las personas implicadas

Más detalles

La conectividad es la clave para una tecnología avanzada de ECG. Los sistemas de ECG no

La conectividad es la clave para una tecnología avanzada de ECG. Los sistemas de ECG no ELECTROCARDIÓGRAFOS MARCA GENERAL ELECTRIC MAC 800 La conectividad es la clave para una tecnología avanzada de ECG. Los sistemas de ECG no sólo deben ofrecer la suficiente portabilidad como para llegar

Más detalles

CAPÍTULO 1 IDENTIFICACIÓN DEL PROBLEMA

CAPÍTULO 1 IDENTIFICACIÓN DEL PROBLEMA CAPÍTULO 1 IDENTIFICACIÓN DEL PROBLEMA A través de este primer capítulo se describe el problema que se plantea en la presente tesis. De la misma manera se determina el objetivo general y los objetivos

Más detalles

El transporte de carga en México: el marco regulatorio para la red que mueve a México

El transporte de carga en México: el marco regulatorio para la red que mueve a México El transporte de carga en México: el marco regulatorio para la red que mueve a México Alfonso de la Parra del Valle Director General Tecnosistemas y Peaje, S.A. de C.V. Introducción El transporte de carga

Más detalles

ORGANIZACIÓN DE AVIACIÓN CIVIL INTERNACIONAL Agencia Especializada de las Naciones Unidas. Oficina Regional NACC de la OACI Página 1

ORGANIZACIÓN DE AVIACIÓN CIVIL INTERNACIONAL Agencia Especializada de las Naciones Unidas. Oficina Regional NACC de la OACI Página 1 ORGANIZACIÓN DE AVIACIÓN CIVIL INTERNACIONAL Agencia Especializada de las Naciones Unidas Oficina Regional NACC de la OACI Página 1 Oficina Regional NACC de la OACI Página 2 AYUDAS VISUALES PARA LA NAVEGACIÓN

Más detalles

file://d:\trabajo\boletin\anteriores\84.htm

file://d:\trabajo\boletin\anteriores\84.htm Página 1 de 5 Si usted no puede visualizar correctamente este mensaje, presione aquí Boletín técnico de INDISA S.A. Medellín, 18 de junio de 2010 No.84 EL CÁLCULO DE LA CONFIABILIDAD EN EL MANTENIMIENTO

Más detalles

INNOVATE 2016 FORMULARIO PARA LA PRESENTACIÒN DE PROYECTOS DE INVESTIGACIÒN CIENTÍFICO - TECNOLÓGICO. Reconocimiento facial para seguridad biométrica

INNOVATE 2016 FORMULARIO PARA LA PRESENTACIÒN DE PROYECTOS DE INVESTIGACIÒN CIENTÍFICO - TECNOLÓGICO. Reconocimiento facial para seguridad biométrica FORMULARIO PARA LA PRESENTACIÒN DE PROYECTOS DE INVESTIGACIÒN CIENTÍFICO - TECNOLÓGICO 1. INFORMACIÓN GENERAL DEL PROYECTO a) Título (Nombre del trabajo o proyecto de investigación) Reconocimiento facial

Más detalles

Personas afectadas: 2. Se realizan reconocimientos específicos una vez al año?

Personas afectadas: 2. Se realizan reconocimientos específicos una vez al año? LISTAS DE CHEQUEO - EVALUACIÓN DE LAS PANTALLAS DE VISUALIZACIÓN DE DATOS Empresa: Sección: Fecha Evaluación: Realizada por: Personas afectadas: Fecha Revisión: SI NO 1. Se ha realizado una vigilancia

Más detalles

FICHA PÚBLICA DEL PROYECTO MUSEO ZACATECANO NUMERO DE PROYECTO: EMPRESA BENEFICIADA:

FICHA PÚBLICA DEL PROYECTO MUSEO ZACATECANO NUMERO DE PROYECTO: EMPRESA BENEFICIADA: NUMERO DE PROYECTO: 0000000000210044 EMPRESA BENEFICIADA: MUSEO ZACATECANO TÍTULO DEL PROYECTO: PLATAFORMA TECNOLOGICA DE REALIDAD AUMENTADA QUE INCREMENTE EL INTERES DE LAS NUEVAS GENERACIONES EN MUSEOS

Más detalles

Apéndice A. Curso para piloto privado

Apéndice A. Curso para piloto privado Apéndice A a. Aplicación.- El presente Apéndice establece los requisitos para un curso de piloto privado en la categoría de avión y helicóptero. b. Requisitos de inscripción.- La persona deberá contar

Más detalles

Se definen los siguientes objetivos que se extraen de la propuesta anteriormente planteada:

Se definen los siguientes objetivos que se extraen de la propuesta anteriormente planteada: Anexo Introducción Esta herramienta desarrollada junto con toda la información que se ha generado pertenece a un proyecto real. Este desarrollo se incluye en el proyecto MAVSEL (Minería, Análisis y Visualización

Más detalles

Objetivos. Epígrafes 3-1. Francisco José García Álvarez

Objetivos. Epígrafes 3-1. Francisco José García Álvarez Objetivos Entender el concepto de variabilidad natural de un procesos Comprender la necesidad de los gráficos de control Aprender a diferenciar los tipos de gráficos de control y conocer sus limitaciones.

Más detalles

acústica en el medio ambiente

acústica en el medio ambiente ID Ingeniería Acústica es una empresa dedicada a la realización de todo tipo de proyectos acústicos en el medioambiente, la edificación y la industria. Sus servicios están enfocados a la medida, control

Más detalles

CAPITULO I INTRODUCCIÓN. Diseño Digital

CAPITULO I INTRODUCCIÓN. Diseño Digital CAPITULO I INTRODUCCIÓN Diseño Digital QUE ES DISEÑO DIGITAL? UN SISTEMA DIGITAL ES UN CONJUNTO DE DISPOSITIVOS DESTINADOS A LA GENERACIÓN, TRANSMISIÓN, PROCESAMIENTO O ALMACENAMIENTO DE SEÑALES DIGITALES.

Más detalles

Cámara réflex digital. DSRL (Digital Single Lens Réflex)

Cámara réflex digital. DSRL (Digital Single Lens Réflex) Cámara réflex digital DSRL (Digital Single Lens Réflex) Cuerpo Lente, Objetivo, óptica objetivo pentaprisma Sensor o película obturador 1. Visor Réflex: Lo cual significa, que cuando miramos a través del

Más detalles

APLICACIÓN EMAYA MÓDULO INCIDENCIAS PARA DISPOSITIVOS MÓVILES IPHONE

APLICACIÓN EMAYA MÓDULO INCIDENCIAS PARA DISPOSITIVOS MÓVILES IPHONE APLICACIÓN EMAYA MÓDULO INCIDENCIAS PARA DISPOSITIVOS MÓVILES IPHONE ÍNDICE 1- INTRODUCCIÓN 2 2- INSTALACIÓN Y DESCARGA 3 3- INICIO 3 3-1- REGISTRO 4 3.2- IDIOMA 5 3.3- INFORMACIÓN 5 4- GESTIÓN DE INCIDENCIAS

Más detalles

SISTEMAS DE DETECCIÓN DE INTRUSOS EN LA PLATAFORMA NETFPGA USANDO RECONOCIMIENTO DE EXPRESIONES REGULARES.

SISTEMAS DE DETECCIÓN DE INTRUSOS EN LA PLATAFORMA NETFPGA USANDO RECONOCIMIENTO DE EXPRESIONES REGULARES. Título del trabajo de grado: SISTEMAS DE DETECCIÓN DE INTRUSOS EN LA PLATAFORMA NETFPGA USANDO RECONOCIMIENTO DE EXPRESIONES REGULARES. Estudiante de Maestría: Antonio Lobo Director del Proyecto: Prof.

Más detalles

SERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE

SERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE Nº 1 1. IDENTIFICACIÓN DE LA GUIA DE APRENDIZAJE Programa de Formación: Técnico en programación de software Nombre del Proyecto: Sistema de información para la gestión empresarial Fase del proyecto: FASE

Más detalles

UNIVERSIDAD AUTONOMA DE TLAXCALA

UNIVERSIDAD AUTONOMA DE TLAXCALA UNIVERSIDAD AUTONOMA DE TLAXCALA INTERACCION HUMANO COMPUTADORA MA. MARGARITA LABASTIDA ROLDAN EVALUACIONES DE LA USABILIDAD Inspección consistente. Listas de comprobación. Análisis de sistemas existentes.

Más detalles

Para obtener la accesibilidad entre la ciudad nueva y la Panamericana se han planificado dos carreteras de vinculación. (PLANO 1)

Para obtener la accesibilidad entre la ciudad nueva y la Panamericana se han planificado dos carreteras de vinculación. (PLANO 1) PLAN DE MOVILIDAD El Plan de Movilidad Metropolitana Yachay (PMMY) es un documento guía para conexión del proyecto con su entorno y la movilidad interna del proyecto, y para la implementación de los distintos

Más detalles

PODER JUDICIAL DEPARTAMENTO DE GESTIÒN HUMANA Sección Análisis de Puestos

PODER JUDICIAL DEPARTAMENTO DE GESTIÒN HUMANA Sección Análisis de Puestos PODER JUDICIAL DEPARTAMENTO DE GESTIÒN HUMANA Sección Análisis de Puestos TÉCNICO EN VIDEO FORENSE I. NATURALEZA DEL TRABAJO Ejecutar labores técnicas relacionadas con la captura y procesamiento de imágenes

Más detalles

CENTRO DE GESTIÓN DE MOVILIDAD UN CAMBIO FUNDAMENTAL PARA EL TRÁNSITO DE MONTEVIDEO. LA EVOLUCIÓN HACIA UNA GESTIÓN DE CIUDAD INTELIGENTE.

CENTRO DE GESTIÓN DE MOVILIDAD UN CAMBIO FUNDAMENTAL PARA EL TRÁNSITO DE MONTEVIDEO. LA EVOLUCIÓN HACIA UNA GESTIÓN DE CIUDAD INTELIGENTE. CENTRO DE GESTIÓN DE MOVILIDAD UN CAMBIO FUNDAMENTAL PARA EL TRÁNSITO DE MONTEVIDEO. LA EVOLUCIÓN HACIA UNA GESTIÓN DE CIUDAD INTELIGENTE. Poner en funcionamiento el Centro de Gestión de Movilidad de Montevideo

Más detalles

UNIVERSIDAD JUÁREZ AUTÓNOMA DE TABASCO DIVISIÓN ACADÉMICA DE CIENCIAS BIOLÓGICAS LICENCIATURA EN INGENIERÍA AMBIENTAL

UNIVERSIDAD JUÁREZ AUTÓNOMA DE TABASCO DIVISIÓN ACADÉMICA DE CIENCIAS BIOLÓGICAS LICENCIATURA EN INGENIERÍA AMBIENTAL UNIVERSIDAD JUÁREZ AUTÓNOMA TABASCO DIVISIÓN ACADÉMICA CIENCIAS BIOLÓGICAS LICENCIATURA EN INGENIERÍA AMBIENTAL ASIGNATURA: INSTRUMENTACIÓN Y CONTROL NIVEL: AREA FORMACIÓN SUSTANTIVA PROFESIONAL HORAS

Más detalles