Logo UAB
2023/2024

Visión 3D

Código: 44775 Créditos ECTS: 6
Titulación Tipo Curso Semestre
4318299 Visión por Computador OB 0 1

Contacto

Nombre:
Maria Isabel Vanrell Martorell
Correo electrónico:
maria.vanrell@uab.cat

Idiomas de los grupos

Puede consutarlo a través de este enlace. Para consultar el idioma necesitará introducir el CÓDIGO de la asignatura. Tenga en cuenta que la información es provisional hasta el 30 de noviembre del 2023.

Equipo docente

Josep Ramon Casas Pla
Javier Ruiz Hidalgo
Gloria Haro Ortega
Federico Sukno

Equipo docente externo a la UAB

Marc Pérez

Prerrequisitos

Grado en Ingeniería, Matemáticas, Física o similar. 


Objetivos y contextualización

Coordinadora del mòdulo: Dr. Gloria Haro

El objetivo de este módulo es aprender los principios de la reconstrucción en 3D de un objeto o de una escena a partir de múltiples imágenes o vídeos estereoscópicos. Para ello, primero se introducen los conceptos básicos de la geometría proyectiva y el espacio 3D. El resto de aspectos y aplicaciones teóricas se basan en estas herramientas básicas. Se estudiará el mapeo del mundo 3D al plano de la imagen, introduciendo diferentes modelos de cámara, sus parámetros y la forma de estimarlos (calibración de la cámara y autocalibración). Se estudiará la geometría que relaciona un par de vistas. Todos estos conceptos se aplicarán para obtener una reconstrucción 3D en las dos principales situaciones posibles: cámaras calibradas o sin calibrar. En particular, aprenderemos a: estimar la profundidad de los puntos de una imagen, extraer los puntos 3D subyacentes dados un conjunto de correspondencias puntuales en las imágenes, generar vistas nuevas, estimar el objeto 3D dado un conjunto de imágenes calibradas en color o imágenes binarias, y estimar un conjunto de puntos 3D dado un conjunto de imágenes no calibradas. Se estudiará la representación 3D en voxeles y mallas. Explicaremos la reconstrucción y modelado a partir de datos de Kinect, como un modelo particular de sensores que proporcionan una imagen de la escena junto con sus profundidades. Finalmente, veremos algunas técnicas para procesar nubes de puntos 3D. Los conceptos y técnicas aprendidas en este módulo se utilizan en aplicaciones reales que van desde la realidad aumentada, la digitalización de objetos, la captura de movimiento, la síntesis de nuevas vistas, la generación de efectosespeciales, la robótica, etc. 

 

Resultados de aprendizaje

  • CA01 (Competencia) Integrar la formulación de todos los componentes de un sistema completo de recuperación y síntesis de información 3D.
  • CA06 (Competencia) Conseguir los objetivos de un proyecto de visión realizado en equipo.
  • KA04 (Conocimiento) Identificar los problemas básicos que se deben solucionar en un problema de recuperación de la información 3D de una escena.
  • KA12 (Conocimiento) Proporcionar la mejor formulación geométrica necesaria para modelizar todas las partes de un problema de recuperación de la información 3D de una escena.
  • SA04 (Habilidad) Resolver un problema de recuperación de información 3D y evaluar los resultados.
  • SA10 (Habilidad) Definir los mejores conjuntos de datos para entrenar arquitecturas de visión 3D.
  • SA15 (Habilidad) Preparar un informe que describa, justifique e ilustre el desarrollo de un proyecto de visión.
  • SA17 (Habilidad) Preparar presentaciones orales que permitan debatir los resultados del desarrollo de un proyecto de visión.

Contenido

  1. Introducción y aplicaciones.
  2. Geometría proyectiva 2D. Transformaciones planares.
  3. Estimación de la homografía. Rectificación afín y métrica
  4. Geometría proyectiva 3D y transformaciones. Modelos de cámara.
  5. Calibración de cámara. Estimación de pose.
  6. Geometría epipolar. Matriz fundamental Matriz esencial. Extracción de matrices de cámara.
  7. Cálculo de la matriz fundamental. Rectificación de la imagen.
  8. Métodos de triangulación. Cálculo de profundidad. Síntesis de nuevas vistas.
  9. Estéreo multi-vista. Structure from motion.
  10. Autocalibración. Bundle adjustment. 
  11. Sensores 3D (kinect). 
  12. Procesamiento de nubes de puntos.
 
 

Metodología

Sesiones supervisadas:  (Algunas de estas sesiones podrían ser en línea síncronas)

  • Sesiones de teoría, donde los profesores explican contenidos generales sobre los diferentes temas. Algunos de ellos se usarán para resolver los problemas.

Sesiones dirigidas:  

  • Sesiones de proyecto, donde los problemas y los objectivos de los proyectos serán presentados y discutidos, los estudiantes interactuarán con el coordinador del proyecto sobre problemas y ideas para resolver el proyecto (aprox. 1 hora/semana).
  • Sesión de presentación, donde los estudiantes hacen una presentación oral sobre cómo han resuelto el proyecto y una demostración de los resultados.
  • Sesión de examen, donde los estudiantes son evaluados de forma individual sobre el conocimiento obtenido y las habilidades para resolver problemas.

Trabajo autónomo:

  • El estudiante estudiará de forma autónoma y trabajará los materiales derivados de las sesiones teóricas.
  • El estudiante trabajará en grupos para resolver los problemas del proyecto con entregas de:
    • Código
    • Informes
    • Presentación oral

Nota: se reservarán 15 minutos de una clase dentro del calendario establecido por el centro o por la titulación para que el alumnado rellene las encuestas de evaluación de la actuación del profesorado y de evaluación de la asignatura o módulo.


Actividades

Título Horas ECTS Resultados de aprendizaje
Tipo: Dirigidas      
Sesiones teóricas 20 0,8 KA04, KA12, KA04
Tipo: Supervisadas      
Sesiones de seguimiento de proyectos 8 0,32 CA01, CA06, SA04, SA10, SA15, SA17, CA01
Tipo: Autónomas      
Trabajo autónomo 113 4,52 CA01, CA06, SA04, SA10, SA15, SA17, CA01

Evaluación

La nota final de este módulo se calculará con la siguiente fórmula:

Nota final = 0,4 x Examen + 0,55 x Proyecto + 0,05 x Asistencia

donde,

Examen: es la nota obtenida en el examen del módulo (debe ser >= 3).

Asistencia: es la nota derivada del control de asistencia a las sesiones (mínimo 70%)

Proyecto: es la nota proporcionada por el coordinador del proyecto a partir del seguimiento semanal del proyecto y de las entregas (debe ser >= 5). Todo de acuerdo con criterios específicos tales como:

  • Participación en sesiones de discusión y en el trabajo en equipo (evaluaciones entre miembros).
  • Entrega de las partes obligatorias y opcionales del proyecto.
  • Desarrollo de códigos (estilo, comentarios, etc.).
  • Informe (justificación de las decisiones en el desarrollo del proyecto).
  • Presentación y examen (Presentación, explicaciones y demostraciones sobre el proyecto desarrollado). 

Sólo los estudiantes que han suspendido (nota final < 5.0) podran hacer el examen de recuperación.


Actividades de evaluación continuada

Título Peso Horas ECTS Resultados de aprendizaje
Asistencia a sesiones 0.05 0,5 0,02 CA06, KA04, KA12
Examen 0.4 2,5 0,1 KA04, KA12
Proyecto 0.55 6 0,24 CA01, CA06, SA04, SA10, SA15, SA17

Bibliografía

Libros:

  1. O. Faugeras, Three-dimensional computer vision: a geometric viewpoint, MIT Press, cop. 1993.
  2. O. Faugeras, Q.T. Loung, The geometry of multiple images, MIT Press, 2001.
  3. D. A. Forsyth, J. Ponce, Computer vision: a modern approach, Prentice Hall, 2003.
  4. R. I. Hartley, A. Zisserman, Multiple view geometry in computer vision, Cambridge University Press, 2000.
  5. R. Szeliski, Computer Vision: Algorithms and Applications, Springer, 2011. 

Tutoriales:

  1. Y. Furukawa and C. Hernández, Multi-View Stereo: A Tutorial, Foundations and Trends® in Computer Graphics and Vision, vol. 9, no. 1-2, pp.1-148, 2013.
  2. T. Moons, L. Van Gool, M. Vergauwen, 3D Reconstruction from Multiple Images Part 1, Principles, Foundations and Trends® in Computer Graphics and Vision, vol. 4: no. 4, pp 287-404, 2010. 

Software

Entorno de programación en Python  con especial atención a las librerías de visión por computador y procesamiento de imágenes