Ficha Unidade Curricular (FUC)
Informação Geral / General Information
Carga Horária / Course Load
Área científica / Scientific area
Inteligência Artificial
Departamento / Department
Departamento de Ciências e Tecnologias da Informação
Ano letivo / Execution Year
2025/2026
Pré-requisitos / Pre-Requisites
Não se aplica.
Objetivos Gerais / Objectives
O principal objetivo desta unidade curricular é desenvolver nos estudantes a capacidade de descrever e aplicar os principais e mais recentes métodos computacionais de manipulação e análise de imagens, com o objetivo de permitir a extração automática de conhecimento. Para isso, serão exploradas técnicas de extração de características de imagem aplicáveis a algoritmos clássicos de aprendizagem automática e a técnicas de aprendizagem profunda, com foco especial no estudo aprofundado de métodos baseados em redes neuronais convolucionais (CNNs). Adicionalmente, pretende-se que os estudantes analisem e utilizem as principais ferramentas de manipulação de imagens no contexto da visão por computador e da aprendizagem automática, com especial ênfase no uso das bibliotecas OpenCV e TensorFlow, utilizando a linguagem de programação Python para a implementação prática de soluções computacionais.
Objetivos de Aprendizagem e a sua compatibilidade com o método de ensino (conhecimentos, aptidões e competências a desenvolver pelos estudantes) / Learning outcomes
No final da UC, cada estudante deverá ser capaz de: OA1: Representar imagens em diferentes espaços de cor e no domínio da frequência. OA2: Aplicar operações típicas de processamento de imagem. OA3: Extrair características de baixo nível de imagens. OA4: Implementar sistemas de aprendizagem automática para classificação de imagens usando algoritmos clássicos. OA5: Identificar e Explicar a arquitetura de redes neuronais convolucionais (CNN) e compreender o seu funcionamento. OA6: Resolver problemas de classificação de imagens de complexidade média usando CNNs. OA7: Aplicar metodologias de transferência de conhecimento e ajuste de CNNs pré-treinadas. OA8: Utilizar algoritmos de aprendizagem profunda para identificar objetos em imagens. OA9: Identificar e Descrever algoritmos de aprendizagem profunda para geração automática de conteúdos multimédia. OA10: Manipular imagens com OpenCV e desenvolver aplicações com TensorFlow. OA11: Demonstrar exemplos de aplicações de visão por computador.
Conteúdos Programáticos / Syllabus
CP1: Representação de imagens. CP2: Operações de imagem. CP3: Extração de características de imagens. CP4: Introdução à aprendizagem automática. CP5: Redes neuronais artificiais. CP6: Arquitetura e funcionamento de redes neuronais convolucionais (CNNs). CP7: Aprendizagem por transferência. CP8: Arquiteturas de CNNs para deteção e identificação de objetos. CP9: Arquiteturas de redes para geração automática de conteúdos multimédia. CP10: Desenvolvimento de aplicações práticas de visão por computador e aprendizagem automática.
Demonstração da coerência dos conteúdos programáticos com os objetivos de aprendizagem da UC / Evidence that the curricular unit's content dovetails with the specified learning outcomes
O CP1 (Representação de imagens) está alinhado com o OA1 e OA10, pois permite compreender e manipular imagens em diferentes espaços de cor e frequências. O CP2 (Operações de imagem) suporta o OA2 e OA10, permitindo a aplicação de operações e a manipulação prática de imagens. O CP3 (Extração de características) está diretamente ligado ao OA3 e OA10, sendo fundamental para extrair características de imagens. Os CP4 (Introdução à aprendizagem automática) e CP5 (Redes neuronais artificiais) sustentam o OA4 e OA10, ao fornecer a base para a implementação de sistemas de aprendizagem automática. Os CP6, CP7, CP8 e CP9 apoiam os OA5, OA6, OA7, OA8 e OA9, abrangendo CNNs, transferência de conhecimento, identificação de objetos e geração de conteúdos multimédia. Por fim, o CP10 está associado ao OA11, ao focar no desenvolvimento de aplicações práticas de visão por computador e aprendizagem automática.
Avaliação / Assessment
A avaliação será feita ao longo do semestre, sendo feita através de dois trabalhos de grupo valendo cada um 40% da nota final e um quizz realizado individualmente, com a ponderação de 20%. Cada uma das componentes de avaliação tem nota mínima de 8 valores e a aprovação na UC requer uma nota final mínima de 10 valores. Os trabalhos estão sujeitos a uma discussão oral. A discussão oral poderá impor um limite à nota dos trabalhos caso o desempenho demonstrado pelo(a) estudante esteja abaixo da qualidade dos trabalhos entregues, podendo inclusivamente reprovar caso o desempenho demonstrado não seja considerado suficiente. Dado o caráter prático da UC não há lugar a avaliação por exame. Melhoria de nota só pode ser feita repetindo o processo de avaliação no ano seguinte.
Metodologias de Ensino / Teaching methodologies
A metodologia de ensino-aprendizagem desta unidade curricular (UC) é de caráter ativo e centrada no estudante, que assume o papel principal no seu processo de aprendizagem. Esta abordagem promove a autonomia, a análise crítica e a aplicação prática de conceitos teóricos, visando o desenvolvimento de competências técnicas e transversais. O processo de aprendizagem combina momentos síncronos e assíncronos, utilizando metodologias diversificadas. A aprendizagem baseada em projetos (PBL - Project-Based Learning) permite que os estudantes desenvolvam projetos individuais e de grupo, aplicando os conhecimentos adquiridos a problemas reais e práticos. Esta abordagem incentiva a criatividade, a inovação e a capacidade de aplicar os conceitos em soluções concretas. A aprendizagem baseada em problemas (PBL - Problem-Based Learning) desafia os estudantes a resolver problemas relacionados com a manipulação, o processamento e a classificação de imagens. Esta metodologia promove a pesquisa autónoma e o pensamento crítico, ao mesmo tempo que reforça a capacidade de resolver problemas complexos. A aprendizagem por tarefas permite que os estudantes realizem atividades de complexidade crescente, aplicando os conteúdos abordados nas aulas teóricas e práticas. Estas tarefas visam consolidar o conhecimento e promover o desenvolvimento de competências técnicas, especialmente no uso de ferramentas como OpenCV e TensorFlow. O docente fornece feedback contínuo e construtivo, permitindo aos estudantes melhorar as suas práticas. As aulas teóricas e expositivas interativas apresentam os fundamentos conceptuais e estruturais da UC, alinhando os conteúdos com os objetivos de aprendizagem. Estas aulas fornecem a base teórica necessária para as tarefas práticas e os projetos, promovendo a participação ativa dos estudantes por meio de discussões e a análise crítica de casos reais. A aprendizagem colaborativa ocorre nos projetos de grupo, onde os estudantes trabalham juntos para alcançar os objetivos de aprendizagem. Este modelo reforça a comunicação, o trabalho em equipa e a interdependência positiva, ao mesmo tempo que promove a reflexão crítica sobre o seu próprio processo de aprendizagem. A utilização de recursos digitais interativos é uma parte essencial desta UC, suportada por uma plataforma de e-learning que disponibiliza vídeos, tutoriais, quizzes e fóruns de discussão. Estes recursos digitais incentivam a aprendizagem autónoma, o envolvimento e a motivação dos estudantes. Esta metodologia destaca três princípios fundamentais: o estudante é um agente ativo no seu processo de aprendizagem, a aprendizagem é construída de forma autónoma e colaborativa, e o conhecimento é aplicado a problemas reais, promovendo uma aprendizagem profunda e integrada. Esta abordagem assegura a coerência entre as metodologias de ensino e os objetivos de aprendizagem, garantindo que os estudantes desenvolvam competências técnicas e transversais aplicáveis no mundo real.
Demonstração da coerência das metodologias de ensino e avaliação com os objetivos de aprendizagem da UC / Evidence that the teaching and assessment methodologies are appropriate for the learning outcomes
A metodologia de ensino desta unidade curricular (UC) combina a experimentação prática com a base teórica, permitindo aos estudantes aplicar técnicas de visão por computador e aprendizagem automática na resolução de problemas reais. Esta abordagem ativa e centrada no estudante garante a coerência com os Objetivos de Aprendizagem (OA), promovendo a compreensão teórica, a aplicação prática e o desenvolvimento da autonomia. Os exercícios práticos focam a resolução de problemas concretos com dados reais, permitindo que os estudantes compreendam como os conhecimentos teóricos se aplicam a casos de uso reais. Esta prática está alinhada com os OAs que exigem a aplicação de conhecimentos teóricos e o desenvolvimento de competências de análise crítica e tomada de decisão. Os estudantes utilizam bibliotecas como OpenCV e TensorFlow, fundamentais para a manipulação de imagens e o desenvolvimento de soluções de visão por computador. A prática constante reforça a capacidade de extrair, manipular e aplicar técnicas computacionais no desenvolvimento de soluções. A aprendizagem autónoma é incentivada através da exploração de ferramentas e software de visão por computador de forma independente. Esta metodologia reforça as competências de autonomia, análise crítica e adaptação a novas ferramentas, contribuindo para os OAs focados na exploração de novas tecnologias e na autoaprendizagem. Durante este processo, os estudantes desenvolvem a capacidade de analisar e interpretar imagens, utilizando algoritmos de visão por computador para resolver desafios reais. A aprendizagem baseada em projetos é aplicada através de projetos de grupo, onde os estudantes desenvolvem soluções de visão por computador para problemas concretos. Esta metodologia está associada aos OAs que exigem a aplicação e criação de soluções inovadoras, promovendo a colaboração e o desenvolvimento de competências interpessoais. O trabalho em grupo permite o desenvolvimento de competências de comunicação e colaboração, essenciais no contexto profissional. A avaliação combina um exame final e projetos de grupo, assegurando a coerência com os OAs. O exame avalia a compreensão teórica dos conceitos fundamentais, enquanto os projetos avaliam a capacidade de aplicar o conhecimento e desenvolver soluções de visão por computador. Esta combinação permite cumprir os OAs relacionados com a análise, a aplicação e a criação de soluções práticas, garantindo uma avaliação equilibrada. Esta metodologia assegura que os estudantes compreendem os fundamentos teóricos e desenvolvem competências práticas para resolver problemas reais. Adquirem a capacidade de analisar, interpretar e aplicar técnicas de visão por computador e aprendizagem automática em diferentes áreas, assegurando a preparação para desafios reais e o desenvolvimento de competências técnicas, analíticas e transversais.
Observações / Observations
.
Bibliografia Principal / Main Bibliography
"Feature Extraction and Image Processing for Computer Vision, 4th Edition, M. Nixon e Alberto Aguado, Academic Press, 2019 Deep Learning, I. Goodsfellow, Y. Bengio e A. Courville, MIT Press, 2016 Learning OpenCV 4 with Python 3, 3rd Edition, Joseph Howse, Joe Minichino, Packt Publishing, 2020 Tutoriais e documentação das bibliotecas OpenCV e Tensorflow
Bibliografia Secundária / Secondary Bibliography
Data da última atualização / Last Update Date
2025-05-23