Visión por Computadora – Una aproximacion a su uso en los vehículos – Parte II

Debemos entender que la visión por computadora hoy en día la encontramos en todo tipo de vehículos, como los ya nombrados autos y los rovers marcianos, pero también está en aviones, barcos, multicópteros (los drones) y hasta satélites.

En el caso de los automóviles y su familia, esta tecnología mejora la seguridad y el confort. Una de las mayores áreas de aplicación es en la seguridad vial, millones de personas mueren al año mundialmente por accidentes donde el culpable es el conductor, y que pudieron ser fácilmente evitados.

Nos basta sólo con abrir youtube y buscar accidentes de autos para ver desastres causados por las congestiones y la imprudencia del conductor.

Otra ventaja es que, nos guste o no, una computadora puede estar mirando adelante, atrás y hacia los costados al mismo tiempo, y sin cansarse.

 

Ahondemos un poco más.

Cada computadora debe ejecutar una cierta cantidad de análisis sobre los datos que a recibiendo (las imágenes). Dicho análisis debe producir resultados que son usados junto a las reglas denegocio para la toma de decisiones, por eso, esta toma de datos y análisis deben tener una alta precisión y robustez.

 

Acerca de los análisis y demás consideraciones:

Cuando hablamos de los análisis que se deben hacer de las imágenes hablamos, no de las técnicas para procesarlos (no aún), sino que hablamos por ejemplo de:

  • Análisis de movimiento: una secuencia de video (una sucesión de frames) tomadas desde la misma posición y cámara, la proyección de un punto de uno de los frames a otra posición diferente en otro frame, define mediante un par de píxeles un vector de movimiento. Mediante varios vectores de movimiento podemos llegar a inferir el movimiento de prácticamente cada pixel entre los frames.

  • Análisis de Distancia: mediante visión estéreo (con dos cámaras ubicadas similares a nuestros ojos), se ha vuelto un poco más fácil calcular las distancias de un objeto a otro. Los pixeles son definidos mediante proyecciones al mismo punto de la superficie, rectificados luego los canales izquierdo y derecho a una geometría estéreo canónica.

  • Análisis del ambiente: en un escenario existen objetos estáticos y dinámicos al mismo tiempo, y cada uno de ellos debe ser detectado. Así, un auto debería detectar y diferenciar un ciclista de un árbol (y esquivarlos a ambos). Así la computadora puede detectar señales de tráfico, luces de posición y hasta las líneas de demarcación de la autopista. Así, un vehículo podrá reaccionara frenar frente a un semáforo en rojo, como dejar pasar a un ciclista que levanto el brazo para girar a la izquierda.

  • Análisis de seguimiento: una gran parte del entendimiento de los que hacen los vehículos alrededor es seguir y entender su posición en un ambiente de constante cambio. Y no sólo se sigue el movimiento de los vehículos circundantes, sino también se sigue el movimiento del propio vehículo.

  • Análisis del conductor: además de medir la estabilidad del volante para comprender a conductor, las cámaras también son una gran herramienta para comprender el estado del mismo (si estuviera borracho se verá reflejado en movimientos vacilantes y aleatorios). Cámaras interiores con reconocimiento de rostros y ojos pueden analizar la posición y movimiento de la cabeza, y reaccionar para ayudar al conductor.

  • Análisis de reconstrucción del escenario: mediante todas las anteriores, se llega a reconstruir un ambiente 3D de la situación en un período de tiempo, pudiendo entonces llevar a la comparación y evaluación de laperformance, tanto del conductor como del mismo software de visión por computadora.

 

Como localizar a otros vehículos.

 

Siempre se hablan de tres métodos principales para hacer esto: 1- métodos basados en el conocimiento, 2- métodos basados en el movimiento y 3- métodos basados en la visión (todos ellos usan en mayor o menor medida los análisis anteriores).

El primero de estos métodos utiliza el conocimiento anterior para localizar un vehículo en una imagen; la simetría, el color, las sombras, la forma geométrica y hasta la textura son por lo general repetidas en muchos objetos construidos por el hombre, y por supuesto, los autos no están exentos de esto.

En general, estos métodos de utilizar lo ya conocido son efectivos en ambientes simples, pero se complican en situaciones reales, donde hay fluctuaciones de luz, calidad de imagen y cambios en el fondo que complejizan los cálculos.

Los métodos basados en el movimiento en la normalidad son hábiles en estimar el movimiento relativo de los vehículos pero consumen mucho tiempo de cálculo y son muy pobres en la detección de obstáculos estáticos.

Ahora, el tercero de estos métodos normalmente sigue dos pasos: primero genera una hipótesis de las regiones de una imagen que pueden contener vehículos y, segundo, verifica esta hipótesis mediante el uso de distintos algoritmos.

Pero veamos todo en detalle.

 

Usando Sensores: Activos vs Pasivos

 

Lo más común es que se utilicen sensores activos para la detección de un vehículo, sensores como láser, lidars y radares. Son llamados activos porque ellos pueden calcular la distancia a un objeto mediante la medición del tiempo en que una señal emitida por el sensor viaja hasta el objeto, se refleja y vuelve. Su mayor ventaja es que dicho sensor por lo general calcula esta medición semi independientemente, de manera directa prácticamente sin requerir recursos computacionales.

Como desventaja hay que citar su baja resolución espacial y velocidad de escaneo lenta. Inclusive ocurría en las primeras implementaciones que muchos vehículos moviéndose al unísono con los mismos sensores interferían entre ellos.

Los sensores ópticos, como las cámaras, son usualmente referidas como sensores pasivos porque adquieren los datos de una forma no intrusiva. Su gran ventaja sobre los activos es su costo; con la introducción al mercado de cámaras cada vez más baratas, podemos poner una en cada punto de visión del vehículo logrando casi una visión de 360 grados.

Así, los sensores ópticos pueden ser utilizados de manera más efectiva para los vehículos que están tomando una curva cambiándose de carril, por ejemplo.

La información visual igualmente es muy importante para otras tantas aplicaciones relacionadas, como detección de líneas, reconocimiento de señales de tránsito y reconocimiento de objetos sin necesidad de requerir modificaciones en la infraestructura vial.

Por el otro lado, la detección de vehículos basadas en sensores ópticos es desafiante por la cantidad de variables diferentes que convergen en la misma imagen. Por ejemplo, los vehículos pueden variar en forma, tamaño y color; depende su apariencia también de su pose y puede ser afectada por objeto cercanos, sin hablar que también es variación la intensidad de luz, los reflejos, el fondo, los movimientos bruscos e inesperados y un sin fin de interacciones entre ellos que deben ser tenidas en cuenta.

 

Nuevamente, seguimos la próxima semana.

 

Deja un comentario