Skip to content

Repositório dos exemplos e desafios utilizados na disciplina de Visão Computacional do curso de MBA Machine Learning da FIAP

Notifications You must be signed in to change notification settings

michelpf/fiap-ml-visao-computacional

Repository files navigation

FIAP MBA em Machine Learning e Inteligência Artificial

Informações sobre o curso acesse aqui.

alt text

Este repositório reúne todos os notebooks, imagens, modelos e demais materiais necessário para a condução das aulas e revisão das mesmas.

Utilize as discussões ou mesmo crie issues se precisar de alguma informação.

Como é um repositório público, aceito eventuais Pull Requests!

Visão Computacional

Nas aulas podemos utilizar o Google Colab, os Notebooks do Kaggle ou a própria distribuição local Anaconda, com uso do Jupyter Notebook, que há vem instalado nesta distribuição. Você também pode usar até mesmo o VSCode, escolha o ambiente que mais adeque ao seu estilo!

Para instalar o Anaconda, acesse a sessão de Downloads do Anaconda.

Tanto o Google Colab ou Kaggle podem ser acessados diretamente dos respectivos sites.

Para quem for usar Colab ou Kaggle, use o badge de cada um. Eles possuem um link que já abre direto em cada plataforma, levando em consideração as particularidades de cada ambiente.

Uso de câmeras

Em algumas aulas poderá ser utilizado o streaming de vídeo de câmeras, que somente funciona em instalações locais. Tanto Google Colab quanto Kaggle ainda não suportam câmeras no modo ao vivo (exceto Colab que suporte imagens estáticas) por serem ambientes virtualizados.

Veja esta rápida introdução do uso de câmeras com o OpenCV em MacOS e Windows. Guarde esse pequeno guia para futuros usos, pois no MacOS as coisas funcionam um pouco diferente do Windows e costumam travar 😕 .

Pacotes utilizados

  • OpenCV 3.4.3 (conda install -c conda-forge opencv==3.4.3)
  • Keras 2.3.1 (conda install keras==2.3.1)
  • Matplotlib 3.1.3 (conda install matplotlib==3.1.3)
  • Seaborn 0.0.10 (conda install -c conda-forge seaborn==0.10.0)
  • Imutils 0.5.3 (conda install -c conda-forge imutils==0.5.3)
  • Scikit Learn 0.22.1 (conda install scikit-learn==0.22.1)
  • Scipy 1.4.1 (conda install scipy==1.4.1)

No Google Colab todas as dependências já estão instaladas. Já no Kaggle está indicando como instalar as dependências, sem dificuldades. 😄

Aulas no programa atualizado da disciplina:

Introdução a visão computacional (Aula 1)

Introdução sobre visão computacional e processamento de imagens

  1. Introdução do OpenCV
  2. Instalação
  3. Formação de imagens
  4. Representação de cores
  5. Histograma
  6. Construção de imagens

Open In Colab

Desafio

  1. Identificação de cores Open In Colab

    Solução Open In Colab

Manipulação de imagens (Aula 2)

Manipulação e transformação de imagens

  1. Transformações
  2. Translações
  3. Rotações
  4. Resizing
  5. Cropping
  6. Masking
  7. Suavização

Open In Colab

Desafios

  1. Transformação de imagens Open In Colab

    Solução Open In Colab

  2. Máscaras em imagens Open In Colab

    Solução Open In Colab

  3. Pipeline machine learning Open In Colab

    Solução Open In Colab

Segmentação de imagens (Aula 3)

Técnicas para segmentar e extrair artefatos e regiões de interesse de imagens

  1. Suavização
  2. Binarização
  3. Dilatação e Erosão
  4. Deteção de Borda
  5. Contornos
  6. Identificação de Formas

Open In Colab

Desafios

  1. Contornos em imagens Open In Colab

    Solução Open In Colab

  2. Limpeza de imagens Open In Colab

    Solução Open In Colab

Classificação de objetos e análise facial (Aula 4)

Classificadores de objetos e análise facial

  1. Classificadores em cascata de Haar
  2. Classificador de marcos faciais DLib
  3. Análise Facial
  4. Alinhamento de faces

Open In Colab

Desafios

  1. Detecção de sorriso Open In Colab

    Solução Open In Colab

  2. Classificação de emoções com marcos faciais Open In Colab

    Solução Open In Colab

Deep learning e transfer learning aplicado a imagens (Aula 5)

Reconhecimento de imagens e objetos

  1. Reconhecimento de imagens utilizando redes neurais profundas
    • Redes neurais convolucionais (CNN)
    • Vision transformers (ViT)
  2. Técnicas de transferência de aprendizado (transfer learning)
  3. Reconhecimento de objetos com YOLO (You Only See Once).

Open In Colab

Desafio

  1. Detecção de Lixo em Ruas Open In Colab

    Solução Open In Colab

Capstones

Projetos de conclusão da disciplina aplicados.

  1. Análise de Imagens Médicas
  2. Auditoria de Vídeo
  3. Detector de Liveness