fbpx
Wikipedia

Triangulación (visión artificial)


En visión artificial triangulación se refiere al proceso de determinación de un punto en el espacio 3D dadas sus proyecciones en dos o más imágenes. Para resolver este problema es necesario conocer los parámetros de la función de proyección de 3D a 2D de las cámaras involucradas, que en su versión más simple se representan por sus matrices de cámara. La triangulación a veces se la denomina reconstrucción.

El problema de triangulación es trivial en la teoría. Como cada punto en una imagen corresponde a una línea (denominado rayo de proyección o recta proyectante) en el espacio 3D, todos los puntos de esa línea 3D se proyectan al mismo punto 2D de la imagen. La proyecciones de un punto 3D en varias imágenes se denominan puntos correspondientes en esas imágenes. Los rayos de proyección de estos puntos correspondientes se intersectan en el espacio, en el punto 3D buscado. Más adelante se presenta una variedad de formulaciones algebraicas para determinar este punto 3D.

En la práctica, sin embargo, las coordenadas de los puntos de una imagen no se pueden medir con precisión arbitraria. Varios tipos de ruido, tales como error geométrico por distorsión de lente o error de método de detección del punto característico, modelizan la disparidad entre las coordenadas medidas y sus valores reales exactos desconocidos. Como consecuencia, los rayos de proyección generados a partir de imágenes no se intersectan en el espacio 3D. Entonces el problema se replantea en la determinación del punto 3D óptimo que mejor encaje con las mediciones. La literatura propone varias definiciones de optimalidad, y de cada una deriva un método de cálculo, cada uno de ellos con un resultado ligeramente diferente.

A continuación se asume que la triangulación se realiza sobre un par de puntos correspondientes obtenidos de dos cámaras estenopeicas.

La imagen a la izquierda ilustra el geometría epipolar de un par de cámaras estenopeicas estéreo. Utilizando álgebra lineal básica se puede determinar el punto 3D de la intersección de manera directa.

La imagen a la derecha muestra el caso real. Las proyecciones no se pueden obtener con absoluta precisión, por una serie de motivos:

  • Distorsión geométrica, por ejemplo la distorsión de lente, la que implica desvíos de la proyección 3D a 2D . Hasta cierto punto estos errores pueden ser compensados mediante un modelo de antidistorsión, reduciendo el desvío a un error geométrico residual.
  • Las lentes dispersan cada rayo de luz. La mancha proyectada se reduce a un punto por medio de un modelo matemático de dispersión de luz. El punto resulta de un cálculo y no de una medición directa, y su posición difiere del óptimo.
  • Las cámaras digitales discretizan la imagen en píxeles, perdiéndose la información entre píxeles. Los métodos de precisión subpíxel interpolan las coordenadas del punto proyectado, aproximando al punto óptimo, pero nunca de manera exacta.
  • Los puntos de imagen y1' e y2' se suelen obtener con un algoritmo de detección de puntos característicos, cada uno con un tipo de error inherente al método.

Como consecuencia, los puntos de imagen medidos son e en vez de e . Sus líneas de proyección (azules) no se cruzan en el espacio 3D y pero, pueden no pasar cerca de x. Sólo se cruzan las líneas que satisfacen la restricción epipolar definido por la matriz esencial o fundamental. Dado el ruido inherente a la medición y determinación de los puntos proyectados e , la restricción epipolar no se satisface nunca o eventualmente sólo de manera casual e irrelevante.

Esta observación conduce al problema que debe resolver la triangulación. ¿Cuál es la mejor estimación xest de x dados , y la geometría de los cámaras? La respuesta se encuentra definiendo un error que dependa de xest , y luego minimizando este error. En las secciones siguientes se presentan algunos de los varios métodos para computar xest presentes en la literatura.

Todos los métodos de la triangulación resultan en xest = x si e , excepto para singularidades. Los métodos presentan resultados diferentes sólo cuando la restricción epipolar no se satisface.

Propiedades de métodos de triangulación

Un método de triangulación se puede describir en términos de una función   de modo que

 

donde   son las coordenadas homogéneas de los puntos 2D detectados sobre la imagen y   son las matrices de cámara. x (punto 3D) es la representación homogénea del punto 3D resultante. El signo  indica proporcionalidad, de modo que  arroja un valor proporcional a x, pues está expresado en coordenadas homogéneas.

Antes de abordar los métodos concretos, conviene atender algunos conceptos generales.

Singularidades

Los métodos fallan al estimar x (punto 3D) cuando éste se encuentra en cierta región del espacio, denominada región singular. Un punto en esta región se denomina singularidad.

Algunos efectos de las singularidades sobre el sistema de ecuaciones de cada métodoː

  • el sistema de ecuaciones queda indeterminado y no tiene solución única
  • el método no puede expresar infinitos

Tal región es la recta que une los focos de las dos cámaras. Un punto de esa recta no se puede triangular, el sistema queda indeterminado.

Otra región singular es la de los puntos 3D en el infinito. Algunos métodos no incorporan la capacidad de expresar puntos en el infinito, de modo que para esos métodos esta región es singular.

Métodos reales y métodos ideales

Los métodos de triangulación ideales tienen solución en forma cerrada con interés teórico y académico solamente, pues fallan al llevarlos a la práctica. Los métodos de triangulación reales asumen que los rayos proyectivos son alabeados (es decir, no se cruzan) y denominan error a la distancia entre las proyecciones medidas y las reproyecciones (las proyecciones del punto 3D triangulado).

Los métodos de triangulación reales calculan el punto 3D que minimice ese error. La principal diferencia entre los diversos métodos radica en la forma en que se evalúa el error. El error cuadrático computa la distancia euclidiana y es se lo denomina estándar de oro, pero tal como demostraron Harley y Sturm (ver Método polinomial), el problema no tiene solución analítica y requiere cálculo numérico. Ante esta situación se han propuesto otras formulaciones de la función error que simplifican el análisis matemático a costa de producir una triangulación menos certera. Algunos errores utilizados reformulan la manera de calcular las distanciasː

Complejidad computacional

La función   es sólo una representación matemática de una computación que suele ser relativamente compleja. Algunos métodos resultan en una formulación de   en forma cerrada, mientras que otros en forma de serie infinita. Estos últimos son métodos iterativos. Esto implica que la complejidad computacional y el tiempo de cómputo varía fuertemente entre los diversos métodos.

Algunos métodos de triangulación encontrados en la literatura

Algunos métodos usuales de triangulación para aplicar en casos reales:

  • Método del punto medio
    • obtiene el punto común más cercano a ambas rectas proyectivas
    • es el más simple y de resultados más pobres
  • DLT: transformación lineal directa
    • utiliza el algoritmo DLT para resolver la triangulación
  • Métodos lineales
    • plantean una ecuación lineal que se puede resolver por varios métodos, por ejemploː
      • Método lineal con cuadrados mínimos
      • Método lineal con autovalores
  • Métodos basados en matriz esencial
    • varios métodos que procuran hacer cumplir la restricción epipolar

Método del punto medio

Cada proyección  e   tiene una recta proyectiva asociada (líneas azules en la imagen de la izquierda arriba), aquí denotadas   y  . Sea   la función de distancia entre una línea L1' y un punto 3D x tal que

    distancia euclidiana entre   y  

El método del punto medio determina xest que minimiza

 

Como resultado xest se encuentra exactamente en el medio del segmento de línea más corto que une las dos líneas de proyección.

Éste es un método simple pero con malos resultados, pues el punto medio no guarda relación con los errores de mediciónː el punto medio no minimiza el error. Tiene un planteo sobresimplificado que no ataca el problema central. El método se menciona con frecuencia por ser uno de los primeros, pero se encuentra en desuso en favor de otros más sofisticados con resultados mucho mejores.

Método lineal

Consiste en replantear el problema bajo la forma matricial A.x = 0. La solución trivial no resulta útil, hay varios métodos para obtener el punto x de esta ecuación.

Siendo u la expresión homogénea de la proyección en una imagen del punto 3D x (también en coordenadas homogéneas)ː

 

 

P es la matriz de proyección, de 3x4. Llamando pi a cada fila de Pː

 


Eliminando wː

 


Despejando x se obtienen dos ecuaciones correspondientes a la proyección de x en una imagenː

 

De manera similar, la proyección de x en la segunda imagen proporciona dos ecuaciones más, llegando a la forma deseadaː

 

donde A es una matriz de 4x4.

La solución trivial x = (0) es indeterminada en coordenadas homogéneas. El punto x triangulado se obtiene agregando una restricción matemática que deje fuera la solución trivial, para lo que existen dos métodos popularesː

  • autovectores
  • cuadrados mínimos

Método lineal con autovectores

Plantea la restricción ||Ax|| = 1, que se resuelve con autovectores, siendo x el menor autovector de ATA.

Este autovector se puede obtener por descomposición en valores singulares, o con el método de Jacobi para obtener autovalores de matrices simétricas.

Método lineal con cuadrados mínimos

Plantea la restricción de coordenada homogénea normal (es decir, su 4º elemento es 1)ː

 

Con esta restricción el sistema de ecuaciones se reescribe con 4 ecuaciones y 3 incógnitas, sobredeterminado e incompatible, con la solución corresponde a x que minimiza ||Ax||, y que se resuelve mediante pseudoinversa o por descomposición en valores singulares.

Método polinomial

Este método, conocido también como método óptimo, fue propuesto por Richard Harley y Peter Sturm en su paper Triangulation,[1]​ y consiste en determinar el punto que minimiza las distancias de cada medición y a la línea epipolar correspondiente xest. Más precisamente, minimiza el error cuadrático medio, siendo esa distancia una medida del error.

xest es aquel que minimiza la función de error cuadrático medio. Los mínimos y máximos de esta función se hallan donde su derivada es cero. La función derivada es un polinomio de orden 6º cuyas raíces no se pueden obtener analíticamente.

El algoritmo se triangulación es el siguienteː

  1. determinar mediante cálculo numérico las raíces de la derivada de la función error (que es un polinomio de orden 6)
    1. puede haber una raíz en infinito
  2. evaluar el error en todas las raíces calculadas, y elegir aquella de menor error
    1. esto conlleva evaluar el error no sólo en los mínimos sino también en los máximos, y suele ser más eficiente que un test para descartar los máximos

El costo computacional del método radica en el esfuerzo para hallar los ceros del polinomio de 6º orden. En algunos casos se prefieren métodos subóptimos pero más eficientes computacionalmente.

Véase también

Referencias

  1. Hartley; Sturm (1995). Triangulation. 
  • Richard Hartley and Andrew Zisserman (2003). Multiple View Geometry in computer vision. Cambridge University Press. ISBN 978-0-521-54051-3. 

Enlaces externos

  • Triangulación de dos vista en Matlab
  •   Datos: Q4389056

triangulación, visión, artificial, visión, artificial, triangulación, refiere, proceso, determinación, punto, espacio, dadas, proyecciones, más, imágenes, para, resolver, este, problema, necesario, conocer, parámetros, función, proyección, cámaras, involucrada. En vision artificial triangulacion se refiere al proceso de determinacion de un punto en el espacio 3D dadas sus proyecciones en dos o mas imagenes Para resolver este problema es necesario conocer los parametros de la funcion de proyeccion de 3D a 2D de las camaras involucradas que en su version mas simple se representan por sus matrices de camara La triangulacion a veces se la denomina reconstruccion El problema de triangulacion es trivial en la teoria Como cada punto en una imagen corresponde a una linea denominado rayo de proyeccion o recta proyectante en el espacio 3D todos los puntos de esa linea 3D se proyectan al mismo punto 2D de la imagen La proyecciones de un punto 3D en varias imagenes se denominan puntos correspondientes en esas imagenes Los rayos de proyeccion de estos puntos correspondientes se intersectan en el espacio en el punto 3D buscado Mas adelante se presenta una variedad de formulaciones algebraicas para determinar este punto 3D En la practica sin embargo las coordenadas de los puntos de una imagen no se pueden medir con precision arbitraria Varios tipos de ruido tales como error geometrico por distorsion de lente o error de metodo de deteccion del punto caracteristico modelizan la disparidad entre las coordenadas medidas y sus valores reales exactos desconocidos Como consecuencia los rayos de proyeccion generados a partir de imagenes no se intersectan en el espacio 3D Entonces el problema se replantea en la determinacion del punto 3D optimo que mejor encaje con las mediciones La literatura propone varias definiciones de optimalidad y de cada una deriva un metodo de calculo cada uno de ellos con un resultado ligeramente diferente A continuacion se asume que la triangulacion se realiza sobre un par de puntos correspondientes obtenidos de dos camaras estenopeicas La imagen a la izquierda ilustra el geometria epipolar de un par de camaras estenopeicas estereo Utilizando algebra lineal basica se puede determinar el punto 3D de la interseccion de manera directa La imagen a la derecha muestra el caso real Las proyecciones no se pueden obtener con absoluta precision por una serie de motivos Distorsion geometrica por ejemplo la distorsion de lente la que implica desvios de la proyeccion 3D a 2D Hasta cierto punto estos errores pueden ser compensados mediante un modelo de antidistorsion reduciendo el desvio a un error geometrico residual Las lentes dispersan cada rayo de luz La mancha proyectada se reduce a un punto por medio de un modelo matematico de dispersion de luz El punto resulta de un calculo y no de una medicion directa y su posicion difiere del optimo Las camaras digitales discretizan la imagen en pixeles perdiendose la informacion entre pixeles Los metodos de precision subpixel interpolan las coordenadas del punto proyectado aproximando al punto optimo pero nunca de manera exacta Los puntos de imagen y1 e y2 se suelen obtener con un algoritmo de deteccion de puntos caracteristicos cada uno con un tipo de error inherente al metodo Como consecuencia los puntos de imagen medidos son y 1 displaystyle mathbf y 1 e y 2 displaystyle mathbf y 2 en vez de y 1 displaystyle mathbf y 1 e y 2 displaystyle mathbf y 2 Sus lineas de proyeccion azules no se cruzan en el espacio 3D y pero pueden no pasar cerca de x Solo se cruzan las lineas que satisfacen la restriccion epipolar definido por la matriz esencial o fundamental Dado el ruido inherente a la medicion y determinacion de los puntos proyectados y 1 displaystyle mathbf y 1 e y 2 displaystyle mathbf y 2 la restriccion epipolar no se satisface nunca o eventualmente solo de manera casual e irrelevante Esta observacion conduce al problema que debe resolver la triangulacion Cual es la mejor estimacion xest de x dados y 1 displaystyle mathbf y 1 y 2 displaystyle mathbf y 2 y la geometria de los camaras La respuesta se encuentra definiendo un error que dependa de xest y luego minimizando este error En las secciones siguientes se presentan algunos de los varios metodos para computar xest presentes en la literatura Todos los metodos de la triangulacion resultan en xest x si y 1 y 1 displaystyle mathbf y 1 mathbf y 1 e y 2 y 2 displaystyle mathbf y 2 mathbf y 2 excepto para singularidades Los metodos presentan resultados diferentes solo cuando la restriccion epipolar no se satisface Indice 1 Propiedades de metodos de triangulacion 1 1 Singularidades 1 2 Metodos reales y metodos ideales 1 3 Complejidad computacional 2 Algunos metodos de triangulacion encontrados en la literatura 2 1 Metodo del punto medio 2 2 Metodo lineal 2 2 1 Metodo lineal con autovectores 2 2 2 Metodo lineal con cuadrados minimos 2 3 Metodo polinomial 3 Vease tambien 4 Referencias 5 Enlaces externosPropiedades de metodos de triangulacion EditarUn metodo de triangulacion se puede describir en terminos de una funcion t displaystyle tau de modo que x t y 1 y 2 C 1 C 2 displaystyle mathbf x sim tau mathbf y 1 mathbf y 2 mathbf C 1 mathbf C 2 donde y 1 y 2 displaystyle mathbf y 1 mathbf y 2 son las coordenadas homogeneas de los puntos 2D detectados sobre la imagen y C 1 C 2 displaystyle mathbf C 1 mathbf C 2 son las matrices de camara x punto 3D es la representacion homogenea del punto 3D resultante El signo displaystyle sim indica proporcionalidad de modo que t displaystyle tau arroja un valor proporcional a x pues esta expresado en coordenadas homogeneas Antes de abordar los metodos concretos conviene atender algunos conceptos generales Singularidades Editar Los metodos fallan al estimar x punto 3D cuando este se encuentra en cierta region del espacio denominada region singular Un punto en esta region se denomina singularidad Algunos efectos de las singularidades sobre el sistema de ecuaciones de cada metodoː el sistema de ecuaciones queda indeterminado y no tiene solucion unica el metodo no puede expresar infinitosTal region es la recta que une los focos de las dos camaras Un punto de esa recta no se puede triangular el sistema queda indeterminado Otra region singular es la de los puntos 3D en el infinito Algunos metodos no incorporan la capacidad de expresar puntos en el infinito de modo que para esos metodos esta region es singular Metodos reales y metodos ideales Editar Los metodos de triangulacion ideales tienen solucion en forma cerrada con interes teorico y academico solamente pues fallan al llevarlos a la practica Los metodos de triangulacion reales asumen que los rayos proyectivos son alabeados es decir no se cruzan y denominan error a la distancia entre las proyecciones medidas y las reproyecciones las proyecciones del punto 3D triangulado Los metodos de triangulacion reales calculan el punto 3D que minimice ese error La principal diferencia entre los diversos metodos radica en la forma en que se evalua el error El error cuadratico computa la distancia euclidiana y es se lo denomina estandar de oro pero tal como demostraron Harley y Sturm ver Metodo polinomial el problema no tiene solucion analitica y requiere calculo numerico Ante esta situacion se han propuesto otras formulaciones de la funcion error que simplifican el analisis matematico a costa de producir una triangulacion menos certera Algunos errores utilizados reformulan la manera de calcular las distanciasː distancia de Sampson distancia de Kanatani distancia Manhattan error de primer orden Complejidad computacional Editar La funcion t displaystyle tau es solo una representacion matematica de una computacion que suele ser relativamente compleja Algunos metodos resultan en una formulacion de t displaystyle tau en forma cerrada mientras que otros en forma de serie infinita Estos ultimos son metodos iterativos Esto implica que la complejidad computacional y el tiempo de computo varia fuertemente entre los diversos metodos Algunos metodos de triangulacion encontrados en la literatura EditarAlgunos metodos usuales de triangulacion para aplicar en casos reales Metodo del punto medio obtiene el punto comun mas cercano a ambas rectas proyectivas es el mas simple y de resultados mas pobres DLT transformacion lineal directa utiliza el algoritmo DLT para resolver la triangulacion Metodos lineales plantean una ecuacion lineal que se puede resolver por varios metodos por ejemploː Metodo lineal con cuadrados minimos Metodo lineal con autovalores Metodos basados en matriz esencial varios metodos que procuran hacer cumplir la restriccion epipolarMetodo del punto medio Editar Cada proyeccion y 1 displaystyle mathbf y 1 e y 2 displaystyle mathbf y 2 tiene una recta proyectiva asociada lineas azules en la imagen de la izquierda arriba aqui denotadas L 1 displaystyle mathbf L 1 y L 2 displaystyle mathbf L 2 Sea d displaystyle d la funcion de distancia entre una linea L1 y un punto 3D x tal que d L x displaystyle d mathbf L mathbf x distancia euclidiana entre L displaystyle mathbf L y x displaystyle mathbf x El metodo del punto medio determina xest que minimiza d L 1 x 2 d L 2 x 2 displaystyle d mathbf L 1 mathbf x 2 d mathbf L 2 mathbf x 2 Como resultado xest se encuentra exactamente en el medio del segmento de linea mas corto que une las dos lineas de proyeccion Este es un metodo simple pero con malos resultados pues el punto medio no guarda relacion con los errores de medicionː el punto medio no minimiza el error Tiene un planteo sobresimplificado que no ataca el problema central El metodo se menciona con frecuencia por ser uno de los primeros pero se encuentra en desuso en favor de otros mas sofisticados con resultados mucho mejores Metodo lineal Editar Consiste en replantear el problema bajo la forma matricial A x 0 La solucion trivial no resulta util hay varios metodos para obtener el punto x de esta ecuacion Siendo u la expresion homogenea de la proyeccion en una imagen del punto 3D x tambien en coordenadas homogeneas ːu w u v 1 T displaystyle mathsf u w u v 1 T u P x displaystyle mathsf u Px P es la matriz de proyeccion de 3x4 Llamando pi a cada fila de Pː w u p 1 x w v p 2 x w p 3 x displaystyle begin cases wu p 1 x wv p 2 x w p 3 x end cases Eliminando wː u p 3 x p 1 x v p 3 x p 2 x displaystyle begin cases up 3 x p 1 x vp 3 x p 2 x end cases Despejando x se obtienen dos ecuaciones correspondientes a la proyeccion de x en una imagenː p 1 u p 3 x 0 p 2 v p 3 x 0 displaystyle begin cases p 1 up 3 x 0 p 2 vp 3 x 0 end cases De manera similar la proyeccion de x en la segunda imagen proporciona dos ecuaciones mas llegando a la forma deseadaːA x 0 displaystyle Ax 0 donde A es una matriz de 4x4 La solucion trivial x 0 es indeterminada en coordenadas homogeneas El punto x triangulado se obtiene agregando una restriccion matematica que deje fuera la solucion trivial para lo que existen dos metodos popularesː autovectores cuadrados minimosMetodo lineal con autovectores Editar Plantea la restriccion Ax 1 que se resuelve con autovectores siendo x el menor autovector de ATA Este autovector se puede obtener por descomposicion en valores singulares o con el metodo de Jacobi para obtener autovalores de matrices simetricas Metodo lineal con cuadrados minimos Editar Plantea la restriccion de coordenada homogenea normal es decir su 4º elemento es 1 ːx x y z 1 T displaystyle x x y z 1 T Con esta restriccion el sistema de ecuaciones se reescribe con 4 ecuaciones y 3 incognitas sobredeterminado e incompatible con la solucion corresponde a x que minimiza Ax y que se resuelve mediante pseudoinversa o por descomposicion en valores singulares Metodo polinomial Editar Este metodo conocido tambien como metodo optimo fue propuesto por Richard Harley y Peter Sturm en su paper Triangulation 1 y consiste en determinar el punto que minimiza las distancias de cada medicion y a la linea epipolar correspondiente xest Mas precisamente minimiza el error cuadratico medio siendo esa distancia una medida del error xest es aquel que minimiza la funcion de error cuadratico medio Los minimos y maximos de esta funcion se hallan donde su derivada es cero La funcion derivada es un polinomio de orden 6º cuyas raices no se pueden obtener analiticamente El algoritmo se triangulacion es el siguienteː determinar mediante calculo numerico las raices de la derivada de la funcion error que es un polinomio de orden 6 puede haber una raiz en infinito evaluar el error en todas las raices calculadas y elegir aquella de menor error esto conlleva evaluar el error no solo en los minimos sino tambien en los maximos y suele ser mas eficiente que un test para descartar los maximosEl costo computacional del metodo radica en el esfuerzo para hallar los ceros del polinomio de 6º orden En algunos casos se prefieren metodos suboptimos pero mas eficientes computacionalmente Vease tambien EditarStructure from motion Deteccion de caracteristicas Descomposicion en valores singulares DLT transformacion lineal directaReferencias Editar Hartley Sturm 1995 Triangulation Richard Hartley and Andrew Zisserman 2003 Multiple View Geometry in computer vision Cambridge University Press ISBN 978 0 521 54051 3 Enlaces externos EditarTriangulacion de dos vista en Matlab Datos Q4389056 Obtenido de https es wikipedia org w index php title Triangulacion vision artificial amp oldid 139778424, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos