Introducción a la visión por computador y el procesado de imagen
Nombre | Centro / Entidad |
ALBERTO DÍAZ ÁLVAREZ | E.T.S. DE INGENIEROS INDUSTRIALES |
FÉLIX JOSÉ FUENTES HURTADO | E.T.S DE ING. DE SISTEMAS INFORMÁTICOS |
EDGAR TALAVERA MUÑOZ | E.T.S. DE INGENIEROS INDUSTRIALES |
Los objetivos son el desarrollo del MOOC ?Introducción a la Visión por Computador y el Procesado de Imagen?, en el que se enseñarán las bases de las técnicas más relevantes hoy en día en este ámbito. Hoy en día existe una gran abundancia de formación de casi cualquier tema. Sin embargo, en pocas ocasiones esta formación se esfuerza en explicar las cosas de forma clara, concisa y sencilla, para que sea posible entender los conceptos sin un gran esfuerzo.
Nuestra meta es acercar un tema, a priori, complicado, explicando dichos conceptos de forma sencilla y acompañado de aplicaciones prácticas que permitan al alumnado interiorizar las diferentes técnicas estudiadas.
En última instancia, nuestro objetivo es conseguir que cualquier persona que realice el curso sea capaz de identificar oportunidades de aplicación de las técnicas vistas y dotarles de la metodología adecuada para que sean capaces aplicarlas correctamente.
El equipo docente que impartirá el curso está formado por tres profesores de la UPM con una amplia experiencia en el área de la Visión por Computador (CV) y la Inteligencia Artificial (IA).
El equipo docente integra profesores del área de Ciencias de la Computación e Inteligencia Artificial, Lenguajes y Sistemas Informáticos y Arquitectura y Tecnología de Computadores. Tanto sus doctorados como su trayectoria investigadora y profesional están íntimamente relacionados con la Visión por Computador y la Inteligencia Artificial, y durante la última década han trabajado en especial en la aplicación de técnicas de visión por computador a distintos problemas prácticos en diferentes ámbitos.
Sus investigaciones abarcan un amplio espectro de aplicaciones: clasificación de imágenes, detección de objetos, segmentación de imágenes, generación de imágenes, reconocimiento de patrones, conducción autónoma y conectada, etcétera.
En el ámbito profesional cubren un amplio abanico de aplicaciones y temas: inteligencia artificial, conducción autónoma y conectada, desarrollo web, simulación y videojuegos, ciberseguridad, software empotrado y de control, robótica, etcétera. Además, el equipo docente dispone de una amplia experiencia impartiendo cursos a instituciones como Telefónica, Ericsson, Samsung, Nexea o la Comunidad de Madrid.
Por estas razones consideramos que el equipo docente es idóneo para la impartición del curso propuesto.
Con el auge vivido en la última década tras la aparición de las Redes Neuronales Profundas, la Visión por Computador se ha hecho, si cabe, más necesaria. Hoy en día, las técnicas de Inteligencia Artificial han conseguido dotar a los ordenadores de la ?inteligencia? necesaria para realizar tareas específicas con un alto grado de eficacia y eficiencia. No obstante, para que los ordenadores puedan ?percibir? el mundo real, necesitan alguna entrada que se lo permita. En este caso, disponer de ?ojos? al mundo, les dota de la capacidad de identificar lo que ocurre y poder reaccionar en base a ello.
De hecho, podemos definir la visión por computador como una disciplina de la inteligencia artificial que se ocupa de la interpretación automática de imágenes y videos. Su objetivo principal es permitir que las máquinas "vean" el mundo como lo hacen los humanos y tomen decisiones basadas en lo que ven. Esto se logra mediante el uso de algoritmos y técnicas de procesamiento de imágenes, reconocimiento de patrones, aprendizaje automático y visión artificial.
En la actualidad, la visión por computador permite a las máquinas interpretar y tomar decisiones basadas en imágenes y videos, lo que deriva en técnicas que permiten mejorar la seguridad, la eficiencia, la medicina y la robótica, entre otros.
En resumen, el objetivo principal de un curso MOOC de Visión por Computador es brindar a los estudiantes una base sólida en teoría y práctica en el campo de la visión por computador, para que puedan aplicar estos conocimientos en una variedad de aplicaciones del mundo real.
Los objetivos del curso propuesto son los siguientes:
- Comprender los fundamentos teóricos y conceptuales de la visión por computador, incluyendo el pre-procesamiento de imágenes, la clasificación y segmentación de imágenes y la detección de objetos.
- Aprender a utilizar herramientas y tecnologías clave para la visión por computador, como OpenCV, TensorFlow y Keras, entre otros.
- Familiarizarse con diferentes aplicaciones de la visión por computador en la vida real, como el reconocimiento facial, la detección de objetos en tiempo real, la vigilancia de seguridad, la medicina y la robótica.
- Desarrollar habilidades prácticas a través de proyectos y ejercicios prácticos que involucren la implementación de algoritmos de visión por computador utilizando Python como lenguaje de programación.
- Bienvenida: Presentación del curso, objetivos y planificación.
- Procesamiento básico de imagen: En este tema se abordarán operaciones básicas con las imágenes, como traslación, rotación, redimensionado, etc; así como transformaciones como umbralización, operaciones morfológicas, filtrado, etc.
- Redes neuronales aplicadas a visión por computador: En este tema se introducirán las redes neuronales tradicionales y se explicarán las redes neuronales convolucionales, piedra angular de las técnicas de visión por computador actuales.
- Clasificación de imágenes: En este tema se explicará cómo se pueden emplear las redes neuronales convolucionales para la clasificación de imágenes.
- Segmentación de imágenes: Los estudiantes aprenderán a emplear redes neuronales convolucionales para segmentar imágenes.
- 6. Detección de objetos: Se explicarán distintos métodos de detección de objetos basados en redes neuronales convolucionales.
Videos y herramientas de programación interactiva, como notebooks de Jupyter (Python)
Cualquier persona interesada en iniciarse en el área de la visión por computador. Para el correcto aprovechamiento del curso resulta esencial conocer el lenguaje de programación Python, aunque sea a nivel básico, pues todos los ejemplos serán desarrollados en dicho
lenguaje.
Por otra parte, si el usuario dispone de una base de conocimiento matemático (álgebra) a nivel de educación secundaria, podrá aprovechar mejor y entender en más profundidad el contenido del curso.
Finalmente, aunque el curso está pensado para cualquier persona (con unos conocimientos mínimos de Python), aquellos usuarios que dispongan de conocimientos previos de técnicas basadas en aprendizaje profundo podrán aprovechar mejor el contenido del curso.
Se contemplan las siguientes actividades de evaluación:
- Evaluación previa: incluida en el módulo de introducción, permitirá conocer el nivel inicial de los estudiantes y sus motivaciones
- Evaluación de la formación:
- Autoevaluación: Al finalizar cada módulo se dispondrá de una prueba de autoevaluación que permitirá al estudiante evaluar sus conocimientos.
- Actividades prácticas por módulo: Ciertos módulos llevarán asociada una actividad práctica de desarrollo para evaluar al estudiante.
- Seguimiento y participación en foros: Se realizará un análisis del seguimiento de los foros por parte de los alumnos, incentivando su participación y lectura en caso de ser necesario.
- Trabajo final: Los estudiantes deberán realizar un proyecto personal de su elección empleando las técnicas aprendidas durante el curso. Está será una de las actividades con más peso en la evaluación global.
- Satisfacción del alumnado: se incluirá una encuesta en el módulo final para que los estudiantes puedan valorar la formación recibida.
Se plantearán debates de aplicaciones de actualidad de la visión por computador y sus implicaciones éticas en el foro.
Asimismo, se propondrá la participación del alumnado en competiciones estilo Kaggle donde puedan poner a prueba lo aprendido y que sirva como motivación extra.