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

As soluções de IA estão se tornando cada vez mais comuns, mesmo em setores de alto risco, como gestão de desastres, gestão de resíduos e combate a incêndios. À medida que a adoção continua a crescer, os modelos de IA estão sendo implantados em ambientes mais diversos - não apenas em servidores ou na nuvem, mas diretamente em dispositivos operando em campo.
Por exemplo, drones e equipamentos com componentes de borda alimentados por pequenos processadores podem desempenhar um papel crucial em zonas de desastre. Equipados com câmeras térmicas, esses dispositivos podem coletar e analisar dados no local para localizar pessoas presas sob escombros. Isso é possível por meio da visão computacional, um ramo da inteligência artificial que interpreta informações visuais a partir de imagens e vídeos.
No entanto, implantar modelos de IA de visão em dispositivos de borda não é tão simples quanto parece. Os modelos de IA precisam ser otimizados para funcionar com eficiência em hardware com poder de computação e memória limitados. É por isso que frameworks de IA como o NCNN são essenciais. Eles ajudam a converter e otimizar modelos para desempenho em tempo real em dispositivos de baixo consumo 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 usando a integração NCNN suportada pela Ultralytics. Converter YOLO11 para o formato de modelo NCNN permite que o modelo seja executado mais rapidamente, use menos memória e funcione perfeitamente em diferentes dispositivos sem perder a precisão.
Neste artigo, exploraremos a integração NCNN suportada pela Ultralytics e veremos como você pode exportar seu modelo YOLO11 para o formato de modelo NCNN. Vamos começar!
Link to this sectionUma visão geral do NCNN: um framework de rede neural leve#
O NCNN é um framework de inferência de rede neural de código aberto desenvolvido pela Tencent. Ele foi projetado especificamente para ambientes móveis e de borda, permitindo inferência de alto desempenho com uma ocupação mínima de recursos. Isso o torna ideal para implantação em dispositivos com recursos limitados, como smartphones, drones e dispositivos IoT (Internet das Coisas).
O framework NCNN ganhou popularidade na comunidade de IA e aprendizado profundo devido à sua eficiência, portabilidade e otimização para CPUs (Unidades de Processamento Central) móveis. Ele permite que desenvolvedores executem modelos de rede neural em dispositivos acessíveis com memória e poder de processamento limitados. Projetado para ser simples e flexível, o NCNN suporta uma ampla gama de modelos de visão computacional e é executado em várias plataformas, incluindo Android, Linux, iOS e macOS.

Fig 1. Modelos no formato NCNN podem ser implantados em diversas plataformas.
Link to this sectionPrincipais recursos de otimização de desempenho do NCNN#
Aqui estão alguns dos principais recursos que tornam o NCNN um framework de inferência de rede neural impactante e amplamente utilizado:
- Runtime leve e independente de hardware: O framework NCNN é otimizado para executar modelos em CPUs padrão e não requer hardware especializado como GPUs (Unidades de Processamento Gráfico) ou NPUs (Unidades de Processamento Neural).
- Quantização de modelo: Para aplicações onde memória e 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. Isso ajuda a executar modelos de IA suavemente em dispositivos móveis e embarcados.
- Código aberto e acessível: Como um framework de código aberto, o NCNN está disponível gratuitamente para qualquer pessoa usar, modificar e melhorar. Isso incentiva a inovação e a ampla adoção em uma variedade de casos de uso.
- Desenvolvimento ativo e comunidade: O NCNN é mantido ativamente no GitHub pela Tencent e por uma comunidade crescente de desenvolvedores, com atualizações regulares e melhorias na compatibilidade de modelos.
Link to this sectionExportando YOLO11 para o formato de modelo NCNN: um guia rápido#
Agora que discutimos o que é o NCNN, vamos ver mais de perto como exportar modelos YOLO11 para o formato NCNN.
Link to this sectionPasso 1: Instale o pacote Python da Ultralytics#
Antes de exportar o modelo, o primeiro passo é instalar o pacote Python da Ultralytics usando o instalador de pacotes pip. Isso pode ser feito executando "pip install ultralytics" no seu terminal ou prompt de comando. Se você estiver trabalhando em um Jupyter Notebook ou Google Colab, adicione um ponto de exclamação antes do comando, assim: "!pip install ultralytics".
O pacote Ultralytics fornece ferramentas para treinar, testar, ajustar e exportar modelos de IA de visão para uma variedade de tarefas de visão computacional. Se você encontrar problemas durante a instalação ou ao exportar um modelo, a documentação oficial da Ultralytics e o guia de Problemas Comuns são ótimos recursos para solução de problemas.
Link to this sectionPasso 2: Exportando o Ultralytics YOLO11#
Após instalar o pacote Ultralytics, você pode carregar seu modelo YOLO11 e exportá-lo para o formato NCNN. O exemplo abaixo usa um modelo pré-treinado ("yolo11n.pt") e o exporta no formato NCNN, salvando a saída em uma 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 embarcados ou plataformas IoT. O processo de implantação também é muito simplificado.
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 em uma imagem de um homem andando de bicicleta, obtida de uma 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)Após executar o código, você encontrará a imagem de saída na pasta "runs/detect/predict".

Fig 2. Detectando objetos usando um modelo YOLO11 exportado no formato NCNN. Imagem do autor.
Link to this sectionPor que escolher a detecção em tempo real com o NCNN#
À medida que você explora as várias integrações suportadas pela Ultralytics, você pode notar que existem várias opções de exportação disponíveis. Então, quando você deve escolher o formato NCNN?
O formato de exportação NCNN é uma escolha confiável quando você precisa implantar modelos YOLO11 em dispositivos com recursos limitados. É especialmente útil para aplicações em tempo real que rodam diretamente no dispositivo, como dispositivos de borda, sem precisar de uma conexão com a nuvem. Isso significa que o modelo pode lidar com tarefas como detecção de objetos diretamente no local.
Aqui estão alguns cenários comuns onde o NCNN se encaixa perfeitamente:
-
Implantação móvel: O formato NCNN é otimizado para Android e iOS, facilitando a integração de modelos em aplicativos móveis para inferência rápida no dispositivo com latência mínima.
-
Sistemas embarcados e dispositivos IoT: Se você estiver implantando em dispositivos como Raspberry Pi ou NVIDIA Jetson, exportar para NCNN pode ajudar a aumentar o desempenho e a capacidade de resposta.
-
Implantação em desktop e servidor: Embora o NCNN seja ótimo para dispositivos de baixo consumo, ele também suporta Linux, Windows e macOS para ambientes de desktop e servidor. Isso oferece aos desenvolvedores opções flexíveis para implantação.

Fig 3. Opções para implantação de modelo YOLO11 com NCNN. Imagem do autor.
Link to this sectionCasos de uso da implantação de modelo YOLO11 com NCNN#
A seguir, vamos mergulhar em alguns casos de uso práticos onde exportar modelos YOLO11 para NCNN pode fazer uma diferença real.
Link to this sectionCapacetes de IA de visão para combate a incêndios#
Capacetes de segurança equipados com câmeras e microcomputadores embarcados podem ser usados em áreas como construção e combate a incêndios para melhorar a segurança e a consciência situacional. Modelos de IA de visão em tempo real, como o YOLO11, podem ser executados nesses dispositivos para detectar vários tipos de objetos e equipamentos. Por exemplo, tais capacetes podem ajudar bombeiros a detectar pessoas, obstáculos ou riscos em condições de baixa visibilidade.
No entanto, executar modelos de tamanho completo diretamente em dispositivos vestíveis pode causar um desempenho lento e drenar a bateria rapidamente. Nesse caso, usar a integração NCNN é uma escolha inteligente. Ela permite uma inferência de baixa latência e eficiente em termos energéticos.
Link to this sectionClassificação de resíduos e lixeiras inteligentes#
Da mesma forma, lixeiras inteligentes podem ser integradas com câmeras e processadores de IA de borda compactos para identificar e classificar materiais à medida que são descartados. Modelos de IA de visão como o YOLO11 podem ser treinados de forma personalizada para detectar diferentes tipos de resíduos, como papel, plástico, borracha, etc.
Uma vez que o resíduo é identificado, ele pode ser automaticamente classificado em compartimentos separados com base na sua reutilização. Ao usar IA de borda junto com modelos YOLO11 exportados no formato NCNN, essas lixeiras podem processar dados localmente - sem precisar de uma conexão com a internet. Isso permite que operem autonomamente e tomem decisões de classificação em tempo real com atraso mínimo.

Fig 4. Detectando resíduos plásticos usando YOLO11.
Link to this sectionMonitoramento de gado usando drones e visão computacional#
Às vezes, áreas agrícolas em locais remotos carecem de acesso a conexões de internet estáveis ou até mesmo energia constante, o que limita sua capacidade de executar aplicações de IA online. Nesses casos, dispositivos de borda e drones podem ser usados para lidar com uma variedade de tarefas.
Um bom exemplo é o monitoramento de rebanhos, como gado, ovelhas e aves. Isso pode ser feito usando modelos de IA de visão como o YOLO11, que podem ser usados para rastrear o movimento dos animais, detectar sinais de lesão, doença ou comportamento anormal, e alertar os agricultores quando os animais se perdem. A integração NCNN também torna possível executar e processar esses dados diretamente em dispositivos de borda, tornando-a uma ótima opção para análise de imagem e vídeo em fazendas em áreas remotas ou fora da rede.

Fig 5. Um olhar sobre o uso do YOLO11 para monitorar rebanhos.
Link to this sectionPrincipais pontos#
Exportar modelos YOLO11 usando a integração NCNN suportada pela Ultralytics é uma maneira simples de levar a IA de visão para ambientes de baixo consumo. Seja com drones em zonas de desastre, lixeiras de classificação inteligente ou monitoramento de rebanhos em fazendas remotas, YOLO e NCNN permitem inferências de IA em tempo real que são rápidas, eficientes e portáteis. Essa abordagem ajuda a tornar os sistemas de IA mais acessíveis e confiáveis quando é mais importante.
Quer saber mais sobre IA? Explore nosso repositório GitHub, conecte-se com nossa comunidade e confira nossas opções de licenciamento para impulsionar seu projeto de visão computacional. Descubra como inovações como IA no varejo e visão computacional na saúde estão moldando o futuro nas nossas páginas de soluções.






