Implante o Ultralytics YOLO11 facilmente usando a integração MNN
Saiba como exportar e implantar modelos Ultralytics YOLO11 com a integração MNN para realizar inferências rápidas em plataformas móveis, embarcadas e de baixo consumo.
Abirami Vina9 min de leitura
Atualmente, as inovações em IA já não se limitam a ambientes de servidores remotos. As soluções de IA estão a ser integradas em dispositivos de edge, como sensores e smartphones. Graças a esta mudança tecnológica, os dados podem agora ser processados diretamente no local onde são gerados, permitindo respostas mais rápidas, maior privacidade e menor dependência de uma ligação constante à cloud.
Como resultado, a IA de edge está a ganhar popularidade em muitos setores. Prevê-se que o mercado de software de IA de edge atinja 8,88 mil milhões de dólares até 2031, à medida que mais sistemas avançam para um processamento mais rápido e local.
Em particular, a visão computacional, um ramo da IA que se dedica à compreensão de imagens e vídeos, está a ser rapidamente adotada em dispositivos de edge. Desde a contagem de alimentos durante a embalagem até à deteção de peões por veículos, a visão computacional permite inúmeras aplicações práticas em diferentes setores.
Isto é possível graças aos modelos de visão computacional. Por exemplo, o Ultralytics YOLO11 é um modelo que suporta várias tarefas de IA visual, como deteção de objetos, segmentação de instâncias, estimativa de pose e rastreio de objetos. Foi concebido para ser rápido e eficiente e tem um bom desempenho em dispositivos com recursos de hardware limitados.

Fig. 1. Deteção e rastreio de alimentos embalados usando o Ultralytics YOLO11.
Além de ser adequado para implementação em dispositivos de edge, o YOLO11 pode ser exportado para vários formatos apropriados a diferentes ambientes de hardware através das várias integrações compatíveis com a Ultralytics.
Uma das opções mais eficientes é o MNN (Mobile Neural Network), um mecanismo de inferência leve concebido para dispositivos com poucos recursos. Exportar o Ultralytics YOLO11 para MNN permite executá-lo diretamente em telemóveis, sistemas incorporados e outras plataformas de edge, onde o processamento rápido no dispositivo é essencial.
Neste artigo, vamos explorar como funciona a integração com MNN, destacar casos de uso comuns e explicar como começar a executar inferências com um modelo Ultralytics YOLO11 exportado.
Visão geral do MNN: uma estrutura de aprendizagem profunda#
Executar modelos de visão computacional em dispositivos mais pequenos, como telemóveis, sensores industriais e sistemas portáteis, nem sempre é simples. Estes dispositivos têm frequentemente memória limitada, processadores mais lentos e limites rigorosos de consumo de energia.
O Mobile Neural Network, ou MNN, é um mecanismo de inferência leve e de alto desempenho, desenvolvido pela Alibaba para executar modelos de IA de forma eficiente em hardware com poucos recursos, mantendo o desempenho em tempo real. O MNN é compatível com várias plataformas, incluindo Android, iOS e Linux, e funciona em diversos tipos de hardware, como unidades centrais de processamento (CPUs) e unidades de processamento gráfico (GPUs).

Fig. 2. Visão geral da estrutura MNN (Fonte).
A integração com MNN suportada pela Ultralytics permite exportar facilmente modelos YOLO11 para o formato MNN. Em termos simples, isto significa que os modelos podem ser convertidos do formato PyTorch nativo para MNN.
Depois da conversão, podem ser implementados em dispositivos compatíveis com a estrutura MNN para uma inferência eficiente no dispositivo. Uma vantagem importante do formato MNN é simplificar a implementação do Ultralytics YOLO11 em situações em que o tamanho, a velocidade e a eficiência dos recursos são fundamentais.
Principais funcionalidades do backend de inferência MNN#
Antes de explicarmos como usar a integração MNN, vamos ver o que torna a estrutura MNN uma ótima opção para executar modelos de IA em dispositivos reais. Foi concebida para lidar com as restrições específicas dos ambientes de edge e, ainda assim, oferecer um desempenho rápido e fiável.
Curiosamente, a Alibaba utiliza internamente o MNN em mais de 30 aplicações, incluindo Taobao, Tmall, Youku, DingTalk e Xianyu, numa vasta gama de cenários, como vídeo em direto, conteúdos curtos, pesquisa de imagens e verificações de segurança no dispositivo. É compatível com implementações em grande escala e executa milhões de inferências por dia em ambientes de produção.
Estas são algumas das principais funcionalidades da estrutura MNN:
- Seleção automática de backend: O MNN pode escolher automaticamente o backend de execução mais adequado, como CPU ou GPU, com base no hardware em que está a funcionar.
- Execução multithread: Suporta multithreading, permitindo tirar o máximo partido dos processadores multicore para acelerar a inferência.
- Compatibilidade com quantização de modelos: permite reduzir significativamente o tamanho dos modelos com quantização FP16 ou INT8, ajudando a melhorar a velocidade de inferência e a usar menos memória.
- Leve e rápido: O MNN tem uma pegada muito reduzida: a biblioteca principal ocupa cerca de 400 KB no Android e aproximadamente 5 MB no iOS, o que o torna adequado para dispositivos móveis e incorporados.
Como funciona a integração MNN#
Agora, vamos ver como exportar modelos Ultralytics YOLO11 para o formato MNN.
O primeiro passo é instalar o pacote Python da Ultralytics, que disponibiliza tudo o que é necessário para exportar modelos YOLO11 para o formato MNN. Podes fazê-lo executando pip install ultralytics no terminal ou na linha de comandos. Se estiveres a usar um Jupyter Notebook ou o Google Colab, acrescenta um ponto de exclamação antes do comando.
Se tiveres algum problema durante a instalação, consulta o guia de problemas comuns para obteres sugestões de resolução.
Depois de configurares o ambiente, podes carregar um modelo YOLO11 pré-treinado, como "yolo11n.pt", e exportá-lo para o formato MNN, conforme mostrado no trecho de código abaixo. Se tiveres treinado o teu próprio modelo YOLO11 personalizado, basta substituíres o nome do ficheiro pelo caminho do teu modelo para o exportar.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="mnn")Depois de converteres o modelo para MNN, podes usá-lo em diferentes plataformas móveis e incorporadas, conforme as necessidades da tua aplicação.
Por exemplo, imagina que queres testar o modelo exportado num vídeo de trânsito. Nesse caso, podes carregar o modelo Ultralytics YOLO11 no formato MNN para detetar objetos como veículos, peões e sinais de trânsito diretamente no dispositivo, tal como mostra o exemplo abaixo.
mnn_model = YOLO("yolo11n.mnn")
results = mnn_model("https://videos.pexels.com/video-files/27783817/12223745_1920_1080_24fps.mp4", save=True)Quando a inferência terminar, o vídeo de saída com os objetos detetados será guardado automaticamente na pasta 'runs/detect/predict'. Além disso, se quiseres executar inferências diretamente com o pacote Python MNN, consulta a documentação oficial da Ultralytics para MNN para obteres mais detalhes e exemplos.

Fig. 3. Análise do trânsito com um modelo Ultralytics YOLO11 exportado para o formato MNN. Imagem do autor.
Casos de utilização da implementação de modelos de IA de edge com o Ultralytics YOLO11 e MNN#
A implementação do Ultralytics YOLO11 com MNN permite executar rapidamente e de forma eficiente tarefas de visão computacional, como a deteção de objetos, em ambientes onde o processamento na cloud não é prático ou possível. Vamos ver como esta integração pode ser especialmente útil em situações reais.
IA de edge móvel para identificar doenças em plantas#
As aplicações de identificação de doenças em plantas que usam classificação de imagens estão a ganhar popularidade entre jardineiros, investigadores e entusiastas da natureza. Com apenas uma fotografia, os utilizadores podem identificar rapidamente os primeiros sinais de doença, como manchas ou descoloração nas folhas. Como estas aplicações são frequentemente usadas no exterior, onde o acesso à Internet pode ser limitado ou inexistente, depender do processamento na cloud pode não ser fiável.
Depois de treinar com um conjunto de dados como o PlantDoc, um modelo Ultralytics YOLO11 pode ser exportado para o formato MNN e executado diretamente em dispositivos móveis. O modelo pode então classificar espécies de plantas e detetar sintomas visíveis de doenças localmente, sem enviar dados para um servidor.

Fig. 4. Exemplo de utilização do YOLO11 para detetar sinais de ferrugem (uma doença das plantas) numa folha (Fonte).
Inferências eficientes no dispositivo na indústria transformadora#
O acompanhamento preciso das embalagens é essencial nas linhas de produção movimentadas das instalações de produção. O Ultralytics YOLO11 pode ser usado para acompanhar e contar cada artigo à medida que passa por pontos de controlo importantes, atualizando as contagens em tempo real e assinalando quaisquer discrepâncias. Isto ajuda a reduzir envios perdidos ou não contabilizados e contribui para operações mais fluidas e fiáveis.

Fig. 5. Acompanhamento e contagem de embalagens com o YOLO11 (Fonte).
A integração MNN pode ter um impacto especialmente significativo neste contexto. Depois de exportado para o formato MNN, o modelo Ultralytics YOLO11 pode ser executado diretamente em dispositivos compactos e de baixo consumo instalados ao longo do transportador.
Como todo o processamento ocorre localmente, o sistema pode fornecer feedback imediato e não precisa de ligação à Internet. Isto garante um desempenho rápido e fiável no chão de fábrica, mantendo a produção eficiente, com elevada precisão e controlo.
Vantagens de exportar o Ultralytics YOLO11 para o formato de modelo MNN#
Eis algumas das principais vantagens da integração MNN disponibilizada pela Ultralytics:
- Tempos de resposta mais rápidos: Como a inferência é executada no dispositivo, as previsões são feitas em tempo real e com latência mínima.
- Maior privacidade dos dados: os dados permanecem no dispositivo, reduzindo a necessidade de enviar imagens ou vídeos confidenciais para a cloud.
- Código aberto e manutenção ativa: Com o apoio da Alibaba e de uma comunidade ativa, o MNN é fiável e recebe atualizações regulares com melhorias de desempenho.
Fatores a considerar ao usar a estrutura MNN#
Antes de escolheres MNN como estrutura de implementação, também é importante avaliar se corresponde às necessidades do teu projeto, aos ambientes de implementação pretendidos e às limitações técnicas. Eis alguns fatores importantes a considerar:
- Compatibilidade contínua: As atualizações da estrutura ou as alterações às plataformas de destino podem exigir novos testes ou ajustes para manter tudo a funcionar corretamente.
- Menos ferramentas de depuração: Em comparação com estruturas maiores, o MNN oferece ferramentas mais limitadas para depurar e inspecionar o comportamento dos modelos, o que pode dificultar a resolução de problemas.
- O desempenho depende do hardware: A velocidade e a eficiência do modelo variam conforme o dispositivo. Testa o hardware de destino para confirmares que cumpre os teus objetivos de desempenho.
Principais conclusões#
O suporte da Ultralytics à integração MNN facilita a exportação de modelos YOLO11 para utilização em dispositivos móveis e incorporados. É uma opção prática para aplicações que exigem deteção rápida e fiável sem depender do acesso à cloud ou de uma ligação constante.
Esta configuração ajuda a simplificar a implementação, mantendo o desempenho e reduzindo as necessidades de recursos. Quer estejas a criar sistemas domésticos inteligentes, ferramentas para trabalho no terreno ou dispositivos industriais compactos, exportar o Ultralytics YOLO11 para MNN oferece uma forma flexível e eficiente de executar tarefas de visão computacional diretamente em dispositivos de edge.
Junta-te à nossa comunidade em crescimento! Explora o nosso repositório do GitHub para aprofundares os teus conhecimentos sobre IA. Queres começar os teus projetos de visão computacional? Consulta as nossas opções de licenciamento. Descobre mais sobre IA na área da saúde e visão computacional no retalho nas nossas páginas de soluções!
Escrito por
Comentários
Faça uma pergunta, compartilhe seus resultados ou ajude alguém.










