En robótica y visión por computadora , la odometría visual es el proceso de determinar la posición y orientación de un robot mediante el análisis de las imágenes de la cámara asociadas. Se ha utilizado en una amplia variedad de aplicaciones robóticas, como en los Mars Exploration Rovers . [1]
Descripción general
En la navegación , la odometría es el uso de datos del movimiento de los actuadores para estimar el cambio de posición a lo largo del tiempo a través de dispositivos como codificadores giratorios para medir las rotaciones de las ruedas. Si bien es útil para muchos vehículos con ruedas o sobre orugas, las técnicas tradicionales de odometría no se pueden aplicar a robots móviles con métodos de locomoción no estándar, como los robots con patas . Además, la odometría adolece universalmente de problemas de precisión, ya que las ruedas tienden a patinar y deslizarse por el suelo creando una distancia recorrida no uniforme en comparación con las rotaciones de las ruedas. El error se agrava cuando el vehículo opera sobre superficies no lisas. Las lecturas de odometría se vuelven cada vez menos fiables a medida que estos errores se acumulan y se agravan con el tiempo.
La odometría visual es el proceso de determinar la información de la odometría equivalente utilizando imágenes de cámara secuenciales para estimar la distancia recorrida. La odometría visual permite una mayor precisión de navegación en robots o vehículos que utilizan cualquier tipo de locomoción en cualquier superficie [ cita requerida ] .
Tipos
Hay varios tipos de VO.
Monocular y estéreo
Dependiendo de la configuración de la cámara, VO se puede categorizar como Monocular VO (cámara única), Stereo VO (dos cámaras en configuración estéreo).
Método directo y basado en características
La información visual de VO tradicional se obtiene mediante el método basado en características, que extrae los puntos de características de la imagen y los rastrea en la secuencia de imágenes. Los desarrollos recientes en la investigación de VO proporcionaron una alternativa, llamada método directo, que usa la intensidad de píxeles en la secuencia de imágenes directamente como entrada visual. También existen métodos híbridos.
Odometría inercial visual
Si se utiliza una unidad de medida inercial (IMU) dentro del sistema VO, se la denomina comúnmente odometría inercial visual (VIO).
Algoritmo
La mayoría de los enfoques existentes de la odometría visual se basan en las siguientes etapas.
- Adquirir imágenes de entrada: utilizando cámaras individuales , [2] [3] cámaras estéreo , [3] [4] u cámaras omnidireccionales . [5] [6]
- Corrección de imagen: aplique técnicas de procesamiento de imágenes para eliminar la distorsión de la lente, etc.
- Detección de características : defina operadores de interés, haga coincidir características entre marcos y construya un campo de flujo óptico .
- Utilice la correlación para establecer la correspondencia de dos imágenes y no realice un seguimiento de características a largo plazo .
- Extracción y correlación de características.
- Construya un campo de flujo óptico ( método de Lucas-Kanade ).
- Compruebe los vectores del campo de flujo para detectar posibles errores de seguimiento y elimine los valores atípicos. [7]
- Estimación del movimiento de la cámara a partir del flujo óptico. [8] [9] [10] [11]
- Opción 1: filtro de Kalman para el mantenimiento de la distribución estimada del estado.
- Opción 2: encuentre las propiedades geométricas y 3D de las características que minimizan una función de costo basada en el error de reproyección entre dos imágenes adyacentes. Esto se puede hacer mediante la minimización matemática o el muestreo aleatorio .
- Repoblación periódica de trackpoints para mantener la cobertura en toda la imagen.
Una alternativa a los métodos basados en características es la técnica de odometría visual "directa" o basada en la apariencia que minimiza un error directamente en el espacio del sensor y posteriormente evita la coincidencia y extracción de características. [4] [12] [13]
Otro método, denominado "visiodometría", estima las rototraducciones planas entre imágenes utilizando la correlación de fase en lugar de extraer características. [14] [15]
Egomotion
Egomotion se define como el movimiento 3D de una cámara dentro de un entorno. [16] En el campo de la visión por computadora , egomovimiento se refiere a estimar el movimiento de una cámara en relación con una escena rígida. [17] Un ejemplo de estimación de egomoción sería estimar la posición de movimiento de un automóvil en relación con las líneas en la carretera o las señales de tráfico que se observan desde el propio automóvil. La estimación de egomoción es importante en aplicaciones de navegación de robots autónomos . [18]
Descripción general
El objetivo de estimar el egomovimiento de una cámara es determinar el movimiento 3D de esa cámara dentro del entorno utilizando una secuencia de imágenes tomadas por la cámara. [19] El proceso de estimación del movimiento de una cámara dentro de un entorno implica el uso de técnicas de odometría visual en una secuencia de imágenes capturadas por la cámara en movimiento. [20] Esto se hace típicamente usando la detección de características para construir un flujo óptico a partir de dos cuadros de imagen en una secuencia [16] generada a partir de cámaras individuales o cámaras estéreo. [20] El uso de pares de imágenes estéreo para cada fotograma ayuda a reducir el error y proporciona información adicional de profundidad y escala. [21] [22]
Las características se detectan en el primer fotograma y luego se combinan en el segundo fotograma. Esta información se usa luego para crear el campo de flujo óptico para las características detectadas en esas dos imágenes. El campo de flujo óptico ilustra cómo las características divergen de un solo punto, el foco de expansión . El foco de expansión se puede detectar desde el campo de flujo óptico, lo que indica la dirección del movimiento de la cámara y, por lo tanto, proporciona una estimación del movimiento de la cámara.
También existen otros métodos para extraer información de egomoción de las imágenes, incluido un método que evita la detección de características y los campos de flujo óptico y utiliza directamente las intensidades de la imagen. [dieciséis]
Ver también
- Estimación muerta
- Odometría
- Flujo óptico
- Captura de movimiento óptico
Referencias
- ^ Maimone, M .; Cheng, Y .; Matthies, L. (2007). "Dos años de odometría visual en los vehículos de exploración de Marte" (PDF) . Revista de robótica de campo . 24 (3): 169–186. CiteSeerX 10.1.1.104.3110 . doi : 10.1002 / rob.20184 . Consultado el 10 de julio de 2008 .
- ^ Chhaniyara, Savan; KASPAR ALTHOEFER; LAKMAL D. SENEVIRATNE (2008). "Técnica de odometría visual con identificación de marcador circular para la estimación de parámetros de movimiento" . Avances en robótica móvil: Actas de la XI Conferencia Internacional sobre Robots Trepadores y Caminantes y Tecnologías de Soporte para Máquinas Móviles, Coimbra, Portugal . La XI Conferencia Internacional sobre Robots Trepadores y Caminantes y Tecnologías de Soporte para Máquinas Móviles . 11 . World Scientific, 2008.
- ^ a b Nister, D; Naroditsky, O .; Bergen, J (enero de 2004). Odometría visual . Visión por computadora y reconocimiento de patrones, 2004. CVPR 2004. 1 . págs. I-652 - I-659 Vol.1. doi : 10.1109 / CVPR.2004.1315094 .
- ^ a b Comport, AI; Malis, E .; Rives, P. (2010). F. Chaumette; P. Corke; P. Newman (eds.). "Odometría visual cuadrifocal en tiempo real". Revista Internacional de Investigación en Robótica . 29 (2–3): 245–266. CiteSeerX 10.1.1.720.3113 . doi : 10.1177 / 0278364909356601 . S2CID 15139693 .
- ^ Scaramuzza, D .; Siegwart, R. (octubre de 2008). "Odometría visual omnidireccional monocular guiada por apariencia para vehículos terrestres al aire libre". Transacciones IEEE sobre robótica . 24 (5): 1015-1026. doi : 10.1109 / TRO.2008.2004490 . hdl : 20.500.11850 / 14362 . S2CID 13894940 .
- ^ Corke, P .; Strelow, D .; Singh, S. "Odometría visual omnidireccional para un rover planetario". Robots y sistemas inteligentes, 2004. (IROS 2004). Actas. 2004 IEEE / RSJ International Conference on . 4 . doi : 10.1109 / IROS.2004.1390041 .
- ^ Campbell, J .; Sukthankar, R .; Nourbakhsh, I .; Pittsburgh, IR "Técnicas para evaluar el flujo óptico para la odometría visual en terrenos extremos". Robots y sistemas inteligentes, 2004. (IROS 2004). Actas. 2004 IEEE / RSJ International Conference on . 4 . doi : 10.1109 / IROS.2004.1389991 .
- ^ Sunderhauf, N .; Konolige, K .; Lacroix, S .; Protzel, P. (2005). "Odometría visual con ajuste de paquete escaso en un vehículo autónomo al aire libre". En Levi; Schanz; Lafrenz; Avrutin (eds.). Tagungsband Autonome Mobile Systeme 2005 (PDF) . Reihe Informatik aktuell. Springer Verlag. págs. 157-163. Archivado desde el original (PDF) el 11 de febrero de 2009 . Consultado el 10 de julio de 2008 .
- ^ Konolige, K .; Agrawal, M .; Bolles, RC; Cowan, C .; Fischler, M .; Gerkey, BP (2006). "Mapeo y navegación al aire libre mediante visión estéreo". Proc. Del Intl. Symp. Sobre Robótica Experimental (ISER) . Springer Tracts en Robótica Avanzada. 39 : 179-190. doi : 10.1007 / 978-3-540-77457-0_17 . ISBN 978-3-540-77456-3.
- ^ Olson, CF; Matthies, L .; Schoppers, M .; Maimone, MW (2002). "Navegación móvil con ego-motion estéreo" (PDF) . Robótica y sistemas autónomos . 43 (4): 215-229. doi : 10.1016 / s0921-8890 (03) 00004-6 . Consultado el 6 de junio de 2010 .
- ^ Cheng, Y .; Maimone, MW; Matthies, L. (2006). "Odometría visual en los vehículos de exploración de Marte". Revista IEEE Robótica y Automatización . 13 (2): 54–62. CiteSeerX 10.1.1.297.4693 . doi : 10.1109 / MRA.2006.1638016 . S2CID 15149330 .
- ^ Engel, Jakob; Schöps, Thomas; Cremers, Daniel (2014). "LSD-SLAM: SLAM monocular directo a gran escala" (PDF) . En Fleet D .; Pajdla T .; Schiele B .; Tuytelaars T. (eds.). Visión por computadora . Congreso Europeo de Visión por Computador 2014. Apuntes de Conferencia en Informática. 8690 . doi : 10.1007 / 978-3-319-10605-2_54 .
- ^ Engel, Jakob; Sturm, Jürgen; Cremers, Daniel (2013). "Odometría visual semidensa para una cámara monocular" (PDF) . Conferencia Internacional IEEE sobre Visión por Computador (ICCV) . CiteSeerX 10.1.1.402.6918 . doi : 10.1109 / ICCV.2013.183 .
- ^ Zaman, M. (2007). "Localización relativa de alta precisión con una sola cámara". Robótica y Automatización, 2007. (ICRA 2007). Actas. 2007 IEEE International Conference on . doi : 10.1109 / ROBOT.2007.364078 .
- ^ Zaman, M. (2007). "Localización relativa de alta resolución mediante dos cámaras". Revista de Robótica y Sistemas Autónomos (JRAS) . 55 (9): 685–692. doi : 10.1016 / j.robot.2007.05.008 .
- ^ a b c Irani, M .; Rousso, B .; Peleg S. (junio de 1994). "Recuperación de Ego-Motion mediante estabilización de imagen" (PDF) . Conferencia de la IEEE Computer Society sobre visión por computadora y reconocimiento de patrones : 21-23 . Consultado el 7 de junio de 2010 .
- ^ Burger, W .; Bhanu, B. (noviembre de 1990). "Estimación de egomoción 3D a partir de la secuencia de imágenes en perspectiva" . Transacciones IEEE sobre análisis de patrones e inteligencia de máquinas . 12 (11): 1040–1058. doi : 10.1109 / 34.61704 . S2CID 206418830 .
- ^ Shakernia, O .; Vidal, R .; Shankar, S. (2003). "Estimación omnidireccional de Egomotion a partir del flujo de retroproyección" (PDF) . Jornada sobre Visión por Computador y Taller de Reconocimiento de Patrones . 7 : 82. CiteSeerX 10.1.1.5.8127 . doi : 10.1109 / CVPRW.2003.10074 . S2CID 5494756 . Consultado el 7 de junio de 2010 .
- ^ Tian, T .; Tomasi, C .; Heeger, D. (1996). "Comparación de enfoques para la computación de Egomotion" (PDF) . Conferencia de IEEE Computer Society sobre visión por ordenador y reconocimiento de patrones : 315. Archivado desde el original (PDF) el 8 de agosto de 2008 . Consultado el 7 de junio de 2010 .
- ^ a b Milella, A .; Siegwart, R. (enero de 2006). "Estimación de movimiento de ego basada en estéreo mediante seguimiento de píxeles y punto más cercano iterativo" (PDF) . IEEE International Conference on Computer Vision Systems : 21. Archivado desde el original (PDF) el 17 de septiembre de 2010 . Consultado el 7 de junio de 2010 .
- ^ Olson, CF; Matthies, L .; Schoppers, M .; Maimoneb MW (junio de 2003). "Navegación móvil con ego-motion estéreo" (PDF) . Robótica y sistemas autónomos . 43 (9): 215-229. doi : 10.1016 / s0921-8890 (03) 00004-6 . Consultado el 7 de junio de 2010 .
- ^ Sudin Dinesh, Koteswara Rao, K.; Unnikrishnan, M.; Brinda, V.; Lalithambika, VR; Dhekane, MV " Mejoras en el algoritmo de odometría visual para rovers de exploración planetaria ". Conferencia internacional IEEE sobre tendencias emergentes en comunicaciones, control, procesamiento de señales y aplicaciones informáticas (C2SPCA), 2013