Detecção e rastreamento de objetos

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Com a API de rastreamento e detecção de objetos no dispositivo do Kit de ML, é possível detectar e rastrear objetos em uma imagem ou feed de câmera em tempo real.

Se preferir, classifique os objetos detectados usando o classificador abrangente na API ou seu próprio modelo personalizado de classificação de imagens. Consulte Como usar um modelo personalizado do TensorFlow Lite para mais informações.

Como a detecção e o rastreamento de objetos acontecem no dispositivo, ela funciona bem como o front-end do pipeline de pesquisa visual. Depois de detectar e filtrar objetos, é possível transmiti-los para um back-end na nuvem, como o Cloud Vision Product Search.

iOS Android

Principais recursos

  • Detecção e rastreamento rápidos de objetos Detecte objetos e veja os locais deles na imagem. Rastreie objetos em frames de imagem sucessivos.
  • Modelo otimizado no dispositivo O modelo de rastreamento e detecção de objetos é otimizado para dispositivos móveis e destina-se ao uso em aplicativos em tempo real, mesmo em dispositivos mais simples.
  • Detecção de objetos em destaque Determine automaticamente o objeto mais proeminente em uma imagem.
  • Classificação grosseira: classifique objetos em categorias amplas, que podem ser usadas para filtrar objetos em que você não está interessado. As seguintes categorias são compatíveis: artigos para o lar, artigos de moda, alimentos, plantas e lugares.
  • Classificação com um modelo personalizado: use seu próprio modelo personalizado de classificação de imagens para identificar ou filtrar categorias de objetos específicas. Deixe seu modelo personalizado com melhor desempenho deixando de fora o plano de fundo da imagem.

Resultados de exemplo

Como rastrear o objeto mais proeminente nas imagens

O exemplo abaixo mostra os dados de rastreamento de três frames sucessivos com o classificador grosseiro padrão fornecido pelo Kit de ML.

ID de acompanhamento 0
Limites (95, 45), (496, 45), (496, 240), (95, 240)
Categoria LUGAR
Confiança de classificação 0,9296875
ID de acompanhamento 0
Limites (84, 46), (478, 46), (478, 247), (84, 247)
Categoria LUGAR
Confiança de classificação 0,8710938
ID de acompanhamento 0
Limites (53, 45), (519, 45), (519, 240), (53, 240)
Categoria LUGAR
Confiança de classificação 0,8828125

Foto: Christian Ferrer [CC BY-SA 4.0]

Vários objetos em uma imagem estática

No exemplo abaixo, mostramos os dados dos quatro objetos detectados na imagem com o classificador grosseiro padrão fornecido pelo Kit de ML.

Objeto 0
Limites (1, 97), (332, 97), (332, 332), (1, 332)
Categoria RÁPIDO
Confiança de classificação 0,95703125
Objeto 1
Limites (186, 80), (337, 80), (337, 226), (186, 226)
Categoria RÁPIDO
Confiança de classificação 0,84375
Objeto 2
Limites (296, 80), (472, 80), (472, 388), (296, 388)
Categoria RÁPIDO
Confiança de classificação 0,94921875
Objeto 3
Limites (439, 83), (615, 83), (615, 306), (439, 306)
Categoria RÁPIDO
Confiança de classificação 0,9375

Como usar um modelo personalizado do TensorFlow Lite

O classificador coeso padrão foi criado para cinco categorias, fornecendo informações limitadas sobre os objetos detectados. Talvez seja necessário um modelo de classificador mais especializado que cubra um domínio mais restrito de conceitos. Por exemplo, um modelo para distinguir entre espécies de flores ou tipos de alimento.

Essa API permite adaptar-se a um caso de uso específico ao oferecer suporte a modelos de classificação de imagem personalizados de várias fontes. Consulte Modelos personalizados com kit de ML para saber mais. Os modelos personalizados podem ser agrupados com seu app ou transferidos por download dinamicamente da nuvem usando o serviço de implantação de modelo do Firebase Machine Learning.

iOS Android

Pré-processamento de imagens de entrada

Se necessário, a detecção e o rastreamento de objetos usam escalonamento e alongamento bidimensionais de imagem para ajustar o tamanho e a proporção da imagem de entrada de modo que se ajustem aos requisitos do modelo subjacente.