estimación de pose 3D

Estimación de pose en un sistema de captura de movimiento.

La estimación de pose 3D es un proceso de predicción de la transformación de un objeto a partir de una pose de referencia definida por el usuario, dada una imagen o un escaneo 3D . Surge en visión por computadora o robótica , donde la pose o transformación de un objeto se puede usar para alinear modelos de diseño asistidos por computadora , identificar, agarrar o manipular el objeto.

Los datos de imagen a partir de los cuales se determina la pose de un objeto pueden ser una sola imagen, un par de imágenes estéreo o una secuencia de imágenes en la que, normalmente, la cámara se mueve con una velocidad conocida. Los objetos que se consideran pueden ser bastante generales, incluyendo un ser vivo o partes del cuerpo, por ejemplo, una cabeza o unas manos. Sin embargo, los métodos que se utilizan para determinar la pose de un objeto suelen ser específicos de una clase de objetos y, en general, no se puede esperar que funcionen bien para otros tipos de objetos.

Desde una cámara 2D no calibrada

Es posible estimar la rotación y traslación 3D de un objeto 3D a partir de una única fotografía 2D, si se conoce un modelo 3D aproximado del objeto y se conocen los puntos correspondientes en la imagen 2D. Recientemente se ha desarrollado una técnica común para resolver este problema [ ¿cuándo? ] ha sido "POSIT", [1] donde la pose 3D se estima directamente a partir de los puntos del modelo 3D y los puntos de la imagen 2D, y corrige los errores de forma iterativa hasta que se encuentra una buena estimación a partir de una sola imagen. [2] La mayoría de las implementaciones de POSIT solo funcionan en puntos no coplanares (en otras palabras, no funcionan con objetos planos o planos). [3]

Otro enfoque consiste en registrar un modelo CAD 3D sobre la fotografía de un objeto conocido optimizando una medida de distancia adecuada con respecto a los parámetros de pose. [4] [5] La medida de distancia se calcula entre el objeto en la fotografía y la proyección del modelo CAD 3D en una pose determinada. Es posible la proyección en perspectiva o la proyección ortogonal dependiendo de la representación de pose utilizada. Este enfoque es apropiado para aplicaciones donde está disponible un modelo CAD 3D de un objeto conocido (o categoría de objeto).

Desde una cámara 2D calibrada

Dada una imagen 2D de un objeto y la cámara que está calibrada con respecto a un sistema de coordenadas mundial, también es posible encontrar la pose que le da al objeto 3D en su sistema de coordenadas de objeto. [6] Esto funciona de la siguiente manera.

Extrayendo 3D de 2D

A partir de una imagen 2D, se extraen puntos de la imagen que corresponden a las esquinas de una imagen. Los rayos de proyección de los puntos de la imagen se reconstruyen a partir de los puntos 2D, de modo que se pueden determinar los puntos 3D que deben incidir en los rayos reconstruidos.

Pseudocódigo

El algoritmo para determinar la estimación de la pose se basa en el algoritmo iterativo del punto más cercano . La idea principal es determinar las correspondencias entre las características de la imagen 2D y los puntos en la curva del modelo 3D.

(a) Reconstruir los rayos de proyección a partir de los puntos de la imagen.
(b) Estime el punto más cercano de cada rayo de proyección a un punto en el contorno 3D
(c) Estime la pose del contorno con el uso de este conjunto de correspondencia
(d) ir a (b)

El algoritmo anterior no tiene en cuenta imágenes que contienen un objeto parcialmente ocluido. El siguiente algoritmo supone que todos los contornos están acoplados rígidamente, lo que significa que la pose de un contorno define la pose de otro contorno.

(a) Reconstruir los rayos de proyección a partir de los puntos de la imagen.
(b) Para cada rayo de proyección R:
     (c) Para cada contorno 3D:
          (c1) Estime el punto P1 del rayo R más cercano a un punto del contorno
          (c2) si (n == 1) elija P1 como P real para la correspondencia punto-línea
          (c3) en caso contrario compare P1 con P:
                   si dist(P1, R) es menor que dist(P, R) entonces
                       elija P1 como nueva P
(d) Utilice (P, R) como conjunto de correspondencia.
(e) Estimar la pose con este conjunto de correspondencia
(f) Transformar contornos, ir a (b)

Estimación de la pose mediante comparación.

Existen sistemas que utilizan una base de datos de un objeto con diferentes rotaciones y traslaciones para comparar una imagen de entrada y estimar la pose. La precisión de estos sistemas se limita a situaciones que están representadas en su base de datos de imágenes, sin embargo el objetivo es reconocer una pose, en lugar de determinarla. [7]

Software

  • posest, una biblioteca GPL C / C++ para estimación de pose 6DoF a partir de correspondencias 3D-2D.
  • diffgeom2pose, solucionador rápido de Matlab para la estimación de pose 6DoF a partir de solo dos correspondencias 3D-2D de puntos con direcciones (vectores) o puntos en curvas (puntos-tangentes). Los puntos se pueden atribuir SIFT con direcciones de características.
  • MENOS: Paquete C++ para estimación de pose (relativa) de tres vistas. Incluye casos de tres puntos correspondientes con líneas en estos puntos (como en posiciones y orientaciones de entidades, o puntos de curva con tangentes), y también para tres puntos correspondientes y una correspondencia de línea.

Ver también

Referencias

  1. Javier Barandiaran (28 de diciembre de 2017). "Tutorial POSITIVO". OpenCV.
  2. ^ Daniel F. Dementhon; Larry S. Davis (1995). "Postura de objeto basada en modelo en 25 líneas de código". Revista Internacional de Visión por Computadora . 15 (1–2): 123–141. doi :10.1007/BF01450852. S2CID  14501637 . Consultado el 29 de mayo de 2010 .
  3. ^ Javier Barandiarán. "Tutorial POSIT con OpenCV y OpenGL". Archivado desde el original el 20 de junio de 2010 . Consultado el 29 de mayo de 2010 .
  4. ^ Srimal Jayawardena, Marcus Hutter y Nathan Brewer (2011). "Una nueva pérdida invariante de iluminación para la estimación de pose monocular 3D". Conferencia internacional de 2011 sobre informática de imágenes digitales: técnicas y aplicaciones . págs. 37–44. CiteSeerX 10.1.1.766.3931 . doi :10.1109/DICTA.2011.15. ISBN   978-1-4577-2006-2. S2CID  17296505.
  5. ^ Srimal Jayawardena, Di Yang y Marcus Hutter (2011). "Segmentación de imágenes asistida por modelo 3D". Conferencia internacional de 2011 sobre informática de imágenes digitales: técnicas y aplicaciones . págs. 51–58. CiteSeerX 10.1.1.751.8774 . doi :10.1109/DICTA.2011.17. ISBN   978-1-4577-2006-2. S2CID  1665253.
  6. ^ Bodo Rosenhahn. "Fundamentos sobre la estimación de poses 2D-3D". CV en línea . Consultado el 9 de junio de 2008 .
  7. ^ Vasilis Athitsos; Stan Sclarof (1 de abril de 2003). Estimación de la postura de la mano en 3D a partir de una imagen desordenada (PDF) (Reporte técnico). Tecnología en Ciencias de la Computación de la Universidad de Boston. Archivado desde el original (PDF) el 31 de julio de 2019.

Bibliografía

  • Rosenhahn, B. "Fundamentos sobre la estimación de poses 2D-3D".
  • Rosenhahn, B. "Estimación de pose de contornos de forma libre 3D en geometría conforme".
  • Athitsos, V. "Estimación de la postura de la mano en 3D a partir de una imagen desordenada".

enlaces externos

  • Estimación de una Postura 3D
Obtenido de "https://en.wikipedia.org/w/index.php?title=3D_pose_estimation&oldid=1202546764"