Piensa rápido, robot


Un algoritmo de odometría visual utiliza eventos de cambio de brillo de baja latencia de un sensor dinámico de Vision (DVS) y los datos de una cámara normal para proporcionar valores de brillo absolutos. La fotografía muestra el marco de la cámara, y la foto de la izquierda muestra las actividades de DVS (que se visualiza en rojo y azul), además de la escala de grises de la cámara.


Algoritmo que aprovechan los datos de un nuevo sensor podría hacer que los robots autónomos sean más ágiles.



Una de las razones por las que aún no tenemos demasiados coches de auto-conducción y mini-helicópteros de entrega de compras en línea es que los vehículos autónomos tienden a no funcionar bien bajo presión. Un sistema que puede perfectamente volar paralelo a un parque a 5 mph, puede tener problemas para evitar obstáculos a 35 mph.

Parte del problema es el tiempo que toma para recibir e interpretar datos de la cámara. Un vehículo autónomo utilizando una cámara estándar para controlar su entorno podría tomar alrededor de una quinta parte de un segundo para actualizar su ubicación. Eso es lo suficientemente bueno para las condiciones normales de funcionamiento, pero no lo suficientemente rápido para manejar lo inesperado.

Andrea Censi, un científico de investigación en el Laboratorio del MIT para los sistemas de información y de decisión, piensa que la solución podría ser la de complementar las cámaras con un nuevo tipo de sensor llamado ("neuromorphic") un sensor basado en eventos que puede tomar mediciones un millón de veces por segundo.

En la Conferencia Internacional de Robótica y Automatización, Censi y Davide Scaramuzza de la Universidad de Zurich presentaron el primer algoritmo de estimación de estado -el tipo de algoritmo que el robots utiliza para calibrar su posición- para procesar los datos de los sensores basados ​​en eventos. Un robot que ejecutase su algoritmo podría actualizar su ubicación en cada milésima de segundo más o menos, lo que le permite realizar maniobras mucho más ágiles.

"Una cámara normal, tiene una serie de sensores, y luego hay un reloj", explica Censi. "Si usted tiene una cámara de 30 cuadros por segundo, cada 33 milisegundos el reloj se congelan todos los valores, y los valores se leen en orden" Con un sensor basado en eventos, por el contrario, "cada píxel actúa como un sensor independiente ", dice Censi. "Cuando hay un cambio en la luminancia - ya sea en la dirección positiva o negativa - es mayor que un umbral, el pixel dice, veo algo interesante 'y comunica esta información como un evento. Y entonces se espera hasta que se vea otro cambio".

En la animación, para medir la velocidad de la plataforma se realiza un seguimiento mediante la fusión de los eventos desde el sensor basado en eventos (aquí se muestra en rojo y azul) y los fotogramas de una cámara normal. (Cortesía de los investigadores.)
Evento destacado

Cuando un algoritmo de estimación de estado estándar recibe una imagen de una cámara montada en un robot, primero se identifican "características": gradaciones de color o tono que se necesita para ver fronteras entre objetos. A continuación, se selecciona un subconjunto de esas características que considera poco probable que cambie mucho con nuevas perspectivas.

Treinta milisegundos más tarde, cuando la cámara dispara de nuevo, el algoritmo lleva a cabo el mismo tipo de análisis y comienza a trabajar para que coincida con las características entre las dos imágenes. Este es un proceso de ensayo y error, que puede tomar de 50 a 250 milisegundos, dependiendo de cómo ha cambiado drásticamente la escena. Una vez que se corresponden las características, el algoritmo puede deducir de sus cambios de posición hasta qué punto el robot se ha movido.

El algoritmo de Censi y de Scaramuzza complementa datos de la cámara con los eventos notificados por un sensor basado en eventos, que fue diseñado por su colaborador Tobi Delbrück del Instituto de Neuroinformática en Zurich. La primera ventaja del nuevo algoritmo es que no tiene que identificar las características: Cada evento es intrínsecamente un cambio en la luminancia, que es lo que define una característica. Y debido a que los eventos son reportados tan rápidamente - cada millonésima de un segundo - el problema de la concordancia se hace mucho más simple. No hay tantas características candidatas a tener en cuenta ya que el robot no se puede haber movido muy lejos.

Por otra parte, el algoritmo no intenta hacer coincidir todas las características de una imagen a la vez. Para cada caso, se genera un conjunto de hipótesis acerca de hasta qué punto el robot se ha movido, lo que corresponde a varias funciones candidatas. Después de que suficientes acontecimientos se han acumulado, simplemente selecciona la hipótesis de lo que se convierte en una imagen util con mayor frecuencia.

En experimentos con robots con una cámaras y sensores basado en eventos, su algoritmo resultó ser tan preciso como los algoritmos de estimación de estado existentes.
En la animación, la resolución temporal de sensores basados en eventos es tan rápida que se puede ver la rotación de las hélices a Quadrotor. (Cortesía de los investigadores.)
Una de las inspiraciones para el nuevo trabajo, dice Censi, fue una serie de experimentos recientes hechos por Vijay Kumar de la Universidad de Pennsylvania, que demuestran que los helicópteros Quadrotor (helicópteros robóticos con cuatro conjuntos de rotores) podría realizar maniobras muy ágiles. Pero en esos experimentos, Kumar medio la ubicación de los robots utilizando una batería de cámaras externas que capturaron 1.000 exposiciones por segundo. Censi cree que su algoritmo de Scaramuzza permitiría un quadrotor con sensores a bordo para replicar los resultados de Kumar.

Ahora él y sus colegas tiene un algoritmo de estimación de estado fiable, dice Censi, el siguiente paso es desarrollar un algoritmo de control correspondiente (un algoritmo que decide qué hacer sobre la base de las estimaciones del estado). Este es el objeto de una continua colaboración con Emilio Frazzoli, profesor de aeronáutica y astronáutica del MIT.

"Este trabajo es muy interesante", dice Roland Siegwart, profesor de sistemas autónomos en el Instituto Federal Suizo de Tecnología de Zurich. "Es, que yo sepa, la primera vez que un sensor de visión dinámica neuromorphic [DVS] se ha integrado y evaluado en una plataforma de robot móvil."

"El DVS ofrece un nuevo tipo de modalidad de detección con gran ancho de banda," continúa Siegwart. "Esto tiene bastante potencial para los movimientos del robot de alta velocidad específicos, tales como maniobras dinámicas con quadrotors con la percepción y el control sólo de a bordo."

Pero queda por ver si los sensores neuromórficos probarán ser los medios más eficientes para hacer las odometría advierte. "Tengo algunas dudas si una combinación de un DVS con una cámara estándar puede superar, en calidad y precio, un sistema que se integra perfectamente con una unidad de medición inercial [una tecnología bien establecida que utiliza acelerómetros y giroscopios para medir el movimiento] con una cámara ".