Contexto


La introducción de la electrónica en el contexto automotriz ha impulsado el desarrollo de nuevas funciones y aplicaciones de los vehículos. Algunas han sido motivadas por la creciente necesidad de vehículos más eficientes. En otros casos el arrancador de la innovación ha sido la creatividad de técnicos e investigadores.

Es este el caso de la integración de los sistemas de visión a los sistemas de bordo de los vehículos. La meta a perseguir es la creación de vehículos autónomos, es decir, vehículos capaces de manejarse solos.

En este tema investigarás los fundamentos de visión computacional y buscarás como estas técnicas se integran y potencian el vehículo moderno. Los conceptos teóricos se aterrizarán revisando el caso de Stanley, un vehículo autónomo creado en la Universidad de Stanford, el cual fue capaz de ganar sin ayuda del hombre una carrera en el desierto.


Preguntas detonadoras o de reflexión:

  • ¿Conoces algún automóvil con sistema de visión? ¿Qué experiencia tuviste con ese auto?

Explicación

13.1 Camas y sistemas de visión

La navegación autónoma de un vehículo encuentra actualmente gran interés de parte de varios sectores de la sociedad. Los gobiernos, por ejemplo, apuestan a que gracias a vehículos autónomos el número de accidentes y muertes por descuidos al manejar pueda disminuir drásticamente. Los mismos gobiernos son muy optimistas acerca de los efectos positivos de la navegación automática que los vehículos podrían tener en la diminución del tráfico urbano.

Es evidente que hacer que una computadora maneje un vehículo en lugar de un piloto humano es una tarea hoy en día compleja. De hecho es objeto de investigación activa por parte de muchas universidades y empresas. No existe actualmente a la venta un vehículo capaz de manejarse solo. Sin embargo, ya existen prototipos de automóviles autónomos, por ejemplo el Google Car.

Figura 1. Google Car. El primer vehículo autónomo de uso comercial producido a escala industrial.
Imagen obtenida de: http://recode.net/2014/05/27/googles-new-self-driving-car-ditches-the-steering-wheel/ Sólo para fines educativos.

Todos los proyectos de automóviles autónomos cuentan con elementos comunes. Por ejemplo Volkswagen en colaboración con la Universidad Libre de Berlín propone utilizar los siguientes elementos:

GPS: el sistema de posicionamiento global basado en satélites.

Radares: estos radares tienen como objetivo detectar obstáculos que pueda haber en el trayecto del automóvil, los cuales son detectados estando a cien metros o más del vehículo.

Cámaras: situadas en la parte superior de la luna delantera del automóvil hay una serie de cámaras ópticas que se encargan de identificar las señales de tráficos y las marcas que hay en la carretera.

Las cámaras en particular son los sensores más prometedores. A diferencia de los radares o del GPS registran imágenes a partir de las cuales se pueden generar múltiples decisiones.

Una cámara para tomar estas decisiones necesita estar acoplada a un sistema de visión. Es decir una computadora capaz de elaborar las imágenes capturadas por la cámara. El objetivo de un sistema de visión es extraer algún tipo de información de una o más fotos capturadas por la cámara. Por ejemplo, en un vehículo autónomo resulta de gran interés detectar e interpretar las señales viales que se pueden detectar con una cámara.

La disciplina que estudia las técnicas relacionadas a los sistemas de visión se llama visión computacional y constituye una rama de la inteligencia artificial.

Los objetivos típicos de la visión artificial aplicada a control de vehículos incluyen:

  • La detección, segmentación, localización y reconocimiento de ciertos objetos en imágenes (por ejemplo, bordes de una avenida, vehículos, peatones, entre otras.).
  • La evaluación de los resultados (por ejemplo, segmentación, registro).
  • Registro de diferentes imágenes de una misma escena u objeto, es decir, hacer concordar un mismo objeto en diversas imágenes.
  • Seguimiento de un objeto en una secuencia de imágenes.

Estos objetivos se consiguen por medio de las técnicas y algoritmos más diversos, como el reconocimiento de patrones, el aprendizaje estadístico, la geometría de proyección, la teoría de grafos entre otras.

Un sistema de visión se puede interpretar como un sistema de análisis de señales donde la señal que está siendo analizada es una escena. El sensor que “captura” la escena es una cámara. El proceso que hoy en día se usa para capturar una o más imágenes se llama digitalización. Una imagen digital se compone de una matriz rectangular de píxeles que representan una serie de valores de intensidad ordenados en un sistema de coordenadas. Un pixel representa la unidad más chica utilizada para construir una imagen. La cantidad de pixeles de una imagen depende de la calidad del sensor utilizado para capturar la imagen (cámara).

Figura 2. Agrandamiento de una imagen para mostrar el concepto de pixel. Imagen obtenida de: http://www.photoshopessentials.com/basics/selections/why-make-selections/ Sólo para fines educativos.

13.2 Fundamentos de sistemas de visión asistidos por computadora

Un sistema de visión opera una serie de transformaciones sobre la imagen capturada por la cámara con las finalidades que ya se argumentaron en los subtemas anteriores. El proceso de elaboración de la imagen se suele llamar “pipeline” o tubería debido a que típicamente la imagen pasa por una serie de procesos consecutivos como un fluido que pasa a través de una tubería.

Figura 3. Ejemplo de pipeline de elaboración y análisis de imágenes. Imagen obtenida de: http://www.trollhetta.com/?page_id=52 Sólo para fines educativos.

Una pipeline típica para un proceso de análisis de imágenes en un vehículo que quiera detectar señales viales es el siguiente:

Haz clic para conocer su detalle.

Es la etapa en la cual se captura una escena del mundo real a través de una cámara. Esta etapa involucra parámetros como la resolución de la cámara.

En esta etapa se llevan a cabo operaciones preliminares como el filtrado del ruido o el ajuste del contraste de la imagen.

En esta etapa se pretende separar los objetos que aparecen en la escena de su entorno. Por ejemplo, en una aplicación automotriz, poder distinguir obstáculos como vehículos y peatones es fundamental. Existen muchas opciones para segmentar una imagen, por ejemplo nos podríass fijar en el color de los sujetos. Técnicas más complicadas involucran algoritmos de inteligencia artificial.

En esta etapa se supone que eres capaz de separar un sujeto del resto de la escena. En esta etapa se miden características de los sujetos segmentados en la imagen. En el ejemplo del automóvil se buscaría tamaño, factor de forma, color y otras características que representan el objeto automóvil.

En esta etapa el sistema de visión utiliza los datos que representan la imagen para “entender” qué quieren decir. Esta etapa hace uso masivo de las técnicas de machine learning que son algoritmos computacionales diseñados para hacer que una computadora pueda distinguir patrones y reconocer objetos. Un ejemplo de las operaciones que se llevan a cabo en esta etapa es la comprensión que la imagen de una señal vial quiere decir alto.

Esta última etapa se dedica a la representación de los resultados y recolección de estadísticos. En los sistemas más avanzados los resultados recolectados se retroalimentan al sistema de visión para que esto aprenda de manera autónoma.

En todas las etapas es necesario el conocimiento del problema que se está intentando resolver.

13.3 Caso: “Stanley” – Vehículo Autónomo de la Universidad de Stanford

Uno de los primeros y más relevantes ejemplos de integración entre vehículos y sistemas de visión está representado por el caso del vehículo robot Stanley de la Universidad de Stanford.

En el 2003 la Agencia de Proyectos de Investigación Avanzada para la Defensa de EU (DARPA, por sus siglas en inglés) lanzó el reto denominado Grand Challenge para impulsar el desarrollo de tecnologías de navegación automática de vehículos terrestres. Stanley fue el primer vehículo autónomo en acabar un circuito de 142 millas en el desierto Mojave en poco menos de 7 horas. Gran parte del sistema de navegación fue basado en un sistema de visión capaz de predecir cuáles tramos de circuito eran adecuados para el manejo del vehículo. El sistema de visión también integraba una lógica de aprendizaje que volvió Stanley muy robusto ante cambios inesperados de las condiciones ambientales (típicas del desierto).

En Stanley el sistema de visión se utiliza para predecir las condiciones de la carretera y de esta forma aumentar el rango de medición de los sensores laser a grandes velocidades.

Entre las funciones del sistema de visión de Stanley se tenía el aprendizaje de la textura de la carretera y la estimación del horizonte. Estos dos datos se suman a las otras mediciones para planear la trayectoria del robot y evitar que este salga de su pista.

Figura 4. (a) Stanley cruzando la línea de meta de la carrera. (b) El director del DARPA, Dr. Tony Tether premiando Stanley. Imágenes obtenidas de: http://robots.stanford.edu/papers/thrun.stanley05.pdf Sólo para fines educativos.


Figura 5. (a) Foto de los sensores de Stanley. (b) Sistema de computadoras de Stanley. (c) mecanismo del cambio de marcha automatizado de Stanley. Imágenes obtenidas de: http://robots.stanford.edu/papers/thrun.stanley05.pdf Sólo para fines educativos.


Figura 6. Esquema del sistema software de Stanley. Imagen obtenida de: http://digital-transport.tumblr.com/page/3 Sólo para fines educativos.


El sistema de visión aparece en el bloque de percepción, es decir, la parte que se encarga de establecer donde Stanley se encuentra y en qué relación está con el ambiente que lo rodea. El sistema de visión se comunica con las cámaras y genera informaciones útiles para planear la trayectoria del vehículo.

Cierre


El desarrollo de vehículos autónomos es uno de los temas más actuales en electrónica automotriz. Muchas armadoras ya integran sistemas que asisten el conductor en las maniobras de manejo típicas, como por ejemplo el estacionamiento. La construcción de vehículos autónomos plantea la exigencia de introducir sensores y tecnologías no convencionales en los vehículos. Una de estas es la tecnología de visión computacional a través de la cual es posible alcanzar resultados inimaginables hasta hace pocos años, como demuestra el caso del robot-vehículo Stanley.

Revisa a continuación el Checkpoint:

Asegúrate de comprender:

  • Los sensores que se pueden sustituir a través de los sistemas de visión.
  • Las etapas de un análisis de imágenes o videos.

 

Revisa el glosario del curso aquí.

Referencias