Anotação
122 folhas fotografadas em fundo branco, com máscara de lesão e silhueta traçadas por especialista, e severidade de referência medida no software Quant.
CETENE · Amora-preta (Morus nigra) · Ferrugem (Cerotelium fici)
Oito arquiteturas leves de segmentação, 360 execuções de treino, 122 folhas anotadas por especialista. O melhor modelo erra 0,79 ponto percentual — a 0,23 pp do piso da própria anotação — e roda quantizado em 4,41 MB num microcontrolador de campo.
As quatro faixas de decisão
A pesquisa
A severidade — a fração da lâmina tomada por lesão — orienta a decisão de tratar ou descartar. Hoje ela é estimada a olho, com viés conhecido de superestimação, ou em software de mesa que não vai a campo. Perguntamos se um estimador automático cabe num microcontrolador barato sem perder exatidão.
122 folhas fotografadas em fundo branco, com máscara de lesão e silhueta traçadas por especialista, e severidade de referência medida no software Quant.
8 arquiteturas × 3 pré-processamentos × 5 folds × 3 sementes = 360 execuções numa L40S do cluster Apuana (CIn/UFPE), em cerca de 46 h.
Out-of-fold: cada imagem é predita pelo checkpoint do fold dela. Nenhum modelo avalia imagem que viu no treino.
PyTorch → ONNX → TFLite em cinco precisões. Só a inteira completa aciona os kernels ESP-NN do ESP32-P4.
O pré e o pós-processamento em C++ foram conferidos contra a referência em Python nas 122 folhas, com tolerância de zero pixel.
Um M5Stack Tab5 (ESP32-P4, RISC-V) segmenta a lesão e calcula a severidade sem rede e sem servidor.
Resultados
8.784 predições, cada imagem avaliada pelo checkpoint do seu fold. As seis primeiras colocações de 24 configurações.
| # | Configuração | MAE (pp) | Dice | IoU | CCC |
|---|---|---|---|---|---|
| 1 | tinyunet_mbv2__baseline |
||||
| 2 | lraspp_mbv3s__baseline |
||||
| 3 | pdsnet_half__baseline |
||||
| 4 | tinyunet_mbv2__clahe |
||||
| 5 | pdsnet_half__clahe |
||||
| 6 | mobilevit_xxs__clahe |
MAE é o erro absoluto médio da severidade, em pontos percentuais. O piso de ruído da própria anotação é 0,56 pp.
O lraspp_mbv3s é 2º em erro de severidade com o pior Dice do grupo — acerta a porcentagem errando o lugar. Escolher por uma métrica só levaria a decisões opostas, então reportamos as duas juntas.
Duas das cinco arquiteturas exportadas não sobrevivem à quantização inteira completa: uma derruba o interpretador, outra nem converte. É uma restrição real de implantação que a literatura raramente reporta.
Quatro defeitos na reimplementação em C++ deslocavam a severidade sem travar nada e sem alterar métrica alguma do modelo. Só apareceram na comparação pixel a pixel com a referência.
Tiny U-Net com encoder MobileNetV2, inteiro de 8 bits: 4,41 MB, degradação de 0,345 pp — abaixo do ruído da anotação — e todas as operações aceleradas pelo ESP-NN.
Aplicativo
Aplicativo instalável que funciona no navegador do celular. Fotografe a folha em fundo claro, ou escolha da galeria, e ele devolve a área lesionada em porcentagem da lâmina.
Instale na tela de início para abrir sem navegador e usar offline.
Abrir no navegadorEquipe
Pesquisa conduzida no CETENE, em Recife.
Instituição
Centro de Tecnologias Estratégicas do Nordeste, unidade de pesquisa do Ministério da Ciência, Tecnologia e Inovação, em Recife.
O trabalho reúne a agricultura de precisão e a computação embarcada: anotação de especialista, treino em cluster e implantação num dispositivo que vai ao campo.
O aplicativo abre no navegador e traz oito folhas de exemplo do conjunto anotado.