La visión por computador es una disciplina de la informática que trata de extraer y analizar la información de interés contenida en una imagen o secuencia de imágenes. Los campos de aplicación crecen cada día y van desde el reconocimiento de caras al diagnóstico precoz de enfermedades, pasando por la detección y localización de objetos y personas, la interacción gestual con sistemas, el guiado de robots o la conducción automática.
Al acabar la asignatura el alumno sabrá analizar, diseñar, programar y evaluar métodos y técnicas de análisis de imágenes, bajo requerimientos de respuesta temporal, fiabilidad y coste.
La evaluación de la asignatura se hará mediante controles parciales, las prácticas del laboratorio y trabajos en grupo, pudiéndose aprobar la asignatura sin tener que hacer un examen final.
Profesorado
Responsable
-
Joan Climent Vilaró (
)
-
Manel Frigola Bourlon (
)
Otros
Competencias
Competencias Técnicas
Competencias técnicas comunes
-
CT1 - Demostrar conocimiento y comprensión de hechos esenciales, conceptos, principios y teorías relativas a la informática y a sus disciplinas de referencia.
-
CT1.2A
- Demostrar conocimiento y comprensión de los conceptos fundamentales de la programación y de la estructura básica de un computador. CEFB5. Conocimiento de la estructura, funcionamiento e interconexión de los sistemas informáticos, así como los fundamentos de su programación.
-
CT2 - Utilizar de forma apropiada teorías, procedimientos y herramientas en el desarrollo profesional de la ingeniería informática en todos sus ámbitos (especificación, diseño, implementación, despliegue -implantación- y evaluación de productos) de manera que se demuestre la comprensión de los compromisos adoptados en las decisiones de diseño.
-
CT2.5
- Diseñar y evaluar interfaces persona-computador que garanticen la accesibilidad y la usabilidad a los sistemas, a los servicios y a las aplicaciones informáticas.
-
CT4 - Demostrar conocimiento y capacidad de aplicación de los procedimientos algorítmicos básicos de las tecnologías informáticas para diseñar soluciones a problemas, analizando la idoneidad y la complejidad de los algoritmos
-
CT4.1
- Identificar las soluciones algorítmicas más adecuadas para resolver problemas de dificultad mediana.
-
CT4.3
- Demostrar conocimiento y capacidad de aplicación de los principios fundamentales y las técnicas básicas de los sistemas inteligentes y su aplicación práctica.
-
CT5 - Analizar, diseñar, construir y mantener aplicaciones de forma robusta, segura y eficiente, escogiendo el paradigma y los lenguajes de programación más adecuados.
-
CT5.2
- Conocer, diseñar y utilizar de forma eficiente los tipos y las estructuras de datos más adecuados para la resolución de un problema.
-
CT5.5
- Usar las herramientas de un entorno de desarrollo de software para crear y desarrollar aplicaciones.
-
CT8 - Planificar, concebir, desplegar y dirigir proyectos, servicios y sistemas informáticos en todos los ámbitos, liderando su puesta en marcha, su mejora continua y valorando su impacto económico y social
-
CT8.1
- Identificar tecnologías actuales y emergentes y evaluar si son aplicables, y en qué medida, para satisfacer las necesidades de los usuarios.
Competencias Transversales
Aprendizaje autónomo
-
G7 [Avaluable] - Detectar carencias en el propio conocimiento y superarlas mediante la reflexión crítica y la elección de la mejor actuación para ampliar este conocimiento. Capacidad para el aprendizaje de nuevos métodos y tecnologías y versatilidad para adaptarse a nueves situaciones.
-
G7.3
- Aprendizaje autónomo: Capacidad de planificación y organización del trabajo personal. Aplicar los conocimientos adquiridos a la realización de una tarea en función de la pertenencia y la importancia, decidiendo la manera de llevarla a cabo y el tiempo que hay que dedicarle y seleccionando las fuentes de información más adecuadas. Identificar la importancia de establecer y mantener contactos con los compañeros de estudios, con el profesorado y con profesionales (networking). Identificar fórums de información sobre ingeniería TIC, sus avances y su impacto en la sociedad (IEEE, asociaciones, etc.).
Competencias Técnicas de cada especialidad
Especialidad de computación
-
CCO2 - Desarrollar de forma efectiva y eficiente los algoritmos y el software apropiados para resolver problemas complejos de computación.
-
CCO2.2
- Capacidad para adquirir, obtener, formalizar y representar el conocimiento humano de una forma computable para la resolución de problemas mediante un sistema informático en cualquier ámbito de aplicación, particularmente los relacionados con aspectos de computación, percepción y actuación en ambientes o entornos inteligentes.
-
CCO2.3
- Desarrollar y evaluar sistemas interactivos y de presentación de información compleja, y su aplicación a la resolución de problemas de diseño de interacción persona computadora.
-
CCO2.4
- Demostrar conocimiento y desarrollar técnicas de aprendizaje computacional, y diseñar e implementar aplicaciones y sistemas que las utilicen, incluyendo las dedicadas a la extracción automática de información y conocimiento a partir de grandes volúmenes de datos.
Objetivos
-
Entender los mecanismos de formación de las imágenes digitales y sus características.
Competencias relacionadas:
CT1.2A,
-
Comparar y seleccionar las herramientas más adecuadas de preprocesado de imagen en función del problema a resolver.
Competencias relacionadas:
CT1.2A,
CT4.1,
CT5.2,
-
Conocer, diseñar y aplicar de forma eficiente los descriptores más adecuados para la caracterización de regiones, contornos o puntos singulares de una imagen.
Competencias relacionadas:
CT1.2A,
CT5.2,
CCO2.2,
-
Detectar y reconocer la presencia de determinados ítems en una imagen.
Competencias relacionadas:
CCO2.3,
CT2.5,
CT4.1,
CCO2.2,
CCO2.4,
CT4.3,
-
Realizar correctamente experimentos encaminados a evaluar los métodos elegidos o propuestos, sus limitaciones y puntos débiles, en base a resultados objetivables.
Competencias relacionadas:
CT1.2A,
CT8.1,
CT4.1,
CT5.5,
CCO2.2,
CCO2.4,
G7.3,
CT4.3,
-
Detectar movimiento en una escena y seguir objetivos.
Competencias relacionadas:
CT1.2A,
CT8.1,
CCO2.3,
CT2.5,
CT4.1,
CT5.2,
CCO2.2,
CT4.3,
-
Segmentar y etiquetar las regiones de una imagen a partir de sus características comunes y / o diferencias.
Competencias relacionadas:
CT1.2A,
CT4.1,
CT5.2,
CT4.3,
Contenidos
-
Fundamentos de la imagen digital
La imagen digital, propiedades y características. Discretización y cuantificación. Espacios de color.
-
Procesado digital imágenes
Transformaciones de nivel de gris.Transformacions geométriques.Operadors lineales. Convolución. Realzado y suavizado de la imatge.Detecció de contorns.Operadors no lineales. Filtros morfologics.Espai de escala
-
Segmentación de imágenes
Binaritzación.
Técniques basadas en regiones: región growing, split & merge, watershed, k-means, normalized cuts ....
Técnicas basadas en contornos: log, dog, Canny ... Análisis de conectividad y etiquetado, grafo de adyacencia.
-
Descriptores de formas
Descriptores basados en contornos
descriptores basados en regiones Concepto invariancia en traslación, rotación, iluminación, transformaciones afines y / o escala.
-
Reconocimiento
Conceptos bàsics.Classificació mediante vectores descriptors.Construcció de las clases (Clustering, aprendizaje ...) Funciones distància.Tipus de clasificadores: Bayes, Mahalanobis, Fisher, K-nearest, ... Evaluación de una classificació.Anàlisi de componentes principales . Reducción de la dimensionalitat.Identificació de objetos. Reconocimiento de categorías.
-
características locales
Descriptores basados en histogramas: histogramas de color, HOGs.Transformada de Hough.Detectors y descriptores de puntos de interés: Harris, SIFT.Característiques Haar. El algoritmo de Viola-Jones para detectar caras.
-
Análisis del movimiento
Imagen diferencia. Flujo óptico. Correspondencia de puntos. Seguimiento de objetos.
Actividades
Actividad
Acto evaluativo
¿Qué es una imagen? ¿Qué información contiene?
Captación de imágenes digitales, propiedades y características. Formación de la Imagen.
Objetivos:
1
Contenidos:
Procesado digital de imágenes
Histograma de la imagen, modificaciones, realzado. Filtrado espacial y frecuencial. Filtros morfológicos. Transformaciones geométricas. Espacio de escala
Objetivos:
2
Contenidos:
Segmentación de imágenes
Técnicas basadas en regiones: Binarización, watershed, mean-shift, normalized cuts.... Técnicas basadas en contornos: Gradientes, LoG, DoG, Canny...Análisis de conectividad y etiquetado, grafo de adyacencia.
Objetivos:
7
5
Contenidos:
Detección y descripción de características.
Características locales y globales.Descriptores de regiones, contornos y puntos singulares.Concepto de invariancia a traslación, rotación y escala
Objetivos:
3
5
Contenidos:
Reconocimiento
Conceptos básicos. Clasificación mediante vectores descriptores. Construcción de las clases (Clustering, aprendizaje...) Funciones distancia. Tipo de clasificadores: Bayes, Mahalanobis, Fisher, K-nearest,... Identificación de objetos. Reconocimiento de categorías.
Objetivos:
4
5
Contenidos:
Detección y análisis de movimiento
Imagen diferencia.Flujo óptico.Correspondencia de puntos.Seguimiento de objetos.
Objetivos:
4
5
6
Contenidos:
Diseñar y desarrollar una aplicación sencilla de visión por computador (miniproyecto).
El alumno deberá elegir y combinar los métodos y técnicas que encuentre más adecuados para dar solución al problema presentado. Deberá evaluar su trabajo diseñando juegos de pruebas y delimitando el alcance de la solución propuesta.
Objetivos:
1
2
7
4
3
5
Contenidos:
Control de consecución de objetivos.
Prueba de conocimientos.
Objetivos:
1
2
7
Semana:
7
Control de seguimiento del miniproyecto
El alumno debe presentar un informe parcial de evolución del miniproyecto: decisiones de diseño y primeras pruebas si las hubiere, así como una planificación temporal del trabajo que falta. Se trata de una prueba de seguimiento de la correcta evolución del miniproyecto. También sirve para reorientar al alumno en caso necesario.
Objetivos:
2
7
3
5
Semana:
14 (Fuera de horario lectivo)
Presentación de los resultados del miniproyecto
El alumno realiza una presentación de su miniproyecto.
Objetivos:
2
7
4
3
5
Semana:
15 (Fuera de horario lectivo)
Prueba de consecución de objetivos
Objetivos:
7
4
3
5
6
Semana:
15 (Fuera de horario lectivo)
Metodología docente
La metodología docente será con carácter general de carácter deductivo. Se intentará huir del método expositivo / Lección magistral. El planteamiento será siempre el mismo: - proponer un problema - intentar resolverlo - añadir las piezas de teoría necesarias para poder solucionar el problema de manera adequada.Durant las prácticas se trabajará también el aprendizaje cooperativo, así como el aprendizaje autónomo por a la resolución del miniproyecto.
Método de evaluación
A lo largo del curso se realizarán una serie de ejercicios para evaluar al alumno. No habrá examen final.
NL se obtendrá a partir de las prácticas realizadas obligatoriamente en clase personalmente y de las entregas de las prácticas realizadas fuera de clase.
NT se obtendrá a partir de los exámenes parciales.
La nota final de la asignatura se calculará de la siguiente manera: NF = 0'7NL+ 0'3NT
La evaluación de la competencia transversal (Aprendizaje Autónomo) se calculará teniendo en cuenta la capacidad del alumno por:
. detectar la propia falta de conocimiento sobre el problema propuesto
. buscar posibles soluciones al problema planteado (búsqueda de bibliografía-estudio del estado del arte) .
. saber valorar cuando se tiene suficiente información para solucionar el problema planteado.
. elegir la solución adecuada (adaptar o mejorar una existente) o saber valorar si es necesario crear una nueva
. defender la solución elegida frente a otras soluciones basándose en argumentos objetivos (resultados).
Bibliografía
Básica:
-
Foundations of computer vision -
Torralba, Antonio; Isola, Phillip; Freeman William T,
The MIT Press, [2024]. ISBN: 9780262378666
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991005218640006711&context=L&vid=34CSUC_UPC:VU1
-
Computer vision : algorithms and applications -
Szeliski, R,
Springer, 2011. ISBN: 9781848829343
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003856339706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
-
Image processing, analysis, and machine vision -
Sonka, M.; Vaclav, H.; Roger, B,
Cengage Learning, 2014. ISBN: 1133593690
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004080439706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Complementaria:
-
Digital image processing using Matlab -
González, R.C.; Woods, R.E.; Eddins, S.L, McGraw Hill ,
2010.
ISBN: 9780070702622
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004058979706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
-
Digital image processing -
Gonzalez, R.C.; Woods, R.E, Pearson ,
2018.
ISBN: 1292223049
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004153429706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
-
Machine vision -
Jain, R.; Kasturi, R.; Schunck, B.G, McGraw-Hill ,
1995.
ISBN: 0070320187
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991001417669706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Capacidades previas
Es recomendable que el estudiante haya superado las asignaturas de Probabilidad y Estadística (PE) y Proyecto de Programación (PROP).