Articulo de referencia

Tensor trifocal

En visión artificial , el tensor trifocal (también llamado tritensor ) es una matriz de números de 3×3×3 (es decir, un tensor ) que incorpora todas las relaciones geométricas pr...

En visión artificial , el tensor trifocal (también llamado tritensor ) es una matriz de números de 3×3×3 (es decir, un tensor ) que incorpora todas las relaciones geométricas proyectivas entre tres vistas. Relaciona las coordenadas de puntos o líneas correspondientes en las tres vistas, siendo independiente de la estructura de la escena y dependiendo únicamente del movimiento relativo (es decir, la pose ) entre las tres vistas y sus parámetros de calibración intrínsecos. Por lo tanto, el tensor trifocal puede considerarse como la generalización de la matriz fundamental en tres vistas. Cabe destacar que, a pesar de que el tensor está compuesto por 27 elementos, solo 18 de ellos son realmente independientes.

También existe un denominado tensor trifocal calibrado , que relaciona las coordenadas de puntos y líneas en tres vistas a partir de sus parámetros intrínsecos y codifica la pose relativa de las cámaras hasta escala global, con un total de 11 elementos independientes o grados de libertad. La reducción de los grados de libertad permite un menor número de correspondencias para ajustar el modelo, a costa de una mayor no linealidad. [ 1 ]

Cortes de correlación

El tensor también puede verse como una colección de tres matrices de rango dos de 3 x 3.T1,T2,T3{\displaystyle {\mathbf {T} }_{1},\;{\mathbf {T} }_{2},\;{\mathbf {T} }_{3}}conocidas como sus secciones de correlación . Suponiendo que las matrices de proyección de tres vistas sonPAG=[I|0]{\displaystyle {\mathbf {P} }=[{\mathbf {I} }\;|\;{\mathbf {0} }]},PAG=[A|a4]{\displaystyle {\mathbf {P} }'=[{\mathbf {A} }\;|\;{\mathbf {a} }_{4}]}yPAG=[B|b4]{\displaystyle {\mathbf {P} ''}=[{\mathbf {B} }\;|\;{\mathbf {b} }_{4}]}, las secciones de correlación del tensor correspondiente se pueden expresar en forma cerrada comoTi=aib4ta4bit,i=13{\displaystyle {\mathbf {T} }_{i}={\mathbf {a} }_{i}{\mathbf {b} }_{4}^{t}-{\mathbf {a} }_{4}{\mathbf {b} }_{i}^{t},\;i=1\ldots 3}, dónde ai,bi{\displaystyle {\mathbf {a} }_{i},\;{\mathbf {b} }_{i}}son respectivamente las i -ésimas columnas de las matrices de la cámara. En la práctica, sin embargo, el tensor se estima a partir de coincidencias de puntos y líneas en las tres vistas.

restricciones trilineales

Una de las propiedades más importantes del tensor trifocal es que da lugar a relaciones lineales entre líneas y puntos en tres imágenes. Más específicamente, para tríos de puntos correspondientes.incógnitaincógnitaincógnita{\displaystyle {\mathbf {x} }\;\leftrightarrow \;{\mathbf {x} }'\;\leftrightarrow \;{\mathbf {x} }''}y cualquier línea correspondientelll{\displaystyle {\mathbf {l} }\;\leftrightarrow \;{\mathbf {l} }'\;\leftrightarrow \;{\mathbf {l} }''}A través de ellas, se cumplen las siguientes restricciones trilineales :

(lt[T1,T2,T3]l)[l]×=0t{\displaystyle ({\mathbf {l} }^{\prime t}\left[{\mathbf {T} }_{1},\;{\mathbf {T} }_{2},\;{\mathbf {T} }_{3}\right]{\mathbf {l} }'')[{\mathbf {l} }]_{\times }={\mathbf {0} }^{t}}
lt(iincógnitaiTi)l=0{\displaystyle {\mathbf {l} }^{\prime t}\left(\sum _{i}x_{i}{\mathbf {T} }_{i}\right){\mathbf {l} }''=0}
lt(iincógnitaiTi)[incógnita]×=0t{\displaystyle {\mathbf {l} }^{\prime t}\left(\sum _{i}x_{i}{\mathbf {T} }_{i}\right)[{\mathbf {x} }'']_{\times }={\mathbf {0} }^{t}}
[incógnita]×(iincógnitaiTi)l=0{\displaystyle [{\mathbf {x} }']_{\times }\left(\sum _{i}x_{i}{\mathbf {T} }_{i}\right){\mathbf {l} }''={\mathbf {0} }}
[incógnita]×(iincógnitaiTi)[incógnita]×=03×3{\displaystyle [{\mathbf {x} }']_{\times }\left(\sum _{i}x_{i}{\mathbf {T} }_{i}\right)[{\mathbf {x} }'']_{\times }={\mathbf {0} }_{3\times 3}}

dónde[]×{\displaystyle [\cdot ]_{\times }}denota la matriz de producto cruzado antisimétrica .

Transferir

Dado el tensor trifocal de tres vistas y un par de puntos coincidentes en dos vistas, es posible determinar la ubicación del punto en la tercera vista sin información adicional. Esto se conoce como transferencia de puntos y un resultado similar se aplica a líneas y cónicas. Para curvas generales, la transferencia se puede realizar mediante un modelo de curva diferencial local de círculos osculadores (es decir, curvatura), que luego se puede transferir como cónicas. [ 2 ] Se ha estudiado la transferencia de modelos de tercer orden que reflejan la torsión espacial utilizando tensores trifocales calibrados, [ 3 ] pero sigue siendo un problema abierto para tensores trifocales no calibrados.

Estimación

Sin calibrar

El caso clásico son 6 correspondencias de puntos [ 4 ] [ 5 ] que dan 3 soluciones.

El caso de la estimación del tensor trifocal a partir de 9 correspondencias de líneas se ha resuelto recientemente. [ 6 ]

Calibrado

Se ha citado que la estimación del tensor trifocal calibrado es notoriamente difícil y requiere correspondencias de 4 puntos. [ 7 ]

Recientemente se ha resuelto el caso de usar solo tres correspondencias de puntos, donde a los puntos se les atribuyen direcciones tangentes o líneas incidentes; con solo dos de los puntos teniendo líneas incidentes, este es un problema mínimo de grado 312 (por lo que puede haber como máximo 312 soluciones) y es relevante para el caso de curvas generales (cuyos puntos tienen tangentes), o puntos característicos con direcciones atribuidas (como direcciones SIFT). [ 8 ] La misma técnica resolvió el caso mixto de tres correspondencias de puntos y una correspondencia de línea, que también se ha demostrado que es mínimo con grado 216.

Referencias

  1. Martyushev, EV (2017). "Sobre algunas propiedades de los tensores trifocales calibrados". Journal of Mathematical Imaging and Vision . 58 (2): 321– 332. arXiv : 1601.01467 . Bibcode : 2017JMIV...58..321M . doi : 10.1007/s10851-017-0712-x . S2CID 1634602 . 
  2. Schmid, Cordelia (2000). "La geometría y el emparejamiento de líneas y curvas en múltiples vistas" (PDF) . Revista Internacional de Visión por Computadora . 40 (3): 199– 233. doi : 10.1023/A:1008135310502 . S2CID 11844321 . 
  3. Fabbri, Ricardo; Kimia, Benjamin (2016). "Geometría diferencial multivista de curvas". International Journal of Computer Vision . 120 (3): 324– 346. arXiv : 1604.08256 . Bibcode : 2016arXiv160408256F . doi : 10.1007/s11263-016-0912-7 . S2CID 11908870 . 
  4. Richard Hartley y Andrew Zisserman (2003). «Capítulo en línea: Tensor trifocal» (PDF) . Geometría de múltiples vistas en visión por computadora . Cambridge University Press. ISBN 978-0-521-54051-3.
  5. Heyden, A. (1995). "Reconstrucción a partir de secuencias de imágenes mediante profundidades relativas". Actas de la Conferencia Internacional IEEE sobre Visión por Computadora . págs. 1058–1063 . doi : 10.1109/ICCV.1995.466817 . ISBN  0-8186-7042-8. S2CID 7789642 . 
  6. Larsson, Viktor; Astrom, Kalle; Oskarsson, Magnus (2017). «Efficient Solvers for Minimal Problems by Syzygy-Based Reduction» . 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR) . pp. 2383–2392 . doi : 10.1109/CVPR.2017.256 . ISBN  978-1-5386-0457-1. S2CID 13069612 . 
  7. Nister, David; Schaffalitzky, Frederik (2006). "Cuatro puntos en dos o tres vistas calibradas: teoría y práctica". International Journal of Computer Vision . 67 (2): 211– 231. doi : 10.1007/s11263-005-4265-x . S2CID 10231211 . 
  8. Fabbri, Ricardo; Duff, Timoteo; Fan, Hongyi; Regán, Margarita; de Pinho, David; Tsigaridas, Elías; Wampler, Carlos; Hauenstein, Jonathan; Kimia, Benjamín; Leykin, Antón; Pajdla, Tomas (23 de marzo de 2019). "Postura relativa trifocal a partir de líneas en puntos y su solución eficiente". arXiv : 1903.09755 [ cs.CV ].

Lecturas adicionales

  • Hartley, Richard I. (1997). "Líneas y puntos en tres vistas y el tensor trifocal". International Journal of Computer Vision . 22 (2): 125– 140. doi : 10.1023/A:1007936012022 . S2CID 8979544 . 
  • Torr, PHS; Zisserman, A. (1997). "Parametrización y cálculo robustos del tensor trifocal". Image and Vision Computing . 15 (8): 591– 607. CiteSeerX 10.1.1.41.3172 . doi : 10.1016/S0262-8856(97)00010-3 . 
  • Visualización de geometría trifocal (originalmente de Sylvain Bougnoux de INRIA Robotvis, requiere Java )

Algoritmos

  • Implementación en Matlab de la estimación del tensor trifocal no calibrado y su comparación con matrices fundamentales por pares.
  • Implementación en C++ de la estimación del tensor trifocal calibrado mediante código de continuación homotópica optimizado. Actualmente incluye casos de tres puntos correspondientes con líneas en dichos puntos (como en posiciones y orientaciones de características, o puntos de curva con tangentes), y también para tres puntos correspondientes y una correspondencia de línea.