Conheça o YOLO26: IA de visão de próxima geração.
Ultralytics
Integrações

Usando a integração ONNX para exportar modelos Ultralytics YOLO

Aprenda a exportar modelos Ultralytics YOLO, como o Ultralytics YOLO11, usando a integração ONNX para implantação multiplataforma em diversos hardwares.

ABAbirami Vina
4 min read
ONNX permitindo que um modelo treinado em um framework seja executado em outro

Quando soluções de IA começaram a ganhar atenção, a maioria dos modelos era implantada em servidores poderosos em ambientes controlados. No entanto, à medida que a tecnologia avançou, a implantação expandiu-se muito além do data center.

Hoje, modelos de IA rodam em tudo, desde servidores em nuvem e desktops até smartphones e dispositivos de borda. Essa mudança suporta processamento mais rápido, funcionalidade offline e sistemas mais inteligentes que operam mais perto de onde os dados são gerados.

Uma área onde isso é especialmente claro é visão computacional – um ramo da IA que permite que máquinas interpretem dados visuais. Está sendo usada para impulsionar aplicações como reconhecimento facial, direção autônoma e análise de vídeo em tempo real. À medida que esses casos de uso crescem, cresce também a necessidade de modelos que possam rodar perfeitamente em diversos hardwares e plataformas.

Mas implantar modelos de visão computacional em uma variedade de alvos de implantação nem sempre é simples. Os dispositivos diferem em termos de hardware, sistemas operacionais e frameworks suportados, tornando a flexibilidade e a compatibilidade essenciais.

É por isso que ter a opção de exportar modelos de visão computacional como o Ultralytics YOLO11 para diferentes formatos é fundamental. Por exemplo, a integração ONNX (Open Neural Network Exchange) suportada pela Ultralytics oferece uma forma prática de preencher a lacuna entre o treinamento e a implantação. ONNX é um formato aberto que torna os modelos independentes de framework e prontos para implantação em várias plataformas.

ONNX permitindo que um modelo treinado em um framework seja executado em outro

Fig 1. ONNX ajuda você a pegar um modelo treinado em um framework e rodá-lo em outro facilmente.

Neste artigo, veremos mais de perto a integração ONNX suportada pela Ultralytics e exploraremos como você pode exportar seu modelo YOLO11 para uma implantação flexível e multiplataforma.

Link to this sectionO que são ONNX e ONNX Runtime?#

O Open Neural Network Exchange é um projeto de código aberto que define um formato padrão para modelos de aprendizado de máquina. Originalmente desenvolvido pela Microsoft e pelo Facebook, ele permite que desenvolvedores treinem um modelo em um framework, como PyTorch, e o rodem em outro, como TensorFlow. Isso torna o desenvolvimento de IA mais flexível, colaborativo e acessível, especialmente em campos como visão computacional.

ONNX fornece um conjunto comum de operadores e um formato de arquivo unificado, facilitando a movimentação de modelos entre diferentes ferramentas, frameworks, runtimes e compiladores. Normalmente, um modelo treinado em um framework não é facilmente compatível com outro - mas com ONNX, você pode exportar seu modelo uma vez e implantá-lo quase em qualquer lugar: em CPUs (Central Processing Units), GPUs (Graphics Processing Units), dispositivos móveis ou hardware de borda.

Além disso, o ONNX Runtime é um motor de inferência de alto desempenho desenvolvido especificamente para rodar modelos no formato ONNX. Ele foi projetado para fazer com que modelos ONNX rodem mais rápido e com mais eficiência em uma ampla gama de plataformas - incluindo servidores, dispositivos móveis e hardware de borda. ONNX Runtime é compatível com frameworks populares como PyTorch, TensorFlow, TensorFlow Lite e scikit-learn, tornando fácil a integração em diferentes fluxos de trabalho e a implantação de modelos onde quer que sejam necessários.

ONNX e ONNX Runtime permitindo a implantação de modelos multiplataforma

Fig 2. ONNX e ONNX Runtime permitem uma implantação flexível de modelos multiplataforma.

Link to this sectionPrincipais recursos do ONNX#

Antes de discutirmos como exportar YOLO11 para o formato ONNX, vamos conferir alguns recursos importantes do formato de modelo ONNX.

Quer você esteja alternando entre ferramentas, implantando em dispositivos diferentes ou atualizando sistemas, o ONNX ajuda a manter tudo funcionando sem problemas. Aqui está o que torna o formato de modelo ONNX único:

  • Um formato padrão: ONNX usa uma forma comum de descrever como os modelos são construídos, como camadas e operações (pense neles como blocos de construção). Quando um modelo é convertido para ONNX, ele segue esse padrão para que qualquer sistema que suporte ONNX possa entendê-lo e executá-lo.

  • Compatibilidade retroativa: Mesmo enquanto o ONNX continua a melhorar, ele garante que modelos mais antigos ainda funcionem com versões mais novas. Isso significa que você não precisa treinar novamente ou reconstruir seus modelos toda vez que o ONNX recebe uma atualização.

  • Design de modelo baseado em grafo: Os modelos ONNX são estruturados como grafos de computação, onde cada nó representa uma operação (como uma camada ou função matemática) e as arestas indicam o fluxo de dados. Esse design baseado em grafo facilita a integração com vários sistemas que utilizam estruturas de grafo computacional semelhantes.

  • Ferramentas amigáveis ao desenvolvedor: Ele vem com uma ampla gama de ferramentas que ajudam você a converter, validar e otimizar seus modelos. Essas ferramentas simplificam o processo de movimentação de modelos entre diferentes frameworks e podem acelerar a implantação - especialmente para aplicações de visão computacional.

Link to this sectionUma visão geral da integração ONNX#

Exportar modelos Ultralytics YOLO, como o Ultralytics YOLO11, no formato ONNX é simples e pode ser feito em poucos passos.

Para começar, instale o pacote Python da Ultralytics usando um gerenciador de pacotes como o 'pip'. Isso pode ser feito executando o comando "pip install ultralytics" em seu prompt de comando ou terminal para começar.

Com o pacote Ultralytics, você pode facilmente treinar, testar, ajustar, exportar e implantar modelos para várias tarefas de visão computacional - tornando todo o processo mais rápido e eficiente. Ao instalá-lo, se encontrar alguma dificuldade, você pode consultar o guia de problemas comuns para soluções e dicas.

Uma vez que o pacote Ultralytics esteja instalado, você pode carregar e exportar o modelo YOLO11 para o formato ONNX usando o código abaixo. Este exemplo carrega um modelo YOLO11 pré-treinado (yolo11n.pt) e o exporta como um arquivo ONNX (yolo11n.onnx), tornando-o pronto para implantação em diferentes plataformas e dispositivos.

Após converter seu modelo para o formato ONNX, você pode implantá-lo em uma variedade de plataformas.

O exemplo abaixo mostra como carregar o modelo YOLO11 exportado (yolo11n.onnx) e executar uma inferência com ele. Fazer inferência significa simplesmente usar o modelo treinado para fazer previsões em novos dados. Neste caso, usaremos o URL de uma imagem de um ônibus para testar o modelo.

Quando você executa este código, a imagem de saída resultante será salva na pasta runs/detect/predict.

Executando uma inferência usando o modelo YOLO11 exportado em uma imagem

Fig 3. Executando uma inferência usando o modelo YOLO11 exportado em uma imagem.

Link to this sectionQuando você deve escolher a integração ONNX?#

O pacote Python da Ultralytics suporta a exportação de modelos para vários formatos, incluindo TorchScript, CoreML, TensorRT e ONNX. Então, por que escolher ONNX?

O que torna o ONNX notável é que ele é um formato independente de framework. Enquanto muitos outros formatos de exportação estão ligados a ferramentas ou ambientes específicos, o ONNX usa um formato padronizado e um conjunto compartilhado de operadores. Isso o torna altamente portátil, amigável ao hardware e ideal para implantação multiplataforma - esteja você trabalhando com servidores em nuvem, aplicativos móveis ou dispositivos de borda.

Aqui estão algumas razões pelas quais a integração ONNX pode ser a escolha ideal para seus projetos YOLO11:

  • Implantação portátil: Uma vez exportado para ONNX, seu modelo YOLO11 pode ser implantado em várias plataformas sem alterações de código ou retreinamento.

  • Suporte amplo na indústria: O ONNX é suportado pelas principais empresas e frameworks de IA, tornando-o um formato confiável e amplamente aceito. Ele garante compatibilidade de longo prazo, de forma muito parecida com como os PDFs funcionam entre dispositivos.

  • Desenvolvimento à prova de futuro: Usar ONNX ajuda a proteger seus investimentos em modelos. À medida que as ferramentas evoluem, o ONNX mantém seus modelos relevantes e utilizáveis, mesmo em ambientes novos ou diferentes.

  • Sem aprisionamento tecnológico (vendor lock-in): Algumas ferramentas prendem você a usar apenas o sistema delas, o que pode limitar o que seu modelo pode fazer. O ONNX evita isso, deixando você escolher a plataforma que funciona melhor para suas necessidades, sem ficar preso a uma única configuração.

Link to this sectionAplicações do YOLO11 e do formato de modelo ONNX#

Em seguida, vamos explorar algumas aplicações do mundo real onde o YOLO11 pode ser implantado com a ajuda da integração ONNX.

Link to this sectionRastreando estoque em armazéns usando YOLO11#

Em armazéns movimentados, é difícil ficar de olho em cada produto e pacote o tempo todo. Sistemas de visão computacional podem ajudar os trabalhadores a encontrar produtos nas prateleiras e obter insights como o número de produtos, tipo, etc. Tais sistemas podem ajudar as empresas a gerenciar automaticamente seu vasto estoque e economizar muito tempo dos trabalhadores do armazém.

Especificamente, em armazéns inteligentes, modelos YOLO11 exportados para ONNX podem ser usados para identificar e contar itens em tempo real usando câmeras e dispositivos de borda. O modelo exportado pode ajudar a digitalizar prateleiras ou paletes para detectar níveis de estoque, itens ausentes ou espaços vazios. Como exportar para ONNX torna o modelo leve e eficiente, ele pode rodar diretamente em pequenos dispositivos de borda, como câmeras inteligentes, eliminando a necessidade de servidores caros ou acesso constante à nuvem.

Um exemplo de uso do YOLO11 para detectar e contar pacotes

Fig 4. Um exemplo de uso do YOLO11 para detectar e contar pacotes.

Link to this sectionGestão de resíduos hospitalares com YOLO11#

Hospitais em todo o mundo criam grandes quantidades de resíduos todos os dias, desde luvas e seringas usadas até equipamentos usados durante cirurgias (como ferramentas cirúrgicas descartáveis ou contaminadas, como tesouras e bisturis). De fato, pesquisas mostram que os hospitais produzem cerca de 5 milhões de toneladas de resíduos todos os anos, o que equivale a 29 libras de resíduos por leito por dia.

Triar tais resíduos adequadamente é essencial para a higiene, segurança e conformidade com os regulamentos. Com modelos YOLO11 exportados no formato ONNX, hospitais podem automatizar e monitorar o descarte de resíduos em tempo real.

Por exemplo, câmeras colocadas perto de lixeiras em áreas como salas de cirurgia ou corredores podem monitorar itens à medida que são descartados. Um modelo YOLO11 personalizado, treinado para reconhecer diferentes tipos de resíduos médicos, pode analisar a filmagem e identificar o que está sendo jogado fora. Se um item acabar na lixeira errada, como uma seringa usada no lixo comum, o sistema pode ser configurado para alertar imediatamente a equipe com uma luz ou som, ajudando a evitar contaminação e garantir a conformidade.

Usando o YOLO11 para detectar instrumentos médicos

Fig 5. Usando YOLO11 para detectar instrumentos médicos.

Link to this sectionMonitoramento de culturas habilitado por YOLO11#

Saber o momento certo para colher as safras pode ter um grande impacto tanto na qualidade do produto quanto na produtividade geral de uma fazenda. Tradicionalmente, os agricultores confiam na experiência e em inspeções manuais - mas com os recentes avanços tecnológicos, isso está começando a mudar.

Agora, com inovações de visão computacional como o YOLO11, exportado no formato ONNX, os agricultores podem trazer automação e precisão para o campo. Ao usar drones ou câmeras montadas em tratores ou postes, os agricultores podem capturar imagens de suas culturas (como tomates, maçãs ou trigo). O YOLO11 pode então ser usado para detectar indicadores-chave como cor, tamanho e a distribuição das culturas. Com base nessas informações, os agricultores podem determinar se as culturas estão prontas para a colheita, ainda amadurecendo ou já passaram do ponto ideal.

YOLO11 detectando colheitas em filmagens aéreas de drones

Fig 6. YOLO11 pode ser usado para detectar culturas em filmagens de drones aéreos.

Link to this sectionLimitações do ONNX a serem consideradas#

Embora o ONNX ofereça inúmeros benefícios, como portabilidade, compatibilidade multiplataforma e interoperabilidade de framework, existem algumas limitações a serem lembradas:

  • Tamanho do modelo: Converter modelos para o formato ONNX pode, às vezes, resultar em tamanhos de arquivo maiores em comparação com seus formatos originais. Técnicas como quantização e poda (pruning) podem ajudar a mitigar esse problema reduzindo o tamanho do modelo sem impactar significativamente o desempenho.

  • Compatibilidade de runtime: Embora o ONNX Runtime seja projetado para compatibilidade multiplataforma, o desempenho e o suporte podem variar entre diferentes hardwares e sistemas operacionais.

  • Desafios de depuração: Depurar modelos ONNX pode ser mais complexo do que em frameworks nativos como PyTorch ou TensorFlow. As mensagens de erro podem ser menos descritivas, tornando mais difícil identificar problemas. No entanto, ferramentas como o Netron para visualização de modelos e as capacidades de registro do ONNX Runtime podem ajudar na solução de problemas.

Link to this sectionPrincipais pontos#

Exportar o Ultralytics YOLO11 para ONNX facilita pegar um modelo de visão computacional treinado e implantá-lo em quase qualquer lugar - seja em um laptop, dispositivo móvel ou até mesmo em uma câmera inteligente compacta. Com a integração ONNX, você não fica preso a um único framework ou plataforma, dando a você a flexibilidade de rodar seu modelo no ambiente que melhor se adapta à sua aplicação.

Isso torna a transição do treinamento para a implantação no mundo real mais rápida e eficiente. Quer você esteja rastreando estoque em um armazém ou garantindo que o lixo hospitalar seja descartado corretamente, essa configuração ajuda os sistemas a rodarem de forma mais suave, reduz erros e economiza um tempo valioso.

Quer saber mais sobre visão computacional e IA? Explore nosso repositório GitHub, conecte-se com nossa comunidade e confira nossas opções de licenciamento para dar um pontapé inicial em seu projeto de visão computacional. Se você estiver explorando inovações como IA na manufatura e visão computacional na indústria automotiva, visite nossas páginas de soluções para descobrir mais.

Explore solutions

Real-time AI that works with your team

IA em robótica

Potencialize máquinas mais inteligentes com modelos Ultralytics YOLO. A IA de visão em robótica impulsiona a navegação autônoma, percepção, rastreamento de objetos e controle em tempo real.
Sabe mais
Real-time AI that works with your team

IA na Logística

Otimize a logística com modelos Ultralytics YOLO. A IA de visão permite a inspeção de pacotes, triagem, rastreamento de veículos e monitoramento de segurança em armazéns em tempo real.
Sabe mais
Real-time AI that works with your team

IA no varejo

Reinvente o varejo com modelos Ultralytics YOLO. A IA de visão impulsiona o rastreamento de inventário, monitoramento de prateleiras, gerenciamento de filas e percepções mais inteligentes sobre o cliente.
Sabe mais
Real-time AI that works with your team

IA na Saúde

Constrói soluções de saúde com modelos Ultralytics YOLO. A visão AI na saúde impulsiona imagens médicas mais rápidas, diagnósticos mais inteligentes e monitorização do paciente.
Sabe mais
Real-time AI that works with your team

IA na Fabricação

Otimize a fabricação com modelos Ultralytics YOLO. A IA de visão impulsiona o controle de qualidade, detecção de defeitos, conformidade com EPI e automação de linhas de montagem.
Sabe mais
Real-time AI that works with your operation

IA no Setor Automóvel

Aplica visão computacional no setor automóvel com modelos Ultralytics YOLO. A visão AI eleva a segurança rodoviária, a assistência ao condutor e a automação de veículos para estradas mais inteligentes.
Sabe mais
Real-time AI tailored to your operation

IA na Agricultura

Leva a visão AI para a agricultura inteligente com os modelos Ultralytics YOLO. Potencia a monitorização de culturas, o seguimento de gado e a agricultura de precisão para colheitas maiores e mais inteligentes.
Sabe mais
Real-time AI that works with your team

IA em robótica

Potencialize máquinas mais inteligentes com modelos Ultralytics YOLO. A IA de visão em robótica impulsiona a navegação autônoma, percepção, rastreamento de objetos e controle em tempo real.
Sabe mais
Real-time AI that works with your team

IA na Logística

Otimize a logística com modelos Ultralytics YOLO. A IA de visão permite a inspeção de pacotes, triagem, rastreamento de veículos e monitoramento de segurança em armazéns em tempo real.
Sabe mais
Real-time AI that works with your team

IA no varejo

Reinvente o varejo com modelos Ultralytics YOLO. A IA de visão impulsiona o rastreamento de inventário, monitoramento de prateleiras, gerenciamento de filas e percepções mais inteligentes sobre o cliente.
Sabe mais
Real-time AI that works with your team

IA na Saúde

Constrói soluções de saúde com modelos Ultralytics YOLO. A visão AI na saúde impulsiona imagens médicas mais rápidas, diagnósticos mais inteligentes e monitorização do paciente.
Sabe mais
Real-time AI that works with your team

IA na Fabricação

Otimize a fabricação com modelos Ultralytics YOLO. A IA de visão impulsiona o controle de qualidade, detecção de defeitos, conformidade com EPI e automação de linhas de montagem.
Sabe mais
Real-time AI that works with your operation

IA no Setor Automóvel

Aplica visão computacional no setor automóvel com modelos Ultralytics YOLO. A visão AI eleva a segurança rodoviária, a assistência ao condutor e a automação de veículos para estradas mais inteligentes.
Sabe mais
Real-time AI tailored to your operation

IA na Agricultura

Leva a visão AI para a agricultura inteligente com os modelos Ultralytics YOLO. Potencia a monitorização de culturas, o seguimento de gado e a agricultura de precisão para colheitas maiores e mais inteligentes.
Sabe mais
Real-time AI that works with your team

IA em robótica

Potencialize máquinas mais inteligentes com modelos Ultralytics YOLO. A IA de visão em robótica impulsiona a navegação autônoma, percepção, rastreamento de objetos e controle em tempo real.
Sabe mais
Real-time AI that works with your team

IA na Logística

Otimize a logística com modelos Ultralytics YOLO. A IA de visão permite a inspeção de pacotes, triagem, rastreamento de veículos e monitoramento de segurança em armazéns em tempo real.
Sabe mais
Real-time AI that works with your team

IA no varejo

Reinvente o varejo com modelos Ultralytics YOLO. A IA de visão impulsiona o rastreamento de inventário, monitoramento de prateleiras, gerenciamento de filas e percepções mais inteligentes sobre o cliente.
Sabe mais
Real-time AI that works with your team

IA na Saúde

Constrói soluções de saúde com modelos Ultralytics YOLO. A visão AI na saúde impulsiona imagens médicas mais rápidas, diagnósticos mais inteligentes e monitorização do paciente.
Sabe mais
Real-time AI that works with your team

IA na Fabricação

Otimize a fabricação com modelos Ultralytics YOLO. A IA de visão impulsiona o controle de qualidade, detecção de defeitos, conformidade com EPI e automação de linhas de montagem.
Sabe mais
Real-time AI that works with your operation

IA no Setor Automóvel

Aplica visão computacional no setor automóvel com modelos Ultralytics YOLO. A visão AI eleva a segurança rodoviária, a assistência ao condutor e a automação de veículos para estradas mais inteligentes.
Sabe mais
Real-time AI tailored to your operation

IA na Agricultura

Leva a visão AI para a agricultura inteligente com os modelos Ultralytics YOLO. Potencia a monitorização de culturas, o seguimento de gado e a agricultura de precisão para colheitas maiores e mais inteligentes.
Sabe mais

Vamos construir o futuro da IA juntos!

Começa a tua jornada com o futuro da aprendizagem automática