docClassifier é um sistema inteligente baseado em Visão Computacional e Deep Learning (Redes Neurais Convolucionais - CNN) para a classificação e validação de documentos de identificação.
O objetivo principal é predizer o tipo de documento enviado (RG, CNH, Passaporte) e comparar essa previsão com a classificação esperada pelo usuário.
| Componentes | Responsável | Contato |
|---|---|---|
| Modelo (IA) & Backend (API) | Ana Pinheiro | GitHub / LinkedIn |
| Frontend (Interface Web) | Adonis Oliveira | GitHub / LinkedIn |
Este projeto demonstra a construção de uma solução de IA robusta e escalável, combinando o poder do Deep Learning com princípios avançados de Engenharia de Software (Clean Architecture e Atomic Design).
A arquitetura modular garante que o processamento de imagem, a lógica do modelo e a interface do usuário sejam independentes, facilitando a manutenção, testes e futuras expansões.
O modelo central é uma Rede Neural Convolucional (CNN) treinada para categorizar imagens nos seguintes tipos: cnh, rg e passporte
- Envio: O usuário interage com o Frontend e submete uma imagem de documento, informando também o tipo de documento esperado (ex: "CNH").
- Pré-processamento: O Backend recebe a imagem, aplica validações de segurança e otimiza a imagem (redimensionamento e normalização) para o modelo.
- Predição (CNN): O modelo CNN processa a imagem pré-processada e retorna o tipo de documento previsto (ex: "CNH").
- Validação: O sistema compara o tipo previsto pelo modelo ("CNH") com o tipo informado pelo usuário ("CNH").
- Resultado: A resposta é retornada ao usuário, indicando se houve correspondência (classificação bem-sucedida) ou falha.
- Python 3.10+
- TensorFlow / Keras
- FastAPI
- Pillow
- Clean Architecture
- Testes Unitários (pytest + mock)
- TypeScript / Angular
- SCSS e HTML5
- RxJS
- Atomic Design
-
Clonar o repositório:
git clone https://github.com/adonisoliveiradasilva/docClassifier.git cd docClassifier -
Criar e ativar o ambiente virtual (Windows PowerShell)
python -m venv venv .\venv\Scripts\Activate.ps1
-
Instalar dependências
python -m pip install --upgrade pip pip install -r requirements.txt
-
Configurar pré-commit
pre-commit install -t pre-push
-
Rodar a API
python -m api.app
A documentação interativa da API estará disponível em
http://localhost:8000/docs
- Instalar Node.js e Angular CLI (se ainda não tiver).
- Navegar para a pasta do Frontend:
cd ui/ - Instalar dependências do Node:
npm install
- Executar o servidor de desenvolvimento:
A interface será aberta em
npm start
http://localhost:4200.
Para detalhes técnicos sobre a arquitetura do modelo, estrutura de pastas, endpoints da API, acesse:
