Skip to content

Latest commit

 

History

History
47 lines (46 loc) · 3.56 KB

README.md

File metadata and controls

47 lines (46 loc) · 3.56 KB

Detecção com a Rede YoloV3

Projeto desenvolvido sob o AlexeyAB YOLOv3_Tutorial


Transfer Learning para Detecção de Foco da Dengue

Esse é um projeto de transferência de aprendizado voltado para detecção de água parada ou situações onde o evento pode ocorrer e causar um possível foco de Aedes Aegypti. O intuíto é o reconhecimento de imagens como as apresentadas abaixo, tal como caixas d'aguas abertas, pscinas sujas etc.


Para o treinamento foram seguidos os seguintes passos:

  1. Foi criada uma base de dados com 100 imagens de água parada ou de objetos expostos ao ar livre onde existiria a possibilidade de acontecer de ter água parada.
  2. Com o app LabelME foi feita a marcação (bounding boxes) dos objetos a serem detectados e um arquivo foi exportado na pasta "obj" no formato para a rede YOLO (as imagens com os respectivos documentos de texto)
  3. Optei por utilizar o Google Colab para ter acesso a uma GPU e para facilitar/agilizar o uso da plataforma junto ao Drive compactei a pasta antes de carregar.
  4. Como se trata de apenas uma classe fiz as alterações necessárias nas configurações da rede YoloV3 nos itens seguintes:
    • batch=64
    • subdivisions=16
    • max_batches = 2000 (2000 * qtde_classes)
    • steps=1600,1800 (80% e 90% do max_batches)
    • classes = 1
    • filters = 18 - Os filtros também foram alterados seguindo a orientação (qtde_classe + 5) * 3
    • random = 0 - Como o acesso à GPU é limitado, também alterei o random para 0 para manter um padrão de tamanho para as imagens e assim economizar memória e rodar o treinamento mais rápido.
  5. No drive criei uma pasta yolov3 com os seguintes documentos:
    • uma pasta backup (para salvar o progresso do treinamento pelo fato do Colab ecerrar a conexão depois de certo período de uso do acesso gratuito à GPU)
    • obj.zip - pasta com os arquivos JPG e TXT das imagens
    • obj.data - documento com os caminhos para o modelo de treinamento
    • obj.names (nome das classes a serem treinadas)
    • yolov3_custom.config - configuração adaptada para uma classe
    • generate.py - app para gerar o train.txt

    • ***A pasta backup não foi subida para o Github por conter os mesmos arquivos ja contidos aqui.

    • Depois de tudo setado o próximo passo foi baixar o pesos pré-treinados para as camadas convolucionais e iniciar o treinamento com a configuração customizada.
    • Por fim, após o treinamento, o detector customizado foi executado.
dois potes com água parada pneus velhos