Spaces:
Sleeping
Sleeping
File size: 2,415 Bytes
8fb6272 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 |
---
title: Weapon Detection App
emoji: 🚨
colorFrom: red
colorTo: yellow
sdk: gradio
sdk_version: 5.15.0
app_file: app.py
pinned: false
license: mit
hardware: true
resources:
accelerator: T4
gpu: true
---
# Sistema de Detecção de Riscos em Vídeo
Este projeto implementa um sistema de detecção de riscos em vídeo utilizando YOLOv8 e Clean Architecture.
## Pré-requisitos
- Python 3.9 ou superior
- pip (gerenciador de pacotes Python)
- Ambiente virtual Python (recomendado)
## Configuração do Ambiente
1. Clone o repositório:
```bash
git clone [URL_DO_REPOSITORIO]
cd [NOME_DO_DIRETORIO]
```
2. Crie e ative um ambiente virtual:
```bash
python -m venv .venv
source .venv/bin/activate # Linux/Mac
# OU
.venv\Scripts\activate # Windows
```
3. Instale as dependências:
```bash
pip install -r requirements.txt
```
4. Configure as variáveis de ambiente:
Crie um arquivo `.env` na raiz do projeto com as seguintes variáveis:
```
NOTIFICATION_API_KEY=sua_chave_api
```
## Executando o Projeto
1. Ative o ambiente virtual (se ainda não estiver ativo)
2. Execute o aplicativo:
```bash
python src/main.py
```
3. Acesse a interface web através do navegador no endereço mostrado no terminal (geralmente http://localhost:7860)
## Funcionalidades
- Upload de vídeos para análise
- Detecção de objetos em tempo real
- Configuração de parâmetros de detecção
- Sistema de notificações
- Monitoramento de recursos do sistema
## Estrutura do Projeto
O projeto segue os princípios da Clean Architecture:
- `domain/`: Regras de negócio e entidades
- `application/`: Casos de uso e interfaces
- `infrastructure/`: Implementações concretas
- `presentation/`: Interface com usuário (Gradio)
## Contribuindo
1. Fork o projeto
2. Crie uma branch para sua feature (`git checkout -b feature/AmazingFeature`)
3. Commit suas mudanças (`git commit -m 'Add some AmazingFeature'`)
4. Push para a branch (`git push origin feature/AmazingFeature`)
5. Abra um Pull Request
## Tecnologias
- Python 3.8+
- PyTorch com CUDA
- OWL-ViT
- Gradio
- FFmpeg
## Requisitos de Hardware
- GPU NVIDIA T4 (fornecida pelo Hugging Face)
- 16GB de RAM
- Armazenamento para cache de modelos
## Limitações
- Processamento pode ser lento em CPUs menos potentes
- Requer GPU para melhor performance
- Alguns falsos positivos em condições de baixa luz
---
Desenvolvido com ❤️ para o Hackathon FIAP
|