Exportação de modelos Ultralytics YOLO11 para o formato de modelo NCNN

Abirami Vina

5 min. de leitura

18 de junho de 2025

Exportar modelos Ultralytics YOLO11 para o formato de modelo NCNN para executar inferências de IA eficientes e de baixa latência em dispositivos de ponta com potência e recursos de computação limitados.

As soluções de IA estão a tornar-se mais comuns, mesmo em sectores de alto risco como a gestão de catástrofes, a gestão de resíduos e o combate a incêndios. À medida que a adoção continua a crescer, os modelos de IA estão a ser implementados em ambientes mais diversos - não apenas em servidores ou na nuvem, mas diretamente em dispositivos que operam no terreno.

Por exemplo, drones e equipamentos com componentes de ponta que são alimentados por pequenos processadores podem desempenhar um papel crucial em zonas de catástrofe. Equipados com câmaras térmicas, estes dispositivos podem recolher e analisar dados no local para localizar pessoas presas debaixo de escombros. Isto é possível graças à visão computacional, um ramo da inteligência artificial que interpreta informações visuais de imagens e vídeos.

No entanto, a implementação de modelos de IA de visão em dispositivos periféricos não é tão simples como pode parecer. Os modelos de IA precisam de ser optimizados para serem executados de forma eficiente em hardware com poder de computação e memória limitados. É por isso que estruturas de IA como a NCNN são essenciais. Ajudam a converter e otimizar modelos para desempenho em tempo real em dispositivos de baixo consumo de energia sem sacrificar a precisão.

Em particular, os modelos Ultralytics YOLO, como o Ultralytics YOLO11, podem ser facilmente exportados para o formato de modelo NCNN utilizando a integração NCNN suportada pelo Ultralytics. A conversão do YOLO11 para o formato de modelo NCNN permite que o modelo seja executado mais rapidamente, utilize menos memória e funcione sem problemas em diferentes dispositivos sem perder a precisão.

Neste artigo, vamos explorar a integração NCNN suportada pelo Ultralytics e explicar como pode exportar o seu modelo YOLO11 para o formato de modelo NCNN. Vamos começar!

Uma visão geral do NCNN: Uma estrutura de rede neural leve

NCNN é uma estrutura de inferência de rede neural de código aberto desenvolvida pela Tencent. Foi especificamente concebido para ambientes móveis e de ponta, permitindo uma inferência de elevado desempenho com uma pegada mínima. Isto torna-o ideal para ser implementado em dispositivos com recursos limitados, como smartphones, drones e dispositivos IoT (Internet das Coisas).

A estrutura NCNN ganhou popularidade na comunidade de IA e aprendizagem profunda devido à sua eficiência, portabilidade e otimização para CPUs (Unidades Centrais de Processamento) móveis. Permite aos programadores executar modelos de redes neurais em dispositivos económicos com memória e capacidade de processamento limitadas. Concebido para ser simples e flexível, o NCNN suporta uma vasta gama de modelos de visão computacional e funciona em várias plataformas, incluindo Android, Linux, iOS e macOS.

Figura 1. Os modelos em formato NCNN podem ser implementados em muitas plataformas.

Principais caraterísticas da otimização do desempenho do NCNN

Eis algumas das principais caraterísticas que fazem do NCNN uma estrutura de inferência de redes neuronais impactante e amplamente utilizada:

  • Tempo de execução leve e independente de hardware: A estrutura NCNN é optimizada para executar modelos em CPUs padrão, e não requer hardware especializado como GPUs (Graphics Processing Units) ou NPUs (Neural Processing Units).
  • Quantização do modelo: Para aplicações em que a memória e a velocidade são críticas, o NCNN suporta métodos de quantização que reduzem o tamanho do modelo e melhoram o tempo de inferência. Ajuda a executar modelos de IA sem problemas em dispositivos móveis e incorporados.
  • Código aberto e acessível: Como uma estrutura de código aberto, o NCNN está disponível gratuitamente para qualquer pessoa usar, modificar e melhorar. Isto incentiva a inovação e a adoção generalizada numa variedade de casos de utilização.
  • Desenvolvimento ativo e comunidade: O NCNN é mantido ativamente no GitHub pela Tencent e por uma crescente comunidade de programadores, com actualizações regulares e melhorias de compatibilidade de modelos.

Exportar YOLO11 para o formato de modelo NCNN: Um guia rápido

Agora que já falámos sobre o que é o NCNN, vamos analisar mais detalhadamente como exportar modelos YOLO11 para o formato NCNN.

Passo 1: Instalar o pacote Ultralytics Python

Antes de exportar o modelo, o primeiro passo é instalar o pacote Ultralytics Python usando o instalador de pacotes, pip. Isso pode ser feito executando "pip install ultralytics" no terminal ou no prompt de comando. Se estiver a trabalhar num Jupyter Notebook ou no Google Colab, adicione um ponto de exclamação antes do comando, desta forma: "!pip install ultralytics".

O pacote Ultralytics fornece ferramentas para treinar, testar, ajustar e exportar modelos de visão de IA para uma variedade de tarefas de visão computacional. Se tiver algum problema durante a instalação ou durante a exportação de um modelo, a documentação oficial do Ultralytics e o guia de problemas comuns são excelentes recursos para a resolução de problemas.

Etapa 2: Exportação do Ultralytics YOLO11

Depois de instalar o pacote Ultralytics, pode carregar o seu modelo YOLO11 e exportá-lo para o formato NCNN. O exemplo abaixo utiliza um modelo pré-treinado ("yolo11n.pt") e exporta-o no formato NCNN, guardando a saída numa pasta chamada "/yolo11n_ncnn_model". 

from ultralytics import YOLO

model = YOLO("yolo11n.pt")

model.export(format="ncnn")  

O modelo YOLO11 exportado pode então ser implantado em vários dispositivos leves, como smartphones, sistemas incorporados ou plataformas IoT. O processo de implantação também é muito simples. 

Por exemplo, considere o trecho de código abaixo, que mostra como carregar o modelo exportado e executar a inferência. A inferência refere-se ao processo de usar um modelo treinado para fazer previsões em dados novos e não vistos. Neste exemplo, o modelo é testado numa imagem de um homem a andar de bicicleta, obtida a partir de um URL disponível publicamente.

ncnn_model = YOLO("./yolo11n_ncnn_model")

results = ncnn_model("https://images.pexels.com/photos/19431209/pexels-photo-19431209/free-photo-of-a-man-riding-a-bike-on-a-road.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2.jpg", save=True)

Depois de executar o código, encontrará a imagem de saída na pasta "runs/detect/predict".

Fig. 2. Deteção de objectos utilizando um modelo YOLO11 exportado no formato NCNN. Imagem do autor.

Porquê escolher a deteção em tempo real com NCNN

À medida que explora as várias integrações que o Ultralytics suporta, poderá reparar que existem várias opções de exportação disponíveis. Então, quando é que deve escolher o formato NCNN?

O formato de exportação NCNN é uma escolha fiável quando é necessário implementar modelos YOLO11 em dispositivos com recursos limitados. É especialmente útil para aplicações em tempo real que são executadas diretamente no dispositivo, como dispositivos de ponta, sem necessidade de uma ligação à nuvem. Isto significa que o modelo pode lidar com tarefas como a deteção de objectos diretamente no local.

Eis alguns cenários comuns em que o NCNN é uma excelente opção:

  • Implementação móvel: O formato NCNN está optimizado para Android e iOS, facilitando a integração de modelos em aplicações móveis para uma inferência rápida e no dispositivo com latência mínima.
  • Sistemas incorporados e dispositivos IoT: Se estiver a implementar em dispositivos como o Raspberry Pi ou o NVIDIA Jetson, a exportação para NCNN pode ajudar a aumentar o desempenho e a capacidade de resposta.
  • Implantação em desktops e servidores: Embora o NCNN seja ótimo para dispositivos de baixo consumo, também suporta Linux, Windows e macOS para ambientes de desktop e servidor. Isto dá aos programadores opções flexíveis para a implementação.
Fig. 3. Opções para a implementação do modelo YOLO11 com NCNN. Imagem do autor.

Casos de utilização da implementação do modelo YOLO11 com NCNN

De seguida, vamos analisar alguns casos de utilização práticos em que a exportação de modelos YOLO11 para NCNN pode fazer uma verdadeira diferença.

Capacetes Vision AI para combate a incêndios

Os capacetes de segurança equipados com câmaras e microcomputadores incorporados podem ser utilizados em áreas como a construção e o combate a incêndios para melhorar a segurança e a sensibilização. Os modelos de IA de visão em tempo real, como o YOLO11, podem ser executados nestes dispositivos para detetar vários tipos de objectos e equipamentos. Por exemplo, estes capacetes podem ajudar os bombeiros a detetar pessoas, obstáculos ou perigos em condições de baixa visibilidade.

No entanto, a execução de modelos de tamanho normal diretamente em dispositivos portáteis pode causar um desempenho lento e esgotar rapidamente a bateria. Neste caso, a utilização da integração NCNN é uma escolha inteligente. Permite uma inferência de baixa latência e eficiente em termos energéticos. 

Classificação de resíduos e contentores inteligentes

Do mesmo modo, os caixotes do lixo inteligentes podem ser integrados com câmaras e processadores de IA de ponta compactos para identificar e classificar os materiais à medida que são eliminados. Os modelos de IA de visão, como o YOLO11, podem ser treinados à medida para detetar diferentes tipos de resíduos, como papel, plástico, borracha, etc.

Uma vez identificados os resíduos, estes podem ser automaticamente selecionados em compartimentos separados com base na sua reutilização. Ao utilizar IA de ponta juntamente com modelos YOLO11 exportados em formato NCNN, estes contentores podem processar dados localmente - sem necessitar de uma ligação à Internet. Isto permite-lhes funcionar de forma autónoma e tomar decisões de triagem em tempo real com um atraso mínimo.

Fig. 4. Deteção de resíduos de plástico com YOLO11.

Monitorização do gado com recurso a drones e visão por computador

Por vezes, as zonas agrícolas em locais remotos não têm acesso a ligações estáveis à Internet ou mesmo a energia consistente, o que limita a sua capacidade de executar aplicações de IA em linha. Nesses casos, os dispositivos periféricos e os drones podem ser utilizados para realizar uma série de tarefas. 

Um bom exemplo é a monitorização de animais de criação, como gado, ovelhas e aves. Isto pode ser feito utilizando modelos de IA de visão como o YOLO11, que pode ser utilizado para seguir o movimento dos animais, detetar sinais de lesões, doenças ou comportamentos anormais e alertar os agricultores quando os animais desaparecem. A integração do NCNN também permite executar e processar estes dados diretamente em dispositivos periféricos, o que o torna ideal para a análise de imagens e vídeos em explorações agrícolas em áreas remotas ou fora da rede.

Fig. 5. Um olhar sobre a utilização do YOLO11 para monitorizar o gado.

Principais conclusões

A exportação de modelos YOLO11 usando a integração NCNN suportada pelo Ultralytics é uma maneira simples de levar a IA de visão a ambientes de baixo consumo de energia. Quer se trate de drones em zonas de desastre, caixotes de lixo inteligentes ou monitorização de gado em quintas remotas, o YOLO e o NCNN permitem inferências de IA em tempo real que são rápidas, eficientes e portáteis. Esta abordagem ajuda a tornar os sistemas de IA mais acessíveis e fiáveis quando é mais importante.

Quer saber mais sobre IA? Explore o nosso repositório GitHub, ligue-se à nossa comunidade e verifique as nossas opções de licenciamento para iniciar o seu projeto de visão computacional. Descubra como inovações como a IA no retalho e a visão computacional nos cuidados de saúde estão a moldar o futuro nas nossas páginas de soluções.

Vamos construir juntos o futuro
da IA!

Comece a sua viagem com o futuro da aprendizagem automática

Comece gratuitamente
Ligação copiada para a área de transferência