Desarrollo de algoritmos de calibración automática de cámaras de vídeo a partir de patrones tridimensionales y bidimensionales para su aplicación en eventos deportivos
Texto completo
(2) I. GRADO EN INGENIERÍA DE TECNOLOGÍAS Y SERVICIOS DE TELECOMUNICACIÓN TRABAJO FIN DE GRADO Título:. Desarrollo de algoritmos de calibración automática de cámaras de vídeo a partir de patrones tridimensionales y bidimensionales para su aplicación en eventos deportivos.. Autor:. D. Oscar Iriarte Cariño. Tutor:. D. Carlos Cuevas Rodríguez. Cotutor:. D. Daniel Berjón Díez. Ponente:. D. ………………. Departamento:. Señales, Sistemas y Radiocomunicaciones. MIEMBROS DEL TRIBUNAL Presidente:. D. ……………. Vocal:. D. …………... Secretario:. D. …………... Suplente:. D. ……………... Los miembros del tribunal arriba nombrados acuerdan otorgar la calificación de: ………. Madrid, a. de. de 20….
(3) II. UNIVERSIDAD POLITÉCNICA DE MADRID ESCUELA TÉCNICA SUPERIOR DE INGENIEROS DE TELECOMUNICACIÓN. GRADO EN INGENIERÍA DE TECNOLOGÍAS Y SERVICIOS DE TELECOMUNICACIÓN TRABAJO FIN DE GRADO. DESARROLLO DE ALGORITMOS DE CALIBRACIÓN AUTOMÁTICA DE CÁMARAS DE VÍDEO A PARTIR DE PATRONES TRIDIMENSIONALES Y BIDIMENSIONALES PARA SU APLICACIÓN EN EVENTOS DEPORTIVOS. OSCAR IRIARTE CARIÑO 2020.
(4) III.
(5) IV. RESUMEN Hoy en día, la evolución de las tecnologías en el mundo futbolístico está en auge. Se han desarrollado técnicas para reducir los errores arbitrales y para ofrecer una experiencia más completa al usuario. Gran parte de la información de un partido se obtiene a partir de las imágenes capturadas por las cámaras, por ello la calibración de cámaras es muy importante para obtener datos precisos y fiables. En este trabajo se ha desarrollado un método de calibración fotogramétrica con patrones tridimensionales y bidimensionales. Se ha realizado a partir del algoritmo Direct Linear Transformation (DLT), puntos conocidos del patrón en el mundo real y sus equivalentes en la imagen. Para calibrar cámaras a partir de imágenes de una retransmisión de fútbol se ha utilizado la calibración con patrón 2D, puesto que el patrón es el campo por ser invariable. El objetivo principal de este trabajo es el estudio de la calidad de la calibración a partir de diversos métodos de detección de puntos del patrón en la imagen. Los algoritmos de detección de puntos que se han tenido en cuenta son la detección de líneas blancas rectas, la detección de bandas de césped y la detección de líneas curvas y construcción de su circunferencia. Para llevar a cabo los experimentos, se han generado las escenas en Blender, un entorno virtual 3D, para poder así construir los patrones y conocer con exactitud sus coordenadas. El patrón tridimensional utilizado para verificar el funcionamiento del método desarrollado ha sido un cubo damero. Por otro lado, el patrón bidimensional ha sido un tablero de ajedrez. Por último, para la calibración a partir de imágenes de un partido de fútbol, se han simulado en Blender escenas reales con las que posteriormente se ha realizado el estudio.. SUMMARY We are currently seeing a boom in the evolution of technologies applied to the football world. Techniques have been developed to reduce referees’ errors and offer spectators a more complete experience. A good part of the information available on a match is obtained through images captured on camera, and the better calibrated the camera is, the greater the accuracy and reliability of the data. This paper has sought to develop a method of photogrammetric calibration with three- and twodimensional patterns, using the Direct Linear Transformation (DLT) algorithm, points of the pattern known to exist in the real world, and their equivalents in images. Pattern 2D has been used in calibrating cameras using images of a football broadcast, given that the pattern, being constant, is the playing field. The prime objective of this paper is to study calibration quality through various methods of detecting points of the pattern on images. The point-detection algorithms taken into account are: detection of straight white lines, detection of lawn stripes, detection of curved lines, and construction of the circumference. To perform the experiments, the scenes have been generated on Blender, a virtual 3D environment, which makes it possible to construct patterns and figure out their coordinates with a high degree of accuracy. The three-dimensional pattern used to verify the workings of the method developed is the gridded cube. The two-dimensional pattern is the chessboard. Finally, to calibrate with images of a football match, real-life scenes were simulated in Blender and then used for this paper..
(6) V. PALABRAS CLAVE Calibración de cámaras, calibración fotogramétrica, patrón bidimensional, patrón tridimensional, proyección, geometría proyectiva, homografía, parámetros intrínsecos, parámetros extrínsecos, fútbol, campo de fútbol, detección de puntos. KEYWORDS Camera calibration, photogrammetric calibration, two-dimensional pattern, three-dimensional pattern, projection, projective geometry, homography, intrinsic parameters, extrinsic parameters, football, soccer, football field, point detection.
(7) VI. ÍNDICE DEL CONTENIDO 1. INTRODUCCIÓN Y OBJETIVOS ...................................................... 1 1.1.. Introducción ....................................................................................................................... 1. 1.2.. Estructura del trabajo ......................................................................................................... 2. 2. ESTADO DEL ARTE ........................................................................ 3 3. DESARROLLO ................................................................................ 6 3.1.. Calibración: Principales conceptos y matrices..................................................................... 6. 3.1.1.. Sistemas de coordenadas ............................................................................................ 6. 3.1.2.. Modelo pinhole .......................................................................................................... 8. 3.1.3.. Principales matrices .................................................................................................... 8. 3.2.. Calibración con patrón 3D................................................................................................ 12. 3.2.1.. Estimación de la matriz de proyección ...................................................................... 13. 3.2.2.. Descomposición de la matriz de proyección .............................................................. 15. 3.3.. Calibración con patrón 2D................................................................................................ 16. 3.3.1.. Escenario de trabajo ................................................................................................. 17. 3.3.2.. Estimación de la matriz de proyección ...................................................................... 19. 4. RESULTADOS .............................................................................. 26 4.1.. Introducción ..................................................................................................................... 26. 4.2.. Calibración con patrón 3D................................................................................................ 26. 4.2.1. 4.3.. Cubo damero ............................................................................................................ 26. Calibración con patrón 2D................................................................................................ 29. 4.3.1.. Damero: cuatro puntos de patrón .............................................................................. 29. 4.3.2.. Damero: 17 puntos de patrón .................................................................................... 33. 4.4.. Calibración a partir de imágenes de un partido de fútbol ................................................... 35. 4.4.1.. Caso 1: Vista de un solo área .................................................................................... 36. 4.4.2.. Caso 2: Zona central con parte de área ...................................................................... 40. 4.4.3.. Caso 3: Zona central sin ver el área ........................................................................... 44. 5. CONCLUSIONES Y LÍNEAS FUTURAS ........................................... 50 5.1.. Conclusiones.................................................................................................................... 50. 5.2.. Líneas futuras................................................................................................................... 50. 6. BIBLIOGRAFÍA ............................................................................ 51 ANEXO A: ASPECTOS ÉTICOS, ECONÓMICOS, SOCIALES Y AMBIENTALES .................................................................................. 53 A.1 Introducción.......................................................................................................................... 53 A.2 Descripción de impactos relevantes relacionados con el proyecto .......................................... 53 A.3 Análisis detallado de alguno de los principales impactos ....................................................... 53 A.4 Conclusiones......................................................................................................................... 53.
(8) VII. ANEXO B: PRESUPUESTO ECONÓMICO ......................................... 54 ANEXO C: DESCOMPOSICIÓN DE LA MATRIZ DE PARÁMETROS EXTRÍNSECOS (E) ............................................................................. 55 ANEXO D: PRODUCTO VECTORIAL ............................................... 56 ANEXO E: SINGULAR VALUE DECOMPOSITION (SVD) ................ 57 ANEXO F: DESCOMPOSICIÓN O FACTORIZACIÓN QR .................. 58 ANEXO G: FACTORIZACIÓN DE UNA FUNCIÓN CUADRÁTICA ....... 59 ANEXO H: APROXIMACIÓN DE UNA MATRIZ 3×3 A UNA MATRIZ DE ROTACIÓN ........................................................................................ 60 ANEXO I: OBTENCIÓN DE PARÁMETROS INTRÍNSECOS Y EXTRÍNSECOS DE UNA CÁMARA EN BLENDER ................................. 61.
(9) VIII. ÍNDICE DE FIGURAS Figura 1: Realidad aumentada en el fútbol [5] .................................................................................. 1 Figura 2: Detección de líneas mediante Transformada de Hough ...................................................... 3 Figura 3: Posibles escenas en una retransmisión de un partido ......................................................... 4 Figura 4: Segmentación de campo: Imagen original en la izquierda, máscara binaria en el centro, imagen segmentada en la derecha. .................................................................................................... 4 Figura 5: Detección de líneas blancas. (a) Imagen original en escala de grises. (b) Detección de líneas blancas mediante Top-Hat. (c) Algoritmo ELLSF .............................................................................. 4 Figura 6: Detección de líneas blancas rectas..................................................................................... 5 Figura 7: Detección de circunferencias ............................................................................................. 5 Figura 8: Escenario de trabajo.......................................................................................................... 7 Figura 9: Modelo Pinhole ................................................................................................................. 8 Figura 10: Distancia Focal ............................................................................................................. 10 Figura 11: Esquema 3D de una cámara .......................................................................................... 10 Figura 12: Skew .............................................................................................................................. 10 Figura 13: Ejemplo de patrón 3D .................................................................................................... 13 Figura 14: Ejemplo de patrón 2D .................................................................................................... 17 Figura 15: Escenario de trabajo con patrón 2D .............................................................................. 18 Figura 16: Cubo damero, sistema de coordenadas y puntos clave .................................................... 26 Figura 17: Cubo damero - Puntos del patrón utilizados ................................................................... 27 Figura 18: Proyección de puntos sobre el cubo damero................................................................... 29 Figura 19: Damero, sistema de coordenadas y puntos detectables ................................................... 30 Figura 20: Damero - 4 puntos del patrón utilizados......................................................................... 30 Figura 21: Proyección de puntos sobre damero - Patrón de 4 puntos .............................................. 33 Figura 22: Damero - 17 puntos del patrón utilizados ....................................................................... 33 Figura 23: Proyección de puntos sobre damero - Patrón de 17 puntos ............................................ 34 Figura 24: Puntos clave de un campo de fútbol ............................................................................... 35 Figura 25: Vista de un área en una retransmisión real .................................................................... 36 Figura 26: Vista de área en Blender y puntos clave ......................................................................... 36 Figura 27: Caso 1 - Patrón I ........................................................................................................... 37 Figura 28: Caso 1 - Proyecciones con patrón I................................................................................ 37 Figura 29: Caso 1 - Patrón II .......................................................................................................... 38 Figura 30: Caso 1 - Proyecciones con patrón II .............................................................................. 38 Figura 31: Caso 1 - Patrón III......................................................................................................... 39 Figura 32: Caso 1 - Proyecciones con patrón III ............................................................................. 39 Figura 33: Vista zona central con área en un partido real ............................................................... 40 Figura 34: Vista zona central y área en Blender .............................................................................. 40 Figura 35: Patrón I - Detección de líneas blancas rectas ................................................................. 41 Figura 36: Proyección de puntos con el patrón I ............................................................................. 41 Figura 37: Patrón II - Detección de líneas blancas rectas y césped ................................................. 42 Figura 38: Proyección de puntos con el patrón II ............................................................................ 42 Figura 39: Ejemplo de detección de una línea curva........................................................................ 43 Figura 40: Patrón III - Detección de líneas blancas rectas e identificación de circunferencias ........ 43 Figura 41: Proyección de puntos con el patrón III ........................................................................... 43 Figura 42: Patrón IV - Detección de líneas blancas rectas, líneas de césped e identificación de circunferencias ................................................................................................................................ 44 Figura 43: Proyección de puntos con el patrón IV ........................................................................... 44 Figura 44: Vista zona central sin área en un partido real ................................................................ 45 Figura 45: Vista zona central sin área en Blender ........................................................................... 45 Figura 46: Patrón I erróneo - Detección de líneas blancas y césped ................................................ 46 Figura 47: Patrón I correcto - Detección de líneas blancas y césped ............................................... 46 Figura 48: Proyección de puntos con el patrón I ............................................................................. 47 Figura 49: Patrón II – Detección de líneas blancas e identificación de circunferencias ................... 47 Figura 50: Proyección de puntos con el patrón II ............................................................................ 48.
(10) IX Figura 51: Patrón III - Detección de líneas blancas, césped e identificación de circunferencias ...... 48 Figura 52: Proyección de puntos utilizando el patrón III ................................................................. 49.
(11) 1. 1. INTRODUCCIÓN Y OBJETIVOS 1.1. INTRODUCCIÓN El proceso de calibración consiste en la obtención los parámetros que definen el modelo de la cámara. Dichos parámetros aportan información interna del dispositivo como son su geometría y óptica, e información externa de la cámara como la posición y orientación de esta. La calibración también se puede definir como un paso necesario para obtener medidas de la escena a partir de imágenes de esta. La calidad de la calibración determinará la exactitud de las medidas que se lleven a cabo a partir de las imágenes. Por ello, es imprescindible realizar la calibración de la cámara con plenas garantías de que los parámetros obtenidos son los más parecidos a los reales [1]. Existen numerosas técnicas de calibración, pero se pueden agrupar en dos grandes grupos: •. Calibración fotogramétrica: La calibración de la cámara se lleva a cabo a partir de un objeto real del que se conoce su geometría con gran precisión, lo que hace que sea muy eficiente [2]. A este objeto se le denomina patrón y suele contener dos o tres planos ortogonales entre sí. También se puede utilizar un plano sometido a una traslación, pero este procedimiento es más costoso y requiere una configuración más elaborada [3].. •. Autocalibración: La principal diferencia respecto a la técnica anterior es que no hace uso de ningún patrón para llevar a cabo el proceso de calibración. Con simplemente mover la cámara a lo largo de una escena estática, se obtienen restricciones en los parámetros internos de la cámara como consecuencia de la inmovilidad de la escena [4]. Con las imágenes de una cámara con los parámetros intrínsecos conocidos, las correspondencias entre tres imágenes serán suficientes para poder conocer los parámetros internos y externos de la cámara. Son técnicas muy flexibles, pero costosas debido al gran número de parámetros que se deben estimar [3].. Como se ha comentado anteriormente, gracias a una buena calibración se puede obtener información del mundo tridimensional a partir de imágenes bidimensionales y, de la misma manera, se pueden incluir objetos virtuales en las imágenes. Por ello, el proceso de calibración es muy importante en aplicaciones de realidad aumentada y en el sector de visión artificial. En el mundo del fútbol también se están utilizando aplicaciones en los que la calibración es determinante para unos buenos resultados. La Figura 1 muestra una escena donde los asistentes vieron un espectáculo a través de su smartphone, llevado a cabo con calibración de cámaras y realidad aumentada.. Figura 1: Realidad aumentada en el fútbol [5]. Además, gracias a la realidad aumentada se podrá disfrutar de un análisis de cada jugador, probabilidades de marcar gol, pases realizados, distancia recorrida y posesiones entre muchas otras cosas. Todo esto mientras se está viendo un partido cualquiera. El usuario será el que decidirá cuando y que estadísticas quieres visualizar. Con esto se consigue una experiencia visual mucho más completa, haciendo el evento más interesante para el usuario..
(12) 2 Todos estos datos se obtienen a partir de las imágenes grabadas por las cámaras de un partido de fútbol [6]. Existen algoritmos y herramientas capaces de clasificar las imágenes en función de la escena capturada y encontrar en ella zonas de interés. Este trabajo se basará en la detección de puntos clave del campo en la imagen para poder llevar a cabo la calibración. El objetivo de este proyecto es presentar gráfica y analíticamente cómo mejoraría la calibración de cámaras durante la retransmisión de un partido de fútbol utilizando diferentes tipos de algoritmos para identificar puntos del patrón en la imagen. Para ello se detallada un método para calibrar cámaras a partir de una imagen y ciertas correspondencias entre puntos en el mundo real y la imagen.. 1.2. ESTRUCTURA DEL TRABAJO Este documento va a estar formado por cinco secciones. La sección 1 es una breve introducción a la calibración de cámaras. La sección 2 es el estado de arte de la calibración de cámaras en el ámbito futbolístico. La sección 3 se van a detallar la teoría de la calibración de cámaras con los principales parámetros, así como el desarrollo de la calibración con patrones tridimensionales y bidimensionales. La sección 4 muestra cómo aplicar las calibraciones detalladas y los resultados obtenidos al suponer distintas técnicas de detección de puntos del patrón. La sección 5 se comentarán las conclusiones de este trabajo junto con las futuras líneas de investigación que podrían quedar abiertas..
(13) 3. 2. ESTADO DEL ARTE Se han desarrollado numerosas técnicas de calibración de cámaras a lo largo de los años. Existen pocos estudios en los que se haya realizado una comparación completa, exhaustiva y global bajo las mismas condiciones de calibración, por lo que en [7] se establece la técnica de calibración adecuada en función de la escena capturada y el contexto del problema a resolver. La calibración de cámaras en la medición de objetos 3D suponía un gran problema, ya que la precisión es muy importante para poder llevar a cabo una medición correcta. Para resolver este problema, se presentó en [8] un método de optimización no lineal partiendo del método Direct Linear Transformation (DLT), un algoritmo lineal utilizado para la obtención de parámetros de la cámara. Por ello, este trabajo va a hacer uso de la calibración fotogramétrica debido a la existencia de un patrón invariable: el campo de fútbol. Por otro lado, también se va a utilizar el método DLT a partir de puntos del mundo real y su equivalente en la imagen como en [9]. Se han desarrollado diferentes métodos de calibración de cámaras a partir de escenas de fútbol. En [10] se lleva a cabo una estimación de la posición, orientación y distancia focal de una cámara en un campo de fútbol. El método se basa en la detección de las líneas y arcos capturados en la imagen mediante la transformación de Hough y la optimización de mínimos cuadrados no lineales.. Figura 2: Detección de líneas mediante Transformada de Hough. También se han llevado a cabo técnicas de autocalibración como en [11], donde mediante la rotación y zoom de la cámara se calibra la cámara. En [12] se detalla un método de calibración de cámaras en partidos de fútbol automático basado en la detección de las líneas del campo. Existen cada vez más avances tecnológicos en el mundo del fútbol. Estas mejoras son principalmente para evitar errores humanos que pueden cometer los árbitros y para hacer la experiencia visual del usuario mucho más completa, mostrando múltiples estadísticas del evento o cambios de cámara que permiten mostrar la jugada desde diferentes puntos de vista. Se presenta en [13] un método de calibración de cámaras en movimiento para sintetizar vídeo de fútbol con el sistema Free Viewpoint con un alto grado de precisón. El sistema Free Viewpoint Televisión (FTV) es un sistema en el que se permite al usuario moverse libremente por la escena eligiendo qué es lo que quiere visualizar en cada momento. Puesto que gran parte de las estadísticas de un partido se obtienen a partir de las imágenes grabadas por la cámara, es muy importante analizar la escena e intentar determinar qué tipo de evento se trata. En [14] se analizan los planos que se pueden dar en un partido, determinando si se trata de la celebración gol, una repetición, un cambio de jugadores, etc. Algunos ejemplos de escenas capturadas durante la retransmisión de un partido se muestran en la Figura 3..
(14) 4. Figura 3: Posibles escenas en una retransmisión de un partido. En trabajos como [15] se lleva a cabo una detección de escenas de repetición a partir de las escenas capturadas, cortinillas, cámara lenta, etc. Al utilizar la calibración fotogramétrica y conocer las medidas exactas de un campo de fútbol impuestas por la UEFA [16], el principal problema surge con la detección de puntos en la imagen. Para ello es necesario llevar a cabo la segmentación del campo para descartar áreas irrelevantes como gradas, vallas publicitarias, etc. En este trabajo se presenta un método de segmentación basado en la estimación de la función de densidad de probabilidad de cromaticidad verde de las imágenes para obtener una máscara binaria correspondiente a la segmentación del campo de fútbol [17]. En la Figura 4 se puede ver un ejemplo.. Figura 4: Segmentación de campo: Imagen original en la izquierda, máscara binaria en el centro, imagen segmentada en la derecha.. La manera más sencilla de obtener los puntos del campo en la imagen es a partir de la intersección de las líneas visibles que haya en la escena, como son las líneas blancas rectas, líneas de césped y las circunferencias del campo, que son elipses en las imágenes [17]. Para la detección de las líneas blancas se parte de una imagen en escala de grises donde las líneas son los elementos más brillantes y, siendo detectadas gracias a Top-Hat mediante el procesado de la imagen. El algoritmo ELLSF detecta y etiqueta segmentos de línea construyendo una máscara de segmentos. La Figura 5 muestra este proceso que viene detallado en [17].. Figura 5: Detección de líneas blancas. (a) Imagen original en escala de grises. (b) Detección de líneas blancas mediante Top-Hat. (c) Algoritmo ELLSF. En [17] se propone un método que detección de líneas blancas rectas que evita detecciones erróneas gracias al descarte de la mayoría de los puntos no deseados y el duplicado de líneas blancas. La siguiente figura muestra los resultados de la detección:.
(15) 5. Figura 6: Detección de líneas blancas rectas. Se detalla también en [17] un método de reconocimiento de elipses en la imagen, así como de sus ejes y sus puntos clave. En la Figura 7 se muestra el resultado.. Figura 7: Detección de circunferencias. El siguiente trabajo pretende estudiar la calidad de la calibración de cámaras en función de los puntos que se pueden detectar en la imagen y su precisión..
(16) 6. 3. DESARROLLO 3.1. CALIBRACIÓN: PRINCIPALES CONCEPTOS Y MATRICES La calibración de cámaras consiste en la estimación de una matriz o un sistema de ecuaciones que relacione los puntos del mundo real con puntos de la imagen capturada por la cámara, es decir, con píxeles. En este trabajo se va a hacer uso de la calibración fotogramétrica en la cual se calibra la cámara mediante patrones físicos invariables. El motivo por el que se ha decido utilizar este método de calibración es debido a la utilización de un campo de fútbol como patrón, ya que es invariable. 3.1.1.. SISTEMAS DE COORDENADAS. En todo escenario del mundo real en el que hay una cámara, existen tres sistemas de coordenadas: •. Sistema de coordenadas del mundo real: Definido por los ejes (X, Y, Z) y un origen de coordenadas O = (0, 0, 0)T. Cualquier punto de este sistema se representará como: 𝑥 (1) 𝒑𝒘 = (𝑦) 𝑧. •. Sistema de coordenadas de la cámara: Definido por los ejes (Xc, Yc, Zc) y su origen de coordenadas C. En este espacio, un punto cualquiera vendrá denotado como: 𝑥𝑐 𝒑𝒄 = (𝑦𝑐 ) 𝑧𝑐. •. (2). Sistema de coordenadas del plano imagen: Definido por los ejes (U, V). El origen de coordenadas de este sistema puede situarse en cualquier lugar del plano. Normalmente se ubica o bien en el centro o en cualquiera de las esquinas del sensor real, que es una región concreta del plano. La intersección del eje óptico Zc con el plano imagen define el punto principal p0. Cualquier punto de este plano (pi) se representará de la siguiente manera: 𝑢 (3) 𝒑𝒊 = ( ) 𝑣. La Figura 8 ilustra esquemáticamente un escenario con los sistemas de coordenadas mencionados, donde se proyectan los puntos del mundo real en el plano imagen..
(17) 7. Figura 8: Escenario de trabajo. Como se está estudiando la incidencia de figuras o puntos en un plano, se trabajará con geometría proyectiva. Utilizar coordenadas homogéneas resulta clave para describir un punto en el espacio proyectivo [18]. La representación mediante coordenadas homogéneas de un punto en un espacio n-dimensional se realiza a través de coordenadas de un espacio (n+1)-dimensional [19]. En coordenadas homogéneas, todo punto bidimensional (x, y) viene representado como (wx, wy, w), donde w tiene un valor arbitrario. Así, se logra convertir de coordenadas euclídeas a homogéneas y se va a emplear la convención w = 1 para definir los puntos: 𝑤𝑥 (𝑤𝑦) , 𝑤 = 1 (4) 𝑤 Análogamente, todo punto tridimensional (x, y, z) viene representado como (wx, wy, xz, w), donde se va a trabajar con w = 1 para definir los puntos: 𝑤𝑥 𝑤𝑦 ( 𝑤𝑧 ) , 𝑤 = 1 𝑤. (5). Las coordenadas homogéneas permiten expresar mediante el producto de matrices transformaciones afines, cuando por definición expresan transformaciones lineales. A partir de la expresión ( 5 ), un punto en el mundo real en coordenadas homogéneas será: 𝑥 𝑦 𝒑𝒘 = ( 𝑧 ) ∈ ℝ4 1. (6). Un punto en el espacio en coordenadas de la cámara resultará: 𝑥𝑐 𝑦 𝒑𝒄 = ( 𝑧𝑐 ) ∈ ℝ4 𝑐 1. (7).
(18) 8 Por último, un punto del plano imagen se representará como en la expresión ( 4 ): 𝑢 𝒑𝒊 = (𝑣 ) ∈ ℝ3 1 3.1.2.. (8). MODELO PINHOLE. El modelo básico de la cámara es el denominado ‘Modelo Pinhole’, que describe la relación matemática ideal entre coordenadas tridimensionales, como son las del mundo real, y su proyección bidimensional en el plano imagen de la cámara. Cabe destacar que este modelo es ideal: la apertura de la cámara se describe como un punto y se trata de un modelo que carece de lente [7]. En la Figura 9 se ilustra el esquema de este modelo pinhole:. Figura 9: Modelo Pinhole. En la Figura 9 se observa el sistema de referencia de la cámara (Xc, Yc, Zc) cuyo origen de coordenadas es el centro óptico C. El plano imagen, paralelo al plano formado por Xc e Yc, está situado en frente de la cámara, y su intersección con el eje Zc forma el punto principal p0. La distancia entre el centro óptico C y el punto principal p0 es la distancia focal. Un punto en el mundo real es pw, y para obtener la proyección de este en el plano imagen, se traza un rayo desde C a pw, resultando la intersección del rayo con el plano imagen el punto imagen pi. 3.1.3.. PRINCIPALES MATRICES. A partir del modelo pinhole y las coordenadas descritas, se sabe que pi es una proyección del punto pw. Esta afirmación matemáticamente se escribe como: 𝒑𝒊 = 𝑷 · 𝒑𝒘. (9). Siendo P la matriz de proyección de la cámara que transforma cualquier punto tridimensional del mundo real en uno bidimensional del plano imagen. 𝑝11 𝑝12 𝑝13 𝑝14 𝑷 = (𝑝21 𝑝22 𝑝23 𝑝24 ) 𝑝31 𝑝32 𝑝33 𝑝34. ( 10 ).
(19) 9 La matriz de proyección P de una cámara puede representarse como la composición de dos matrices de gran utilidad [19]: la matriz de parámetros intrínsecos K, de dimensiones 3×3, y la matriz de parámetros extrínsecos E, de dimensiones 3×4. 𝑷=𝑲·𝑬. ( 11 ). Conocidas las dimensiones de K y E la matriz P se puede reescribir de la siguiente manera: 𝑘11 𝑷 = (𝑘21 𝑘31. 𝑘12 𝑘22 𝑘32. 𝑒11 𝑒12 𝑘13 𝑒 𝑘23 ) · ( 21 𝑒22 𝑒31 𝑒32 𝑘33. 𝑒13 𝑒23 𝑒33. 𝑒14 𝑒24 ) 𝑒34. ( 12 ). MATRIZ DE PARÁMETROS INTRÍNSECOS La matriz de parámetros intrínsecos K relaciona un punto en coordenadas de la cámara, pc, con su correspondiente punto en el plano imagen, pi. 𝒑𝑖 = 𝑲 · 𝒑𝒄. ( 13 ). Esta matriz K aporta información de la cámara: su geometría interna y la óptica. 𝑓𝑥 𝑠 𝑢0 𝑲 = ( 0 𝑓𝑦 𝑣0 ) ( 14 ) 0 0 1 Es una matriz triangular superior donde fx y fy son las distancias focales, u0 y v0 son las coordenadas del punto principal, y s es el skew. Estos parámetros se explicarán más adelante. Reescribiendo la ecuación ( 13 ) en función de las ecuaciones ( 7 ), ( 8 ) y ( 14 ), se obtiene: 𝑥𝑐 𝑢 𝑓𝑥 𝑠 𝑢0 0 𝑦 (𝑣 ) = ( 0 𝑓𝑦 𝑣0 0) · ( 𝑧𝑐 ) 𝑐 1 0 0 1 0 1. ( 15 ). Donde ha sido necesario añadir la columna (0,0,0)T para que la operación sea realizable por trabajar en coordenadas homogéneas. Los parámetros de la matriz K son las distancias focales, el skew y el punto principal [20]. •. Distancia focal: La distancia focal, f, es la distancia entre el centro óptico C y el plano focal, habitualmente definida en milímetros. Sin embargo, se representa con fx y fy. Son la distancia focal de la cámara en unidades de píxel en las direcciones horizontal y vertical, respectivamente. Para conocer fx y fy es necesario conocer la altura, py, y anchura, px, del píxel. 𝑓𝑥 =. 𝑓 𝑝𝑥. ( 16 ). 𝑓𝑦 =. 𝑓 𝑝𝑦. ( 17 ). Lo habitual es que los píxeles sean cuadrados de tal manera que fx y fy tendrán el mismo valor, aunque en ocasiones pueden ser rectangulares provocando que sean distintas. En este trabajo se va a suponer que fx = fy puesto que se va a trabajar con píxeles cuadrados. La Figura 10 ilustra gráficamente la distancia focal mediante un esquema similar al del modelo pinhole..
(20) 10. Figura 10: Distancia Focal. En la Figura 11, obtenida de [21], la ‘caja’ representa una cámara, el plano amarillo es el sensor o plano focal, y las esferas fuera del sensor son objetos en el mundo real.. Figura 11: Esquema 3D de una cámara. En la Figura 11 se puede observar que el plano focal está situado detrás del centro óptico. Esto es indiferente debido a que los puntos delanteros y traseros del centro óptico son equivalentes al utilizar coordenadas homogéneas. •. Skew: Representado con s. Parámetro que indica la inclinación del píxel.. Figura 12: Skew.
(21) 11 La siguiente expresión relaciona el ángulo de inclinación del píxel, α, y el parámetro de skew, s, como se detalla en [22] y [23]: 𝑠 = (tan 𝛼 ) ·. 𝑓 = (tan 𝛼 ) · 𝑓𝑦 𝑝𝑦. ( 18 ). Los píxeles en general son cuadrados. Esto supone que α es igual a cero, así como el valor de s. •. Punto principal: Representado con (u0, v0), es la intersección del eje z de la cámara, Zc, con el plano imagen. Como se detalla en el apartado 3.1.1 se define como p0 = (u0, v0)T.. MATRIZ DE PARÁMETROS EXTRÍNSECOS La matriz de parámetros extrínsecos E relaciona un punto en el mundo real, pw, con su equivalente punto en el dominio de la cámara, pc. 𝒑𝒄 = 𝑬 · 𝒑𝒘. ( 19 ). Esta matriz E representa aquellos parámetros de la transformación que son independientes de la cámara: la rotación que sufre el sistema de coordenadas real para ser transformado en el sistema de coordenadas de la cámara, y la traslación o desplazamiento de este. En otras palabras, la matriz E es una composición de una matriz de rotación R y un vector de traslación t. 𝑬 = [𝑹. 𝒕]. ( 20 ). La matriz de rotación R es: 𝑟11 𝑹 = (𝑟21 𝑟31. 𝑟12 𝑟22 𝑟32. 𝑟13 𝑟23 ) 𝑟33. ( 21 ). Y el vector de traslación t es: 𝑡1 𝒕 = (𝑡2 ) 𝑡3 Sustituyendo las expresiones ( 22 ) y ( 21 ) en ( 20 ), se reescribe E como: 𝑟11 𝑟12 𝑟13 𝑡1 𝑬 = (𝑟21 𝑟22 𝑟23 𝑡2 ) 𝑟31 𝑟32 𝑟33 𝑡3. ( 22 ). ( 23 ). Como en toda matriz de rotación, las columnas son vectores unitarios ortogonales denominados r1, r2 y r3. 𝑟11 𝒓𝟏 = (𝑟21 ) ( 24 ) 𝑟31 𝑟11 ( 25 ) 𝒓𝟐 = (𝑟22 ) 𝑟32 𝑟13 ( 26 ) 𝒓𝟑 = (𝑟23 ) 𝑟33 Por otro lado, la matriz de rotación es una matriz ortogonal de determinante igual a uno: 𝑹𝑻 = 𝑹−𝟏. ( 27 ). 𝑑𝑒𝑡(𝑹) = 1. ( 28 ).
(22) 12 De esta manera, la matriz E tiene seis grados de libertad: tres de las rotaciones de los ejes del mundo real (r1, r2, r3), y tres de la traslación de cada uno de los ejes (t1, t2, t3). Al estar trabajando en coordenadas homogéneas, ambos puntos tienen cuatro componentes. Por ello, para que sea posible la operación ( 19 ), es necesario añadir una fila a la matriz E y convertirla en una matriz de dimensiones 4×4. Esta fila será (0, 0, 0, 1). De este modo: 𝑥𝑐 𝑟11 𝑟12 𝑟13 𝑡1 𝑥 𝑦 𝑟 𝑟 𝑟 𝑡 𝑦 ( 𝑧𝑐 ) = (𝑟21 𝑟22 𝑟23 2 ) · ( 𝑧 ) ( 29 ) 𝑐 31 32 33 𝑡3 1 1 0 0 0 1 Se puede desglosar la matriz E como se detalla en ANEXO C, de tal manera que: 𝑹 𝑬 = [ 𝟑𝒙𝟑 𝟎𝟏𝒙𝟑. 𝒕𝟑𝒙𝟏 𝑹 ] = [ 𝟑𝒙𝟑 𝟏 𝟎𝟏𝒙𝟑. −𝑹𝟑𝒙𝟑 · 𝑪𝟑𝒙𝟏 ] 𝟏. ( 30 ). De la expresión anterior se puede obtener la relación entre el vector de traslación t, la matriz de rotación R y el origen de coordenadas de la cámara, C [24]. 𝒕 = −𝑹 · 𝑪. ( 31 ). MATRIZ DE PROYECCIÓN A partir de las matrices de parámetros intrínsecos y extrínsecos que acaban de definirse, es posible relacionar un punto del mundo real, pw = (x, y, z, 1)T, con su correspondiente en el plano de la imagen pi=(u, v)T, del siguiente modo: 𝑥 𝑥 𝑟11 𝑟12 𝑟13 𝑡1 𝑢 𝑓𝑥 𝑠 𝑢0 𝑦 𝑦 (𝑣 ) = 𝑲 · [𝑹 𝒕] · ( 𝑧 ) = ( 0 𝑓𝑦 𝑣0 ) · (𝑟21 𝑟22 𝑟23 𝑡2 ) · ( 𝑧 ) ( 32 ) 𝑟31 𝑟32 𝑟33 𝑡3 1 0 0 1 1 1 Un dato importante es que, al realizar una transformación proyectiva del punto desde el dominio de la cámara, pc, al dominio del plano imagen, pi, se debe considerar la existencia de un factor de escala, λ, para generalizar dicha transformación. Así, la expresión anterior quedará definida: 𝑥 𝑟11 𝑟12 𝑟13 𝑡1 𝑢 𝑓𝑥 𝑠 𝑢0 𝑦 𝜆 · (𝑣) = ( 0 𝑓𝑦 𝑣0 ) · (𝑟21 𝑟22 𝑟23 𝑡2 ) · ( 𝑧 ) ( 33 ) 𝑟31 𝑟32 𝑟33 𝑡3 1 0 0 1 1 El valor λ será aquel que haga que la tercera componente de pi sea igual a la unidad.. 3.2. CALIBRACIÓN CON PATRÓN 3D El patrón 3D debe ser invariable y fácilmente reconocible. En la Figura 13 se muestra un cubo de Rubik obtenido de [25] que podría utilizarse como patrón ya que dispone de numerosos puntos de los cuales es fácil conocer sus coordenadas. Se han marcado seis de ellos mediante una cruz roja..
(23) 13. Figura 13: Ejemplo de patrón 3D. El objetivo es estimar una matriz de proyección P que satisfaga la relación: 𝜆 · 𝒑𝑖 = 𝑷 · 𝒑𝒘. ( 34 ). Para llevar a cabo la estimación, se va a hacer uso del algoritmo ‘Direct Linear Transformation’ (DLT), ya que requiere una serie de puntos conocidos del patrón tridimensional y sus correspondientes puntos en el plano imagen. Una de las grandes ventajas del algoritmo DLT es que hace uso de ecuaciones simples y lineales, de tal manera que facilita en gran medida los cálculos. Sin embargo, este método presenta también algunas desventajas: o o. Las correspondencias entre los puntos pw y pi deben ser lo más precisas posibles. Es un método sensible a la coplanaridad [26]. Los puntos seleccionados de la imagen, pi, deben ser elegidos a partir de las siguientes condiciones: ▪ Los correspondientes puntos en coordenadas tridimensionales (pw) no deben pertenecer todos al mismo plano. ▪ Los puntos en el mundo real (pw) no deben estar todos alineados. Se debe tener cuidado con la selección de puntos, puesto que si no se cumple alguna de estas condiciones pueden producirse errores en la calibración [19].. o. 3.2.1.. Requiere un número mínimo de parejas de puntos, pw y pi, para llevar a cabo la calibración. ESTIMACIÓN DE LA MATRIZ DE PROYECCIÓN. Como se ha detallado en el apartado 3.1.3, la matriz de proyección P viene definida como: 𝑝11 𝑝12 𝑝13 𝑝14 𝑷 = (𝑝21 𝑝22 𝑝23 𝑝24 ) 𝑝31 𝑝32 𝑝33 𝑝34. ( 35 ). Para poder estimar correctamente P, es necesario definir antes tres vectores correspondientes a cada una de las filas de la matriz de proyección: 𝒑𝑻𝟏 = (𝑝11. 𝑝12. 𝑝13. 𝑝14 ). ( 36 ). 𝒑𝑻𝟐 = (𝑝21. 𝑝22. 𝑝23. 𝑝24 ). ( 37 ). 𝒑𝑻𝟑 = (𝑝31. 𝑝32. 𝑝33. 𝑝34 ). ( 38 ). En primer lugar, se sabe que el producto vectorial de pi y P·pw es cero: son vectores linealmente dependientes por estar situados en la misma dirección. 𝒑𝒊 × (𝑷 · 𝒑𝒘 ) = 𝟎𝟑×𝟏. ( 39 ). Si se desarrolla el producto vectorial tal y como se puede ver en el ANEXO D, y utilizando las expresiones ( 36 ), ( 37 ) y ( 38 ) en la propiedad ( 39 ), se obtiene:.
(24) 14 𝑣 · 𝒑𝑻3 · 𝒑𝒘 − 𝒑𝑻𝟐 · 𝒑𝒘 0 𝒑𝒊 × (𝑷 · 𝒑𝒘 ) = ( 𝒑𝑻𝟏 · 𝒑𝒘 − 𝑢 · 𝒑𝑻𝟑 · 𝒑𝒘 ) = (0) 0 𝑢 · 𝒑𝑻𝟐 · 𝒑𝒘 − 𝑣 · 𝒑𝑻𝟏 · 𝒑𝒘. ( 40 ). Con la propiedad conmutativa del producto escalar, se define: 𝒑𝑻𝒋 · 𝒑𝒘 = 𝒑𝑻𝒘 · 𝒑𝒋 , 𝑠𝑖𝑒𝑛𝑑𝑜 𝑗 = 1,2,3. ( 41 ). A partir de las expresiones anteriores, se obtiene: −𝒑𝑻𝒘 · 𝒑𝟐 + 𝑣 · 𝒑𝑻𝒘 · 𝒑𝟑 0 ( 𝒑𝑻𝒘 · 𝒑𝟏 − 𝑢 · 𝒑𝑻𝒘 · 𝒑𝟑 ) = (0) 0 −𝑣 · 𝒑𝑻𝒘 · 𝒑𝟏 + 𝑢 · 𝒑𝑻𝒘 · 𝒑𝟐. ( 42 ). Factorizando la expresión ( 42 ): 𝟎𝑻𝟒 [ 𝒑𝑻𝒘 −𝑣 · 𝒑𝑻𝒘. −𝒑𝑻𝒘 𝟎𝑻𝟒 𝑢 · 𝒑𝑻𝒘. 𝑣 · 𝒑𝑻𝒘 𝒑𝟏 0 𝑻 ] · (𝒑 ) = ( ) −𝑢 · 𝒑𝒘 𝟐 0 𝒑 𝑻 𝟑 0 𝟎𝟒. ( 43 ). A pesar de que haya tres ecuaciones en el sistema anterior, tan solo dos de ellas son linealmente independientes [19]. Por tanto, el sistema de ecuaciones ( 43 ) se reescribe: 𝒑𝟏 𝟎𝑻𝟒 −𝒑𝑻𝒘 𝑣 · 𝒑𝑻𝒘 0 [ 𝑻 ] · (𝒑𝟐 ) = 𝑨 · 𝒑 = ( ) ( 44 ) 0 𝒑𝒘 𝟎𝑻𝟒 −𝑢 · 𝒑𝑻𝒘 𝒑𝟑 Dado que pw = (x, y, z, 1)T se puede reescribir A del siguiente modo: 𝑣𝑦 𝑣𝑧 𝑣 0 0 0 0 −𝑥 −𝑦 −𝑧 −1 𝑣𝑥 𝑨= ( ) 0 0 𝑥 𝑦 𝑧 1 0 0 −𝑢𝑥 −𝑢𝑦 −𝑢𝑧 −𝑢. ( 45 ). Por otro lado, el vector p se puede reescribir como: 𝑝11 𝑝12 𝑝13 𝑝14 𝑝21 𝒑𝟏 𝑝 𝒑 = (𝒑𝟐 ) = 𝑝22 23 𝒑𝟑 𝑝24 𝑝31 𝑝32 𝑝33 (𝑝34 ) Por lo tanto, se tiene la siguiente relación: 𝑨𝟐×𝟏𝟐 · 𝒑𝟏𝟐×𝟏 = 𝟎𝟐×𝟏. ( 46 ). ( 47 ). Es un sistema homogéneo de ecuaciones y se tiene que calcular el vector p para poder componer la matriz de proyección P estimada. Evidentemente, puesto que el objetivo es obtener un vector p con valores distintos a cero, se debe cumplir la siguiente condición: 𝒑𝟏𝟐×𝟏 ≠ 𝟎𝟏𝟐×𝟏. ( 48 ). Al haber más incógnitas (p) que ecuaciones (número de filas de la matriz A), el sistema de ecuaciones ( 47 ) no es compatible determinado..
(25) 15 Para que el sistema sea compatible determinado y poder calcular una solución posible para p, debe haber doce ecuaciones linealmente independientes. Por lo tanto, son necesarias al menos seis parejas de puntos, pw y pi, para poder obtener el vector de incógnitas p, dado que con cada pareja es posible obtener dos ecuaciones linealmente independientes de ( 44 ). De este modo, se obtiene el siguiente sistema de ecuaciones al utilizarse seis parejas: 𝑨𝟏𝟐×𝟏𝟐 · 𝒑𝟏𝟐×𝟏 = 𝟎𝟏𝟐×𝟏. ( 49 ). Donde con las dimensiones de A12×12 ya se puede resolver el sistema y obtener un valor del vector p. Si se utilizan más de seis parejas de puntos, n, se tendrán más de doce ecuaciones frente a las doce incógnitas del vector p. Se presentan entonces dos situaciones: • •. Si pi es el punto exacto donde se proyecta pw en el plano imagen se trata de una correspondencia ideal. Por lo que, si las correspondencias ente puntos pw y pi son ideales, el sistema sigue siendo compatible, pero habrá ecuaciones redundantes. Lo habitual es que exista cierto error entre las correspondencias. De esta manera, si las correspondencias ente puntos pw y pi no son ideales, el sistema de ecuaciones será sobredeterminado y no existirá una solución posible de p para que cumpla A·p = 0. Lo razonable es utilizar como solución aquella con la que A·p sea lo más cercano a cero. Al tratarse de un vector, se busca la mínima norma de A·p. Para ello, se hace uso del método ‘Singular Value Decomposition’ (SVD), que provee la solución de p con ||p|| = 1 que minimiza ||A·p||. En el ANEXO E se describe este método con más detalle. Cuantas más parejas de puntos no ideales se utilicen, más precisa resultará la calibración.. La expresión ( 49 ) se reescribe de la siguiente manera para todos aquellos casos en los que la calibración es posible, es decir, para n ≥ 6: 𝑨𝟐𝒏×𝟏𝟐 · 𝒑𝟏𝟐×𝟏 = 𝟎𝟐𝒏×𝟏 ( 50 ) Una vez se dispone de una solución del vector p, se construye la matriz de proyección P. Para obtener la matriz intrínseca K y la matriz extrínseca E, se debe descomponer la matriz P tal como se ha indicado en 3.1.3: 𝑓𝑥 𝑷 = 𝑲 · 𝑬 = (0 0. 3.2.2.. 𝑠 𝑓𝑦 0. 𝑟11 𝑢0 𝑣0 ) · (𝑟21 𝑟31 1. 𝑟12 𝑟22 𝑟32. 𝑟13 𝑟23 𝑟33. 𝑝11 𝑝12 𝑡1 𝑝 𝑡2 ) = ( 21 𝑝22 𝑝31 𝑝32 𝑡3. 𝑝13 𝑝23 𝑝33. 𝑝14 𝑝24 ) 𝑝34. ( 51 ). DESCOMPOSICIÓN DE LA MATRIZ DE PROYECCIÓN. Para descomponer la matriz de proyección P se van a seguir los siguientes pasos como se indica en [19] y [21]. La matriz de parámetros extrínsecos está compuesta por una matriz de rotación R y la ubicación del centro óptico de la cámara C como se detalla en el ANEXO C. Se puede descomponer la matriz de P del siguiente modo: 𝑷 = 𝑲 · 𝑬 = 𝑲 · [𝑹 −𝑹 · 𝑪] = [𝑲 · 𝑹. −𝑲 · 𝑹 · 𝑪]. ( 52 ). Se define la matriz M como el producto de las matrices de parámetros intrínsecos K y la matriz de rotación, M = K · R, quedando la expresión anterior: 𝑷 = [𝑴𝟑×𝟑. −𝑴𝟑×𝟑 · 𝑪𝟑×𝟏 ]. La matriz invertible M3×3 queda definida como:. ( 53 ).
(26) 16 𝑝11 𝑴 = (𝑝21 𝑝31. 𝑝12 𝑝22 𝑝32. 𝑝13 𝑝23 ) 𝑝33. A partir de la expresión ( 53 ), C se puede obtener de la siguiente manera: 𝑝14 𝑪 = −𝑴−𝟏 · (𝑝24 ) 𝑝34 Se deben realizar ciertas modificaciones en la compondrá la matriz M’ del siguiente modo: 𝑝31 𝑴′ = (𝑝32 𝑝33. ( 54 ). ( 55 ). matriz M para el cálculo correcto de K y E [21]. Se 𝑝21 𝑝22 𝑝23. 𝑝11 𝑝12 ) 𝑝13. ( 56 ). Se realiza la descomposición o factorización QR detallada en el ANEXO F sobre la matriz M’, descomponiéndola como el producto de una matriz ortogonal y una triangular. Dicha matriz triangular resultará ser la matriz de parámetros intrínsecos K de la cámara, mientras que la matriz ortogonal obtenida será la matriz de rotación R. Conocidas la matriz K y R, falta obtener el vector de traslación t para poder conocer la matriz de parámetros intrínsecos E: 𝑷 = 𝑲 · 𝑬 = 𝑲 · [𝑹 𝒕]. ( 57 ). Para el cálculo de t, es necesario conocer R y C: 𝒕 = −𝑹 · 𝑪 = 𝑹 · 𝑴. −𝟏. 𝑝14 · (𝑝24 ) 𝑝34. ( 58 ). Finalmente, se compone la matriz de parámetros extrínsecos E con R y t.. 3.3. CALIBRACIÓN CON PATRÓN 2D Cuando se está grabando un evento deportivo suele ser complicado encontrar un patrón tridimensional invariable que ocupe gran parte del escenario. Un elemento invariable en deportes como el fútbol, el baloncesto o el tenis es el campo. Este trabajo se va a centrar en los campos de fútbol. En la Figura 14 se muestra un estadio de fútbol, donde el campo se va a utilizar como patrón. Se han marcado cuatro posibles puntos con una cruz roja que se podrían utilizar para llevar a cabo la calibración. La imagen ha sido obtenida de [27]..
(27) 17. Figura 14: Ejemplo de patrón 2D. Para el desarrollo de la calibración mediante patrón 2D, se va a hacer utilizar también el método ‘Direct Linear Transformation’ (DLT), ya que requiere una serie de puntos conocidos del patrón y sus correspondientes puntos en el plano imagen. Como se ha visto en el apartado 3.2, el algoritmo DLT hace uso de ecuaciones simples y lineales, de tal manera que facilita en gran medida los cálculos. Sin embargo, este método presenta también algunas desventajas: o o. o. Las correspondencias entre los puntos pw y pi deben ser lo más precisas posibles, ya que supone un problema si los puntos pi son seleccionados a mano puesto que se introduce error. Debe haber al menos dos puntos pw no alineados con el resto. Esta vez el patrón es bidimensional, por lo que todos los puntos tridimensionales pw van a estar situados en el mismo plano. Por ello, es muy importante seleccionar correctamente los puntos de la imagen pi. Requiere un número mínimo de parejas de puntos, pw y pi, para llevar a cabo la calibración.. 3.3.1.. ESCENARIO DE TRABAJO. El escenario de trabajo cambia un poco respecto al de la Figura 8, ya que todos los puntos pw del patrón están contenidos en un mismo plano, tal y como se aprecia en la Figura 15..
(28) 18. Figura 15: Escenario de trabajo con patrón 2D. Los sistemas de coordenadas en este escenario son: •. Sistema de coordenadas del mundo real: Definido por los ejes (X, Y, Z) y un origen de coordenadas O = (0, 0, 0)T. Cualquier punto del patrón bidimensional, pw, está comprendido en el plano Z = k, pero para simplificar el problema se va a asumir que k = 0. Por lo tanto: 𝑥 𝒑𝒘 = (𝑦) ( 59 ) 0. •. Sistema de coordenadas de la cámara: Definido por los ejes (Xc, Yc, Zc) y su origen de coordenadas C. En este espacio, un punto cualquiera vendrá denotado como: 𝑥𝑐 𝒑𝒄 = (𝑦𝑐 ) ( 60 ) 𝑧𝑐. •. Sistema de coordenadas del plano imagen: Definido por los ejes (U, V). El origen de coordenadas de este sistema puede situarse en cualquier lugar del plano. Normalmente se ubica o bien en el centro o en cualquiera de las esquinas del sensor real, que es una región concreta del plano. La intersección del eje óptico Zc con el plano imagen define el punto principal p0. Cualquier punto de este plano (pi) se representará de la siguiente manera: 𝑢 𝒑𝒊 = ( ) ( 61 ) 𝑣. A partir de lo explicado sobre las coordenadas homogéneas en el apartado 3.1.1, se establece que todo punto del patrón bidimensional en el mundo real en coordenadas homogéneas será: 𝑥 𝑦 𝒑𝒘 = ( ) ∈ ℝ4 ( 62 ) 0 1 Un punto en el espacio en coordenadas de la cámara resultará:.
(29) 19 𝑥𝑐 𝑦 𝒑𝒄 = ( 𝑧𝑐 ) ∈ ℝ4 𝑐 1. ( 63 ). Por último, cualquier punto del plano imagen se representará como: 𝑢 𝒑𝒊 = (𝑣 ) ∈ ℝ3 1 3.3.2.. ( 64 ). ESTIMACIÓN DE LA MATRIZ DE PROYECCIÓN. Se parte de la expresión ( 33 ): 𝑓𝑥 𝑢 𝜆 · (𝑣 ) = ( 0 1 0. 𝑠 𝑓𝑦 0. 𝑟11 𝑢0 𝑣0 ) · (𝑟21 𝑟31 1. 𝑟12 𝑟22 𝑟32. 𝑟13 𝑟23 𝑟33. 𝑥 𝑡1 𝑦 𝑡2 ) · ( ) 𝑧 𝑡3 1. Se ha ubicado el patrón bidimensional en el plano Z = 0. Particularizando se obtiene: 𝑥 𝑟11 𝑟12 𝑟13 𝑡1 𝑓𝑥 𝑠 𝑢0 𝑢 𝑦 𝜆 · (𝑣) = ( 0 𝑓𝑦 𝑣0 ) · (𝑟21 𝑟22 𝑟23 𝑡2 ) · ( ) 0 1 𝑟31 𝑟32 𝑟33 𝑡3 0 0 1 1. ( 65 ). ( 66 ). Si se desarrolla la expresión ( 66 ) se puede observar que el valor de z = 0 anula la tercera columna de la matriz de parámetros extrínsecos, es decir: 𝑟11 𝑟12 𝑡1 𝑥 𝑓𝑥 𝑠 𝑢0 𝑢 𝜆 · (𝑣 ) = ( 0 𝑓𝑦 𝑣0 ) · (𝑟21 𝑟22 𝑡2 ) · (𝑦) ( 67 ) 1 𝑟31 𝑟32 𝑡3 1 0 0 1 Donde 𝑓𝑥 𝑷 = (0 0. 𝑠 𝑓𝑦 0. 𝑟11 𝑢0 𝑟 ) ( 21 · 𝑣0 𝑟 31 1. 𝑟12 𝑟22 𝑟32. 𝑡1 𝑡2 ) = 𝑲 · [𝒓𝟏 𝑡3. 𝒓𝟐. 𝒕]. ( 68 ). La relación de calibración, 𝜆 · 𝒑𝑖 = 𝑷 · 𝒑𝒘. ( 69 ). se reescribe de la siguiente forma: 𝑢 𝜆 · (𝑣 ) = 𝑲 · [𝒓𝟏 1. 𝒓𝟐. 𝑥 𝒕] · (𝑦) 1. ( 70 ). La expresión anterior representa la transformación entre dos planos bidimensionales. En geometría, se denomina homografía a toda transformación proyectiva que determina una correspondencia entre dos espacios proyectivos de la misma dimensión, donde los puntos se corresponden con puntos, líneas con líneas, polígonos con polígonos, etc. Así, la transformación anterior es una transformación homográfica y se denomina H a la matriz de homografía: 𝑯 = 𝛾 · 𝑲 · [𝒓𝟏. 𝒓𝟐. 𝒕]. ( 71 ). Se va a definir un factor de escala arbitrario γ, equivalente al factor de escala λ definido en ( 70 )..
(30) 20 De esta manera, el proceso de estimación de la matriz de proyección varía un poco con respecto al de la calibración mediante un patrón 3D. Se va a estimar una matriz de homografía, H, a partir del cual se van a obtener las matrices de parámetros intrínsecos y extrínsecos, K y E, respectivamente. MATRIZ HOMOGRAFÍA Una vez comprendido el concepto de homografía, partiendo de las expresiones ( 69 ), ( 70 ) y ( 71 ), se puede obtener: 𝜆 · 𝒑𝑖 = 𝑯 · 𝒑𝒘. ( 72 ). El proceso de estimación de la matriz de homografía H es un procedimiento DLT igual que la estimación de la matriz de proyección (3.2.1) en la calibración con un patrón tridimensional. Se define la matriz H como: 𝒉𝑻𝟏 ℎ11 𝑻 𝑯 = (𝒉𝟐 ) = (ℎ21 ℎ31 𝒉𝑻𝟑. ℎ12 ℎ22 ℎ32. ℎ13 ℎ23 ) ℎ33. ( 73 ). Se sabe que el producto vectorial de pi y H·pw es igual a cero, por ser vectores linealmente dependientes al estar situados en la misma dirección. 𝒑𝒊 × (𝑯 · 𝒑𝒘 ) = 𝟎𝟑×𝟏. ( 74 ). Desarrollando el producto vectorial ( 74 ) como en el ANEXO D y con las expresiones anteriores h1T, h2T y h3T, se obtiene: 𝑣 · 𝒉𝑻𝟑 · 𝒑𝒘 − 𝒉𝑻𝟐 · 𝒑𝒘 0 𝒑𝒊 × (𝑯 · 𝒑𝒘 ) = ( 𝒉𝑻𝟏 · 𝒑𝒘 − 𝑢 · 𝒉𝑻𝟑 · 𝒑𝒘 ) = (0) 0 𝑢 · 𝒉𝑻𝟐 · 𝒑𝒘 − 𝑣 · 𝒉𝑻𝟏 · 𝒑𝒘. ( 75 ). Con la propiedad conmutativa del producto escalar, se define: 𝒉𝑻𝒋 · 𝒑𝒘 = 𝒑𝑻𝒘 · 𝒉𝒋 , 𝑠𝑖𝑒𝑛𝑑𝑜 𝑗 = 1,2,3. ( 76 ). A partir de las expresiones anteriores, se puede obtener: −𝒑𝑻𝒘 · 𝒉𝟐 + 𝑣 · 𝒑𝑻𝒘 · 𝒉𝟑 0 ( 𝒑𝑻𝒘 · 𝒉𝟏 − 𝑢 · 𝒑𝑻𝒘 · 𝒉𝟑 ) = (0) 0 −𝑣 · 𝒑𝑻𝒘 · 𝒉𝟏 + 𝑢 · 𝒑𝑻𝒘 · 𝒉𝟐. ( 77 ). Factorizando la expresión ( 77 ): 𝟎𝑻𝟑 [ 𝒑𝑻𝒘 −𝑣 · 𝒑𝑻𝒘. −𝒑𝑻𝒘 𝟎𝑻𝟑 𝑢 · 𝒑𝑻𝒘. 𝑣 · 𝒑𝑻𝒘 𝒉𝟏 0 −𝑢 · 𝒑𝑻𝒘 ] · (𝒉𝟐 ) = (0) 𝒉𝟑 0 𝟎𝑻. ( 78 ). 𝟑. Se puede observar en el sistema de ecuaciones anterior ( 78 ) que la tercera ecuación es combinación lineal de las dos primeras, por lo que se puede suprimir: 𝟎𝑻 [ 𝑻𝟑 𝒑𝒘. −𝒑𝑻𝒘 𝟎𝑻𝟑. 𝒉𝟏 𝑣 · 𝒑𝑻𝒘 𝒉𝟐 ) = 𝑳 · 𝒉 = (0) ] ( · 0 −𝑢 · 𝒑𝑻𝒘 𝒉 𝟑. Dado que de pw = (x, y, z, 1)T se puede reescribir L del siguiente modo:. ( 79 ).
(31) 21. 𝑳= [. 0 0 0 𝑥 𝑦 1. −𝑥 0. −𝑦 0. −1 𝑣𝑥 0 −𝑢𝑥. 𝑣𝑦 −𝑢𝑦. 𝑣 −𝑢]. ( 80 ). Por otro lado, el vector h queda definido como: ℎ11 ℎ12 ℎ13 𝒉𝟏 ℎ21 𝒉 = (𝒉𝟐 ) = ℎ22 𝒉𝟑 ℎ23 ℎ31 ℎ32 (ℎ33 ). ( 81 ). Por lo tanto, se obtiene el siguiente sistema de ecuaciones: 𝑳𝟐×𝟗 · 𝒉𝟗×𝟏 = 𝟎𝟐×𝟏. ( 82 ). Se tiene que calcular el vector h para poder componer la matriz homografía H estimada. Como el objetivo es obtener un vector h con valores distintos a cero, se debe cumplir la siguiente condición: 𝒉𝟗×𝟏 ≠ 𝟎𝟗×𝟏. ( 83 ). Al haber más incógnitas (h) que ecuaciones (número de filas de la matriz L), el sistema de ecuaciones ( 82 ) no es compatible determinado. La matriz homografía H tiene ocho grados de libertad. En la expresión ( 72 ) se ha definido un escalar λ cuyo valor será indiferente para la resolución del sistema de ecuaciones. Existen por tanto infinitas soluciones de H que van a variar en función de λ. Se va a fijar el valor de h33 = 1 para determinar una solución concreta entre las infinitas que hay, como se determina en [19] [3]. Para que el sistema sea compatible determinado y poder calcular una solución posible para h, debe haber ocho ecuaciones linealmente independientes. Son necesarias al menos cuatro parejas de puntos, pw y pi, para poder obtener el vector de incógnitas h, puesto que con cada pareja es posible obtener dos ecuaciones linealmente independientes de ( 79 ). Así, se logrará el siguiente sistema homogéneo de ecuaciones: 𝑳𝟖×𝟗 · 𝒉𝟗×𝟏 = 𝟎𝟖×𝟏. ( 84 ). Donde con las dimensiones de L8×9 ya se puede resolver el sistema y obtener un valor del vector h. Si se utilizan más de cuatro parejas de puntos, n, se tendrán más de ocho ecuaciones frente a las ocho incógnitas del vector h: • •. Si pi es el punto exacto donde se proyecta pw en el plano imagen se trata de una correspondencia ideal. Por lo que, si las correspondencias ente puntos pw y pi son ideales, el sistema sigue siendo compatible, pero habrá ecuaciones redundantes. Lo habitual es que exista cierto error entre las correspondencias. De esta manera, si las correspondencias ente puntos pw y pi no son ideales, el sistema de ecuaciones será sobredeterminado y no existirá una solución posible de h para que cumpla L·h = 0. Lo razonable es utilizar como solución aquella con la que L·h sea lo más cercano a cero. Al tratarse de un vector, se busca la mínima norma de L·h. Para ello, se hace uso del método ‘Singular Value Decomposition’ (SVD), que provee la solución de h con ||h|| = 1 que minimiza ||L·h||. En el ANEXO E se describe este método con más detalle. Cuantas más parejas de puntos no ideales se utilicen, más precisa resultará la calibración.. Se puede reescribir de manera general la expresión ( 84 ) para todos los casos posibles en los que la calibración es posible (n ≥ 4):.
(32) 22 𝑳𝟐𝒏×𝟗 · 𝒉𝟗×𝟏 = 𝟎𝟐𝒏×𝟏. ( 85 ). Por último, se optimizan los valores de la matriz de homografía H mediante el algoritmo de LevenbergMarquardt (LM), utilizado para resolver problemas de mínimos cuadrados no lineales [3]. MATRIZ DE PARÁMETROS INTRÍNSECOS Para el cálculo de los parámetros intrínsecos es necesario trabajar con las columnas de la matriz de homografía, que se van a definir como: 𝑯 = (𝒉𝟏. 𝒉𝟐. ℎ11 𝒉𝟑 ) = (ℎ21 ℎ31. ℎ12 ℎ22 ℎ32. ℎ13 ℎ23 ) ℎ33. ( 86 ). La expresión ( 71 ) se puede reescribir: (𝒉𝟏. 𝒉𝟐. 𝒉𝟑 ) = 𝛾 · 𝑲 · [𝒓𝟏. 𝒓𝟐. 𝒕]. ( 87 ). Donde γ es un factor de escala arbitrario. A partir de ( 87 ) se puede obtener: 𝒓𝟏 = 𝛾 · 𝑲−𝟏 · 𝒉𝟏. ( 88 ). 𝒓𝟐 = 𝛾 · 𝑲−𝟏 · 𝒉𝟐. ( 89 ). Se sabe que los vectores r1 y r2 son ortogonales por ser componentes de una matriz de rotación. 𝒓𝑻𝟏 · 𝒓𝟐 = 0. ( 90 ). A partir de las expresiones anteriores se obtiene una ecuación fundamental para obtener los parámetros intrínsecos: 𝑻. 𝒉𝑻𝟏 · (𝑲−𝟏 ) · 𝑲−𝟏 · 𝒉𝟐 = 𝟎. ( 91 ). Otra propiedad fundamental de r1 y r2 es que son unitarios por ser componentes de R, es decir: ‖𝒓𝟏 ‖ = ‖𝒓𝟐 ‖ = 1. ( 92 ). Así, ‖𝐫𝟏 ‖ y ‖𝐫𝟐 ‖ quedan definidos como: 𝑻. ‖𝒓𝟏 ‖ = 𝒓𝑻𝟏 · 𝒓𝟏 = 𝒉𝑻𝟏 · (𝑲−𝟏 ) · 𝑲−𝟏 · 𝒉𝟏. ( 93 ). 𝑻. ‖𝒓𝟐 ‖ = 𝒓𝑻𝟐 · 𝒓𝟐 = 𝒉𝑻𝟐 · (𝑲−𝟏 ) · 𝑲−𝟏 · 𝒉𝟐. ( 94 ). A partir de las expresiones anteriores se obtiene: 𝑻. 𝑻. 𝒉𝑻𝟏 · (𝑲−𝟏 ) · 𝑲−𝟏 · 𝒉𝟏 = 𝒉𝑻𝟐 · (𝑲−𝟏 ) · 𝑲−𝟏 · 𝒉𝟐. ( 95 ). Observando las expresiones ( 91 ) y ( 95 ) se define la matriz B: 𝑩 = (𝑲−1 )𝑇 · 𝑲−1. ( 96 ). 𝒉𝑻𝟏 · 𝑩 · 𝒉𝟐 = 𝟎. ( 97 ). 𝒉𝑻𝟏 · 𝑩 · 𝒉𝟏 = 𝒉𝑻𝟐 𝑩 · 𝒉𝟐. ( 98 ). Y se pueden reescribir:.
(33) 23 Al tener la estructura siguiente, 𝒉𝑻 · 𝑩 · 𝒉 = ∑𝒏𝒊,𝒋=𝟏 𝒃𝒊𝒋 · 𝒉𝒊 · 𝒉𝒋 , se puede concretar que se trata de funciones cuadráticas. Esto supone que la matriz B es simétrica: 𝑏11 𝑩 = (𝑏12 𝑏13. 𝑏12 𝑏22 𝑏23. 𝑏13 𝑏23 ) 𝑏33. ( 99 ). De esta manera el vector b tendrá seis componentes: 𝑏11 𝑏12 𝑏22 𝒃= 𝑏13 𝑏23 (𝑏33 ). ( 100 ). Factorizando una función cuadrática tal y como se detalla en el ANEXO G, se obtiene: 𝒉𝑻𝒊 · 𝑩 · 𝒉𝒋 = 𝒗𝑻𝒊𝒋 · 𝒃. ( 101 ). De tal manera que, partiendo de la expresión anterior ( 101 ), las restricciones ( 97 ) y ( 98 ) quedarán: 𝒗𝑻𝟏𝟐 · 𝒃 = 0. ( 102 ). 𝒗𝑻𝟏𝟏 · 𝒃 = 𝒗𝑻𝟐𝟐 · 𝒃. ( 103 ). (𝒗𝑻𝟏𝟏 − 𝒗𝑻𝟐𝟐 ) · 𝒃 = 𝟎. ( 104 ). Desarrollando ( 103 ) se obtiene:. Y se consigue el siguiente sistema de ecuaciones: 𝒗𝑻 [ 𝑻 𝟏𝟐 𝑻 ] · 𝒃 = 𝟎 𝒗𝟏𝟏 − 𝒗𝟐𝟐. ( 105 ). Donde vij se construye de la manera en que se detalla en el ANEXO G: 𝒗𝒊𝒋 = (ℎ𝑖1 ℎ𝑗1. ℎ𝑖1 ℎ𝑗2 + ℎ𝑖2 ℎ𝑗1. ℎ𝑖2 ℎ𝑗2. ℎ𝑖3 ℎ𝑗1 + ℎ𝑖1 ℎ𝑗3. ℎ𝑖3 ℎ𝑗2 + ℎ𝑖2 ℎ𝑗3. ℎ𝑖3 ℎ𝑗3 ). ( 106 ). Siendo las h componentes de la matriz homografía estimada. Sin embargo, el sistema de ecuaciones ( 105 ) no se puede resolver, puesto que se han definido dos ecuaciones frente a las seis incógnitas b. 𝑏11 𝑏12 𝒗𝑻𝟏𝟐 𝑏22 [ 𝑻 ]· =𝟎 𝑏13 𝒗𝟏𝟏 − 𝒗𝑻𝟐𝟐 𝑏23 (𝑏33 ). ( 107 ). Para lograr cuatro ecuaciones más, es necesario desarrollar la relación entre la matriz de parámetros intrínsecos y B definida en la expresión ( 96 ) [3]:.
(34) 24 𝑏11 𝑩 = (𝑲−1 )𝑇 · 𝑲−1 = (𝑏12 𝑏13 1 𝑓𝑥2 =. (. −. 𝑠. 𝑣0 𝑠 − 𝑢0 𝑓𝑦 𝑓𝑥2 𝑓𝑦. 𝑠2 1 2 2 + 2 𝑓𝑥 𝑓𝑦 𝑓𝑦. 𝑣0 𝑠 − 𝑢0 𝑓𝑦. 𝑠(𝑣0 𝑠 − 𝑢0 𝑓𝑦 ). 𝑓𝑥2 𝑓𝑦. 𝑏13 𝑏23 ) = 𝑏33. 𝑓𝑥2 𝑓𝑦. 𝑠 − 2 𝑓𝑥 𝑓𝑦 −. 𝑏12 𝑏22 𝑏23. 𝑓𝑥2 𝑓𝑦2. 𝑠(𝑣0 𝑠 − 𝑢0 𝑓𝑦 ) 𝑣0 − − 2 𝑓𝑥2 𝑓𝑦2 𝑓𝑦 𝑣0 − 2 𝑓𝑦. (𝑣0 𝑠 − 𝑢0 𝑓𝑦 ) 𝑓𝑥2 𝑓𝑦2. 2. +. ( 108 ). 𝑣0 2 +1 𝑓𝑦2 ). Como se detalla en el apartado 3.1.3, al trabajar con píxeles cuadrados, el skew va a ser nulo (s = 0). Con la condición anterior s = 0 y observando la expresión ( 108 ), se deduce que b12 = 0. El sistema de ecuaciones resultará: 𝑏11 𝑏12 𝑏22 =0 1 0 0 0 0) · 𝑏13 𝑏23 (𝑏33 ). (0. ( 109 ). Por otro lado, en el apartado 3.1.3 se establece que se va a trabajar con distancias focales iguales. Suponiendo la condición anterior s = 0 y fx = fy, se puede deducir en ( 108 ) que b11 = b22. Así, 𝑏11 𝑏12 𝑏22 =0 1 0 0 0) · 𝑏13 𝑏23 (𝑏33 ). (1 0. ( 110 ). Por último, queda trabajar con el punto principal. Se va a definir p0 = (u0, v0) = (lw, lh). Con las condiciones de skew nulo (s = 0), distancias focales iguales (fx = fy) y valores de p0 = (lw, lh), se deduce de la expresión ( 108 ) que, 𝑙𝑤 · 𝑏11 + 𝑏13 = 0, y que, 𝑙ℎ · 𝑏11 + 𝑏23 = 0. Así:. (. 𝑏11 𝑏12 0 0 1 0 0 𝑏22 )· =0 0 0 0 1 0 𝑏13 𝑏23 (𝑏33 ). 𝑙𝑤 𝑙ℎ. ( 111 ). De esta manera, uniendo las expresiones ( 111 ), ( 110 ), ( 109 ) y ( 107 ) se obtiene el sistema de ecuaciones compatible determinado donde el objetivo es calcular b: [𝒗𝑻𝟏𝟐 ]𝟏×𝟔 [𝒗𝑻𝟏𝟏 0 1 𝑙𝑤 [ 𝑙ℎ. 1 0 0 0. − 0 1 0 0. 𝒗𝑻𝟐𝟐 ]𝟏×𝟔 0 0 1 0. 0 0 0 1. 𝑏11 𝑏12 𝑏22 =0 0 · 𝑏 13 0 𝑏23 0 0] (𝑏33 ). ( 112 ).
(35) 25 Una vez obtenida la matriz B, se calculan los parámetros intrínsecos con las siguientes ecuaciones [3]: 𝑣0 =. 𝜆 = 𝑏33 −. 𝑏12 𝑏13 − 𝑏11 𝑏23 2 𝑏11 𝑏22 − 𝑏12. 2 𝑏13 + 𝑣0 (𝑏12 𝑏13 − 𝑏11 𝑏23 ) 𝑏11. 𝜆 𝑓𝑥 = √ 𝑏11 ( 113 ) 𝜆𝑏11 𝑓𝑦 = √ 2 𝑏11 𝑏22 − 𝑏12 𝑠=−. 𝑢0 =. 𝑏12 𝑓𝑥2 𝑓𝑦 𝜆. 𝑠𝑣0 𝑏13 𝑓𝑥2 − 𝑓𝑦 𝜆. Donde λ es un factor de escala arbitrario cuyo valor hará que la matriz K se construya del siguiente modo: 𝑓𝑥 𝑠 𝑢0 𝑲 = ( 0 𝑓𝑦 𝑣0 ) ( 114 ) 0 0 1 MATRIZ DE PARÁMETROS EXTRÍNSECOS Una vez conocida la matriz K, obtener la matriz de parámetros extrínsecos E es inmediato: 𝒓𝟏 = 𝛾 · 𝑲−𝟏 · 𝒉𝒄𝟏 𝒓𝟐 = 𝛾 · 𝑲−𝟏 · 𝒉𝒄𝟐 𝒓𝟑 = 𝒓𝟏 × 𝒓𝟐. ( 115 ). 𝒕 = 𝛾 · 𝑲−𝟏 · 𝒉𝒄𝟑 Si en las correspondencias de puntos pw y pi utilizados para el cálculo de la matriz de homografía H existe cierto error, la matriz R = [r1, r2, r3] obtenida no cumplirá las propiedades de una matriz de rotación. Por ello, en el ANEXO H se detalla un método para estimar la mejor matriz de rotación a partir de una matriz general 3×3. Convertida la matriz R a una matriz de rotación, la matriz de parámetros extrínsecos se compone: 𝑟11 𝑟12 𝑟13 𝑡1 𝑬 = [𝑹 𝒕] = [𝒓𝟏 𝒓𝟐 𝒓𝟑 𝒕] = (𝑟21 𝑟22 𝑟23 𝑡2 ) 𝑟31 𝑟32 𝑟33 𝑡3 ( 116 ).
(36) 26. 4. RESULTADOS 4.1. INTRODUCCIÓN En este capítulo se van a presentar los resultados obtenidos al realizar las operaciones detalladas en la sección 3. Los patrones bidimensionales y tridimensionales utilizados se han diseñado en Blender, un programa dedicado al modelado, renderizado y creación de gráficos tridimensionales. Trabajar en un entorno virtual 3D presenta múltiples ventajas: • • • •. Conocimiento de la ubicación exacta de los sistemas de coordenadas existentes en el escenario, así como de los puntos que se van a analizar. Flexibilidad a la hora de capturar la imagen deseada, puesto que se permite mover la cámara o el objeto como se desee. Ausencia de ruidos y distorsiones que se dan al trabajar con cámaras reales. Capacidad de modificar y conocer los parámetros de la cámara, tanto intrínsecos como extrínsecos.. 4.2. CALIBRACIÓN CON PATRÓN 3D En este apartado se van a mostrar los pasos seguidos para realizar la calibración de la cámara mediante un patrón tridimensional. El objetivo es estimar una matriz de proyección P como viene detallado en el apartado 3.2.1. Después, se va a descomponer la matriz estimada para obtener los parámetros intrínsecos y extrínsecos siguiendo los pasos de 3.2.2. El patrón seleccionado ha sido un cubo damero. 4.2.1.. CUBO DAMERO. Para la primera demostración, se ha diseñado en Blender un cubo damero. Se ha escogido esta forma debido a su simplicidad y los numerosos puntos que se pueden identificar en él. El cubo ha sido situado de tal manera que todas sus coordenadas son positivas y el origen de estas coincida con uno de los vértices. En la Figura 16 se muestra el cubo, donde se puede ver en la esquina inferior izquierda de color verde el sistema de coordenadas y de color azul todos los puntos fácilmente detectables.. Figura 16: Cubo damero, sistema de coordenadas y puntos clave.
(37) 27 Como se ha explicado en el apartado 3.2 se deben utilizar como mínimo seis puntos del patrón para llevar a cabo la calibración. En la Figura 17 se observan en amarillo los puntos seleccionados de dicho patrón, que han sido marcados manualmente.. Figura 17: Cubo damero - Puntos del patrón utilizados. Las coordenadas reales homogéneas, medidas en metros, de los puntos seleccionados como patrón de la Figura 17 son: 𝒑𝒘𝟏. 0 3 3 3 0 0 0 0 3 3 3 = ( ) ; 𝒑𝒘𝟐 = ( ) ; 𝒑𝒘𝟑 = ( ) ; 𝒑𝒘𝟒 = ( ) ; 𝒑𝒘𝟓 = ( ) ; 𝒑𝒘𝟔 = (0) 0 0 0 3 3 3 1 1 1 1 1 1. Y sus correspondientes puntos en el plano imagen, en píxeles, en coordenadas homogéneas son: 775,106 1091,720 1263,040 1286,160 𝒑𝒊𝟏 = (711,293) ; 𝒑𝒊𝟐 = ( 828,218 ) ; 𝒑𝒊𝟑 = ( 649,546 ) ; 𝒑𝒊𝟒 = ( 328,200 ) ; 1 1 1 1. 𝒑𝒊𝟓. 967,966 754,874 ( ) ( = 257,520 ; 𝒑𝒊𝟔 = 378,123) 1 1. A partir de estas coordenadas, se construye la matriz de correspondencias A como se indica en la expresión ( 45 )..
Documento similar
"No porque las dos, que vinieron de Valencia, no merecieran ese favor, pues eran entrambas de tan grande espíritu […] La razón porque no vió Coronas para ellas, sería
Cedulario se inicia a mediados del siglo XVIL, por sus propias cédulas puede advertirse que no estaba totalmente conquistada la Nueva Gali- cia, ya que a fines del siglo xvn y en
dente: algunas decían que doña Leonor, "con muy grand rescelo e miedo que avía del rey don Pedro que nueva- mente regnaba, e de la reyna doña María, su madre del dicho rey,
Abstract: This paper reviews the dialogue and controversies between the paratexts of a corpus of collections of short novels –and romances– publi- shed from 1624 to 1637:
Habiendo organizado un movimiento revolucionario en Valencia a principios de 1929 y persistido en las reuniones conspirativo-constitucionalistas desde entonces —cierto que a aquellas
The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,
Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de
Las manifestaciones musicales y su organización institucional a lo largo de los siglos XVI al XVIII son aspectos poco conocidos de la cultura alicantina. Analizar el alcance y