Ir para o conteúdo

Aplicativo Android Ultralytics: Detecção de Objetos em Tempo Real com Modelos YOLO

Imagem de visualização do Ultralytics HUB

GitHub Ultralytics espaço LinkedIn Ultralytics espaço Twitter Ultralytics espaço YouTube Ultralytics espaço TikTok Ultralytics espaço Ultralytics BiliBili espaço Discord Ultralytics

Google Play Store 

O Ultralytics Android App é uma ferramenta poderosa que permite executar modelos YOLO diretamente no seu dispositivo Android para detecção de objetos em tempo real. Este aplicativo utiliza TensorFlow Lite para otimização de modelo e vários delegados de hardware para aceleração, permitindo uma detecção de objetos rápida e eficiente.



Assista: Começando com o Aplicativo Ultralytics HUB (IOS e Android)

Quantização e Aceleração

Para alcançar um desempenho em tempo real no seu dispositivo Android, os modelos YOLO são quantizados para precisão FP16 ou INT8 precision. A quantização é um processo que reduz a precisão numérica dos pesos e vieses do modelo, reduzindo assim o tamanho do modelo e a quantidade de computação necessária. Isso resulta em tempos de inferência mais rápidos sem afetar significativamente a precisão do modelo.

Quantização FP16

A quantização FP16 (ou de meia precisão) converte os números de ponto flutuante de 32 bits do modelo em números de ponto flutuante de 16 bits. Isso reduz o tamanho do modelo pela metade e acelera o processo de inferência, mantendo um bom equilíbrio entre precisão e desempenho.

Quantização INT8

A quantização INT8 (ou inteiro de 8 bits) reduz ainda mais o tamanho do modelo e os requisitos de computação, convertendo seus números de ponto flutuante de 32 bits em inteiros de 8 bits. Este método de quantização pode resultar em um aumento significativo na velocidade, mas pode levar a uma ligeira redução na precisão média (mAP) devido à menor precisão numérica.

Redução do mAP em Modelos INT8

A precisão numérica reduzida em modelos INT8 pode levar a alguma perda de informação durante o processo de quantização, o que pode resultar em uma ligeira diminuição no mAP. No entanto, essa compensação é frequentemente aceitável considerando os ganhos substanciais de desempenho oferecidos pela quantização INT8.

Delegados e Variabilidade de Desempenho

Diferentes delegados estão disponíveis em dispositivos Android para acelerar a inferência do modelo. Esses delegados incluem CPU, GPU, Hexagon e NNAPI. O desempenho desses delegados varia dependendo do fornecedor de hardware do dispositivo, da linha de produtos e dos chipsets específicos usados no dispositivo.

  1. CPU: A opção padrão, com desempenho razoável na maioria dos dispositivos.
  2. GPU: Utiliza a GPU do dispositivo para inferência mais rápida. Pode fornecer um aumento de desempenho significativo em dispositivos com GPUs poderosas.
  3. Hexagon: Aproveita o Hexagon DSP da Qualcomm para um processamento mais rápido e eficiente. Esta opção está disponível em dispositivos com processadores Qualcomm Snapdragon.
  4. NNAPI: A API Neural Networks do Android (NNAPI) serve como uma camada de abstração para executar modelos de ML em dispositivos Android. A NNAPI pode utilizar vários aceleradores de hardware, como CPU, GPU e chips de IA dedicados (por exemplo, o Edge TPU do Google ou o Pixel Neural Core).

Aqui está uma tabela mostrando os principais fornecedores, suas linhas de produtos, dispositivos populares e delegados suportados:

Fornecedor Linhas de Produto Dispositivos Populares Delegados Suportados
Qualcomm Snapdragon (por exemplo, série 800) Samsung Galaxy S21, OnePlus 9, Google Pixel 6 CPU, GPU, Hexagon, NNAPI
Samsung Exynos (por exemplo, Exynos 2100) Samsung Galaxy S21 (versão global) CPU, GPU, NNAPI
MediaTek Dimensity (por exemplo, Dimensity 1200) Realme GT, Xiaomi Redmi Note CPU, GPU, NNAPI
HiSilicon Kirin (por exemplo, Kirin 990) Huawei P40 Pro, Huawei Mate 30 Pro CPU, GPU, NNAPI
NVIDIA Tegra (e.g., Tegra X1) NVIDIA Shield TV, Nintendo Switch CPU, GPU, NNAPI

Por favor, note que a lista de dispositivos mencionados não é exaustiva e pode variar dependendo dos chipsets e modelos de dispositivos específicos. Sempre teste seus modelos em seus dispositivos de destino para garantir a compatibilidade e o desempenho ideal.

Tenha em mente que a escolha do delegate pode afetar o desempenho e a compatibilidade do modelo. Por exemplo, alguns modelos podem não funcionar com certos delegates, ou um delegate pode não estar disponível num dispositivo específico. Como tal, é essencial testar o seu modelo e o delegate escolhido nos seus dispositivos de destino para obter os melhores resultados.

Começando com o Aplicativo Ultralytics Android

Para começar a usar o aplicativo Ultralytics Android, siga estes passos:

  1. Baixe o aplicativo Ultralytics na Google Play Store.

  2. Inicie o aplicativo no seu dispositivo Android e faça login com sua conta Ultralytics. Se você ainda não tem uma conta, crie uma em https://hub.ultralytics.com/.

  3. Depois de iniciar a sessão, você verá uma lista de seus modelos YOLO treinados. Selecione um modelo para usar na detecção de objetos.

  4. Conceda à aplicação permissão para aceder à câmara do seu dispositivo.

  5. Aponte a câmera do seu dispositivo para os objetos que deseja detectar. O aplicativo exibirá caixas delimitadoras e rótulos de classe em tempo real à medida que detecta objetos.

  6. Explore as configurações do aplicativo para ajustar o limite de detecção, ativar ou desativar classes de objetos específicos e muito mais.

Com o aplicativo Ultralytics Android, você agora tem o poder da detecção de objetos em tempo real usando modelos YOLO na ponta dos dedos. Aproveite para explorar os recursos do aplicativo e otimizar suas configurações para atender aos seus casos de uso específicos.



📅 Criado há 1 ano ✏️ Atualizado há 3 meses

Comentários