Habr AI→ original

YADRO treinou o tablet KVADRA_T para reconhecer vários objetos em um frame em 20 ms

A YADRO explicou como treinou o tablet KVADRA_T para reconhecer simultaneamente uma pessoa, um documento, texto, códigos QR e códigos de barras em um único…

Processado por IA de Habr AI; editado por Hamidun News
YADRO treinou o tablet KVADRA_T para reconhecer vários objetos em um frame em 20 ms
Fonte: Habr AI. Colagem: Hamidun News.
◐ Ouvir artigo

A YADRO mostrou como resolveu uma tarefa que, para um dispositivo móvel, soa quase como detecção, mas precisa funcionar mais rápido: o tablet KVADRA_T foi ensinado a reconhecer ao mesmo tempo uma pessoa, um documento, texto, QR codes e códigos de barras em um único frame. O modelo multi-label final entregou um F1-score médio de 94% e ficou dentro dos requisitos de velocidade para rodar diretamente no dispositivo.

Por que não multiclass

Na empresa, explicam que a classificação multiclass comum não servia aqui pela própria natureza do problema. Em uma mesma imagem podem aparecer ao mesmo tempo uma pessoa, um passaporte, linhas de texto e um código para escanear, enquanto o esquema clássico tenta escolher apenas uma classe dominante.

Para uma galeria inteligente ou cenários de verificação, isso não basta: o dispositivo precisa entender a composição completa da cena, e não adivinhar o objeto principal. Rodar um modelo separado para cada tipo de objeto também era uma má opção, porque, no tablet, isso consome rapidamente o orçamento de tempo e recursos.

Por isso, a equipe migrou para uma abordagem multi-label, em que cada classe é determinada de forma independente. Mas, mesmo aqui, um esquema simples com uma única head de classificação compartilhada também não funcionou: as classes pertencem a domínios visuais diferentes, e as características compartilhadas começaram a interferir umas nas outras.

Na primeira versão, com MobileNet V3 e uma única head, o modelo mostrava F1-score em torno de 82%. Depois da migração para uma arquitetura multi-head com heads independentes para diferentes tipos de objeto, a métrica média subiu para 94%, ou seja, cerca de 12 pontos percentuais de uma vez.

Como montaram o dataset

A parte mais difícil do projeto acabou não sendo a escolha do backbone, mas os dados. A equipe não tinha um dataset público multi-label pronto com a combinação de classes necessária, então o conjunto foi montado quase do zero a partir de Roboflow, Kaggle e repositórios open source. Em paralelo, foi preciso acompanhar as licenças para que os dados pudessem ser usados no produto.

No fim, a desenvolvedora reuniu e limpou um conjunto de 193 mil imagens, em que foi especialmente difícil preservar o equilíbrio entre classes relacionadas, como documento e texto. Para a rotulagem automática, primeiro testaram detectores SOTA comuns, principalmente modelos da família YOLO, mas a qualidade deles para essa tarefa se mostrou insuficiente.

Depois disso, a equipe mudou para vision-language models e construiu ao redor delas um pipeline de limpeza e complementação de dados. Assim, foi possível não só rotular as imagens, mas também remover duplicatas e depois fechar de forma pontual as lacunas nas estatísticas de combinações raras de rótulos.

  • compararam detectores clássicos e modelos VLM para diferentes classes
  • escolheram Qwen2.5-VL-72B-Instruct como rotulador principal, porque ele entregou cerca de 98% de F1-score nas classes
  • removeram duplicatas via pHash, e verificaram casos ambíguos via SSIM
  • completaram combinações de rótulos que faltavam por meio de filtros de prompt como «há texto, mas não há documento?»

Um problema separado surgiu com a classe texto. Pela natureza da tarefa, o modelo se agarrava facilmente a padrões e linhas parecidos com letras, por isso essa classe precisou ser adicionalmente restringida e balanceada.

Essa abordagem permitiu não apenas reunir um grande dataset, mas torná-lo adequado para um modelo multi-label móvel, em que um erro na distribuição de classes rapidamente vira falsos positivos em imagens reais.

O que os testes mostraram

Depois de uma série de experimentos, a equipe ficou com o MobileNetV3 Large. A resolução do frame de entrada também precisou ser escolhida como um compromisso entre qualidade e velocidade: a variante 1024 deixava o inference pesado demais, então a escolha final foi o formato 640, que preservava métricas próximas, mas acelerava de forma perceptível o processamento.

Os hiperparâmetros foram ajustados com Optuna, enquanto os próprios experimentos e o diagnóstico do treinamento foram conduzidos no ClearML. Isso ajudou a acompanhar distribuições de gradientes, versões de datasets e a qualidade de execuções individuais sem caos manual.

Depois do treinamento, o modelo foi convertido para ONNX e depois para TFLite e RKNN, para funcionar em configurações móveis e com aceleração por hardware. No NPU do tablet KVADRA_T, o inference em 640x640 leva cerca de 20 ms, e o caminho completo de processamento do frame cabe em aproximadamente 30 ms.

Isso é melhor que o limite-alvo de 50 ms que a equipe definiu no projeto. Segundo a desenvolvedora, essa margem de tempo agora pode ser usada na próxima iteração do modelo. A YADRO planeja adicionar a função de classificação multi-label na próxima versão do kvadraOS.

«Pretendo usar os 20 ms de sobra para tornar o modelo mais complexo.»

O que isso significa

A YADRO mostrou algo importante para edge-AI: mesmo em um tablet, dá para alcançar reconhecimento quase em realtime de uma cena complexa se o dataset for montado corretamente, as heads de classificação forem separadas e não se tentar resolver tudo com um único modelo universal.

Para o mercado, este é mais um sinal de que funções úteis de CV serão executadas cada vez mais localmente, e não na nuvem.

ZK
Hamidun News
Notícias de AI sem ruído. Seleção editorial diária de mais de 400 fontes. Produto de Zhemal Khamidun, Head of AI na Alpina Digital.

Quer parar de ler sobre IA e começar a usar?

AI News é um feed curado de notícias de IA. A Hamidun Academy ensina você a usar IA no trabalho.

O que você acha?
Carregando comentários…