Skip to main content

Pipeline de Inferência Unificada

  Para atender ao RF01, foi desenvolvido um sistema unificado de inferência capaz de operar com ambos os modelos (ResNet-18 e Swin Transformer V2) de forma transparente, garantindo flexibilidade operacional.

Contexto de Desenvolvimento

  O sistema unificado foi desenvolvido para suportar tanto o ResNet-18 (modelo experimental com limitações) quanto o Swin Transformer V2 (modelo implementado no frontend). Embora apenas o Swin Transformer V2 seja utilizado em produção devido às limitações de generalização identificadas no ResNet-18, a arquitetura permite flexibilidade para futuras expansões.

Arquitetura do Sistema

  O sistema utiliza uma classe principal UnifiedCrackClassifier que gerencia automaticamente:

  1. Detecção automática do tipo de modelo baseado no caminho
  2. Carregamento dinâmico dos módulos específicos
  3. Configuração automática das transformações adequadas
  4. Interface padronizada para resultados consistentes

Fluxo de Execução

Modelo + Imagem → Detecção Tipo → Carregamento Dinâmico → 
Pré-processamento → Inferência → Resultado Padronizado

Pré-processamento Específico

  Cada modelo aplica transformações otimizadas:

ResNet-18:

  • Resize direto para 224×224
  • Normalização ImageNet padrão
  • CLAHE opcional baseado na configuração

Swin Transformer V2:

  • Resize para 224×224
  • CLAHE com parâmetros específicos
  • Normalização otimizada
  • Filtros avançados quando disponíveis

Performance

Tabela 1: Tempos de Inferência

OperaçãoResNet-18Swin Transformer V2
Carregamento inicial~2s~5s
Inferência (GPU)~0.05s~0.15s
Batch 10 imagens~0.2s~0.8s

Fonte: Produzida pelos Autores (2025).

Integração com Sistema SOD

API REST

from modules.inference import classify_for_frontend

def classify_endpoint(request):
results = classify_for_frontend(
request.json['image_paths'],
request.json['image_ids'],
request.json['preview_urls'],
"models/best_model.pth"
)
return {"predictions": results}

Tratamento de Erros

  O sistema implementa tratamento robusto:

  • Imagens corrompidas: Fallback com resultado de erro
  • Modelos indisponíveis: Mensagens informativas
  • Configurações ausentes: Valores padrão seguros
  • Isolamento: Erros por modelo não afetam outros

Recomendações de Uso

  • Produção: Sempre utilizar Swin Transformer V2
  • Desenvolvimento: Pipeline unificada permite testes com ambos os modelos
  • Validação: ResNet-18 mantido apenas para comparação e aprendizado
  • Futuro: Arquitetura preparada para novos modelos

Conclusões

  A pipeline unificada atende completamente ao RF01, fornecendo:

  • Flexibilidade: Suporte transparente a múltiplos modelos
  • Simplicidade: Interface consistente e fácil de usar
  • Robustez: Tratamento abrangente de erros
  • Extensibilidade: Fácil adição de novos modelos

  Esta solução garante base sólida para classificação automática no sistema SOD com capacidade de evolução futura.

Integração com Desenvolvimento Geral

  A pipeline unificada representa a culminação técnica desta sprint de IA, conectando o primeiro modelo com o segundo modelo de produção em uma solução coesa. Esta arquitetura facilita a transição para as próximas sprints, onde a integração com o sistema de drones e a validação em campo serão os focos principais do desenvolvimento contínuo do sistema SOD.