Projeto criado para disciplina Fundamentos de Inteligência Artificial (FIA) - Graduação. Prof. Pablo De Chiaro
O objetivo deste projeto é realizar a detecção de animais selvagens em vídeos ao vivo ou gravações de câmeras de vigilância ao ar livre. O sistema utiliza um modelo de deep learning (SSD MobileNet) para identificar animais específicos (como elefantes, cervos, ursos, zebras, e leões) e, ao detectar um animal, uma foto é capturada e salva automaticamente. O código foi ajustado para tirar apenas uma foto a cada meio minuto, evitando capturas repetidas de animais em sequência.
-
Criar o ambiente virtual:
python -m venv env-visao
-
Ativar o ambiente virtual:
No macOS e Linux:
source ./env-visao/bin/activate
No Windows:
.\env-visao\Scripts\activate
Após ativar o ambiente virtual, instale as dependências necessárias para o projeto com o seguinte comando:
pip install -r requirements.txt
numpy==2.0.0
opencv-python==4.10.0.84
O projeto possui a seguinte estrutura:
/projeto
/fotos # Onde as fotos dos animais detectados são salvas
/models # Contém os arquivos do modelo de detecção e configuração
/videos # Vídeos para detecção
main.py # Arquivo principal para execução do código
requirements.txt # Dependências do projeto
-
Modelo e Configuração: O projeto usa o modelo SSD MobileNet V2 treinado com o conjunto de dados COCO. Certifique-se de que o arquivo
frozen_inference_graph.pb
,ssd_mobilenet_v2_coco.pbtxt
, ecoco_labels.txt
estejam corretamente configurados.Modelo: Baixe o modelo clicando aqui, copie o arquivo
frozen_inference_graph.pb
para a pasta/models
. -
Executar o Código: Para iniciar a detecção, execute o código no arquivo
main.py
. O sistema irá capturar uma foto dos animais detectados a cada 60 segundos.python main.py
Certifique-se de substituir o caminho do vídeo no arquivo pelo vídeo que você deseja monitorar.
-
Verifique as Fotos: As fotos serão salvas na pasta
/fotos
com o nome do arquivo incluindo a data e hora da captura.
Para verificar se as bibliotecas foram instaladas corretamente, você pode executar o seguinte código Python:
import cv2
import numpy as np
print(f"OpenCV version: {cv2.__version__}")
print(f"NumPy version: {np.__version__}")
Quando terminar de trabalhar no projeto, você pode desativar o ambiente virtual com o comando:
deactivate