Projeto de visão computacional para análise e comparação de modelos convolucionais a fim de classificar imagens em gato ou cachorro utilizando Transfer-learning e GRAD-CAM. Foram testados os modelos EfficientNetB3, MobileNetV2 e ResNet50, todos utilizando TensorFlow.
A seção Estrutura do Repositório contém uma descrição e link para cada pasta e arquivo do projeto.
As imagens passadas aos modelos foram avaliadas por eles e o resultado é mostrado através do gradiente sobreposto às figuras.
-
assets/: pasta contendo imagens de saída dos modelos com o gradiente;
-
data/: pasta gerada em tempo de execução com a base de dados de imagem;
-
notebooks/: pasta contendo os arquivos dos modelos em Jupyter Notebook;
- data_analysis.ipynb: análise inicial sobre os dados e a sua distribuição;
- efficientNet.ipynb: definição, execução e testes do modelo EfficientNetB3;
- mobileNet.ipynb: definição, execução e testes do modelo MobileNetV2;
- resNet.ipynb: definição, execução e testes do modelo ResNet50.
-
output/: pasta gerada em tempo de execução com os modelos e históricos de treino salvos;
-
utils/: pasta contendo implementações em Python comuns à todos os modelos;
- extract_data.py: extração dos dados e criação do DataFrame;
- plot_heatmap.py: plotagem de gráficos e imagens para análise dos resultados;
- split_data.py: divisão dos dados em treino, teste e validação.
-
.gitignore: arquivo de instrução do Git informando quais arquivos e pastas devem ser ignorados;
-
Dockerfile: arquivo de instrução para a criação da imagem Docker para o projeto;
-
LICENSE: arquivo informando qual a licença de software vigente no projeto;
-
README.md: arquivo de ajuda e instrução;
-
requirements.txt: arquivo de instrução contendo as bibliotecas necessárias para o projeto.