Ultralytics YOLO27:
Integrações

Utilizar a integração com ONNX para exportar modelos Ultralytics YOLO

Saiba como exportar modelos Ultralytics YOLO, como o Ultralytics YOLO11, utilizando a integração com ONNX para implementação multiplataforma em vários tipos de hardware.

ABAbirami Vina11 min read
ONNX a permitir que um modelo treinado numa framework seja executado noutra

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

Atualmente, os modelos de IA são executados em tudo, desde servidores na cloud e computadores de secretária até smartphones e dispositivos de edge. Esta mudança permite um processamento mais rápido, funcionamento offline e sistemas mais inteligentes que operam mais perto do local onde os dados são gerados.

Uma área onde isto é especialmente evidente é a visão computacional — um ramo da IA que permite às máquinas interpretar dados visuais. É utilizada em aplicações como reconhecimento facial, condução autónoma e análise de vídeo em tempo real. À medida que estes casos de utilização crescem, aumenta também a necessidade de modelos capazes de funcionar sem problemas em diversos equipamentos e plataformas.

No entanto, implementar modelos de visão computacional numa variedade de destinos de implementação nem sempre é simples. Os dispositivos diferem em termos de hardware, sistemas operativos e frameworks compatíveis, o que torna essenciais a flexibilidade e a compatibilidade.

É 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 colmatar a distância entre o treino e a implementação. ONNX é um formato aberto que torna os modelos independentes de frameworks e prontos para implementação em várias plataformas.

ONNX permite que um modelo treinado num framework seja executado noutro

Fig. 1. ONNX permite pegar num modelo treinado num framework e executá-lo facilmente noutro.

Neste artigo, vamos analisar mais detalhadamente a integração ONNX suportada pela Ultralytics e explorar como podes exportar o teu modelo YOLO11 para uma implementação flexível e multiplataforma.

O 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 machine learning. Desenvolvido originalmente pela Microsoft e pelo Facebook, permite aos programadores treinar um modelo num framework, como PyTorch, e executá-lo noutro, como TensorFlow. Isto torna o desenvolvimento de IA mais flexível, colaborativo e acessível, especialmente em áreas como a visão computacional.

ONNX fornece um conjunto comum de operadores e um formato de ficheiro unificado, facilitando a transferência de modelos entre diferentes ferramentas, frameworks, runtimes e compiladores. Normalmente, um modelo treinado num framework não é facilmente compatível com outro — mas, com ONNX, podes exportar o teu modelo uma vez e implementá-lo praticamente em qualquer lugar: em CPUs (unidades centrais de processamento), GPUs (unidades de processamento gráfico), dispositivos móveis ou hardware de edge.

Além disso, o ONNX Runtime é um motor de inferência de alto desempenho desenvolvido especificamente para executar modelos no formato ONNX. Foi concebido para fazer com que os modelos ONNX funcionem de forma mais rápida e eficiente numa vasta gama de plataformas, incluindo servidores, dispositivos móveis e hardware de edge. O ONNX Runtime é compatível com frameworks populares como PyTorch, TensorFlow, TensorFlow Lite e scikit-learn, facilitando a integração em diferentes fluxos de trabalho e a implementação dos modelos onde forem necessários.

ONNX e ONNX Runtime permitem a implementação de modelos multiplataforma

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

Principais funcionalidades do ONNX#

Antes de explicarmos como exportar o Ultralytics YOLO11 para o formato ONNX, vamos conhecer algumas funcionalidades importantes do formato de modelo ONNX.

Quer estejas a alternar entre ferramentas, a implementar em dispositivos diferentes ou a atualizar sistemas, ONNX ajuda a manter tudo a funcionar sem problemas. Eis o que torna o formato de modelo ONNX único:

  • Um formato padrão: ONNX utiliza uma forma comum de descrever como os modelos são construídos, incluindo camadas e operações (pensa nelas como blocos de construção). Quando um modelo é convertido para ONNX, segue este padrão, para que qualquer sistema compatível com ONNX o possa compreender e executar.

  • Compatibilidade retroativa: Mesmo continuando a evoluir, ONNX garante que os modelos mais antigos continuam a funcionar com versões mais recentes. Isto significa que não tens de voltar a treinar ou reconstruir os teus modelos sempre que ONNX recebe uma atualização.

  • Conceção de modelos baseada em grafos: Os modelos ONNX são estruturados como grafos de computação, em que cada nó representa uma operação (como uma camada ou função matemática) e as arestas indicam o fluxo de dados. Esta conceção baseada em grafos facilita a integração com vários sistemas que utilizam estruturas semelhantes de grafos computacionais.

  • Ferramentas adequadas para programadores: Inclui uma vasta gama de ferramentas que ajudam a converter, validar e otimizar os teus modelos. Estas ferramentas simplificam o processo de transferência de modelos entre diferentes frameworks e podem acelerar a implementação, especialmente em aplicações de visão computacional.

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, instala o pacote Python da Ultralytics utilizando um gestor de pacotes como ‘pip’. Para isso, executa o comando “pip install ultralytics” na linha de comandos ou no terminal.

Com o pacote Ultralytics, podes treinar, testar, ajustar, exportar e implementar facilmente modelos para várias tarefas de visão computacional, tornando todo o processo mais rápido e eficiente. Se encontrares dificuldades durante a instalação, consulta o guia de Problemas comuns para obter soluções e sugestões.

Depois de instalares o pacote Ultralytics, podes carregar e exportar o modelo YOLO11 para o formato ONNX utilizando o código abaixo. Este exemplo carrega um modelo YOLO11 pré-treinado (yolo11n.pt) e exporta-o como um ficheiro ONNX (yolo11n.onnx), deixando-o pronto para implementação em diferentes plataformas e dispositivos.

Depois de converteres o teu modelo para o formato ONNX, podes implementá-lo numa 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 utilizar o modelo treinado para gerar previsões sobre dados novos. Neste caso, vamos utilizar o URL de uma imagem de um autocarro para testar o modelo.

Quando executares este código, a imagem de saída seguinte será guardada na pasta runs/detect/predict.

Executar uma inferência utilizando o modelo Ultralytics YOLO11 exportado numa imagem

Fig. 3. Executar uma inferência utilizando o modelo Ultralytics YOLO11 exportado numa imagem.

Quando deves 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 distingue ONNX é o facto de ser um formato independente de frameworks. Enquanto muitos outros formatos de exportação estão associados a ferramentas ou ambientes específicos, ONNX utiliza um formato padronizado e um conjunto partilhado de operadores. Isto torna-o altamente portátil, compatível com hardware e ideal para implementações multiplataforma, quer trabalhes com servidores na cloud, aplicações móveis ou dispositivos de edge.

Eis algumas razões pelas quais a integração ONNX pode ser a escolha ideal para os teus projetos Ultralytics YOLO11:

  • Implementação portátil: Depois de exportado para ONNX, o teu modelo Ultralytics YOLO11 pode ser implementado em várias plataformas sem alterações ao código nem novo treino.

  • Suporte abrangente na indústria: ONNX é suportado pelas principais empresas e frameworks de IA, o que faz dele um formato fiável e amplamente aceite. Garante compatibilidade a longo prazo, tal como os PDFs funcionam em diferentes dispositivos.

  • Desenvolvimento preparado para o futuro: Utilizar ONNX ajuda a proteger o teu investimento em modelos. À medida que as ferramentas evoluem, ONNX mantém os teus modelos relevantes e utilizáveis, mesmo em ambientes novos ou diferentes.

  • Sem dependência de fornecedor: Algumas ferramentas obrigam-te a utilizar apenas o sistema respetivo, o que pode limitar o que o teu modelo consegue fazer. ONNX evita isso ao permitir-te escolher a plataforma que melhor satisfaz as tuas necessidades, sem ficares preso a uma única configuração.

Aplicações do Ultralytics YOLO11 e do formato de modelo ONNX#

Em seguida, vamos explorar algumas aplicações reais em que o Ultralytics YOLO11 pode ser implementado com a ajuda da integração ONNX.

Monitorização de inventário em armazéns com o Ultralytics YOLO11#

Em armazéns movimentados, é difícil acompanhar todos os produtos e embalagens a toda a hora. Os sistemas de visão computacional podem ajudar os trabalhadores a encontrar produtos nas prateleiras e a obter informações como o número e o tipo de produtos. Estes sistemas podem ajudar as empresas a gerir automaticamente o seu vasto inventário e poupar bastante tempo aos trabalhadores do armazém.

Especificamente, em armazéns inteligentes, os modelos Ultralytics YOLO11 exportados para ONNX podem ser utilizados para identificar e contar itens em tempo real através de câmaras e dispositivos de edge. O modelo exportado pode ajudar a analisar prateleiras ou paletes para detetar níveis de stock, itens em falta ou espaços vazios. Como a exportação para ONNX torna o modelo leve e eficiente, este pode ser executado diretamente em pequenos dispositivos de edge, como câmaras inteligentes, eliminando a necessidade de servidores dispendiosos ou de acesso constante à cloud.

Exemplo de utilização do Ultralytics YOLO11 para detetar e contar embalagens

Fig. 4. Exemplo de utilização do YOLO11 para detetar e contar embalagens.

Gestão de resíduos hospitalares com o Ultralytics YOLO11#

Os hospitais de todo o mundo produzem grandes quantidades de resíduos todos os dias, desde luvas e seringas usadas até equipamentos utilizados durante cirurgias (como instrumentos cirúrgicos descartáveis ou contaminados, como tesouras e bisturis). De facto, a investigação mostra que os hospitais produzem cerca de 5 milhões de toneladas de resíduos por ano, o que corresponde a 29 libras de resíduos por cama por dia.

A separação adequada desses resíduos é essencial para a higiene, a segurança e o cumprimento dos regulamentos. Com modelos Ultralytics YOLO11 exportados no formato ONNX, os hospitais podem automatizar e monitorizar a eliminação de resíduos em tempo real.

Por exemplo, as câmaras colocadas junto aos recipientes de resíduos em áreas como salas de operações ou corredores podem monitorizar os itens à medida que são eliminados. Um modelo Ultralytics YOLO11 personalizado, treinado para reconhecer diferentes tipos de resíduos médicos, pode analisar as imagens e identificar o que está a ser descartado. Se um item acabar no recipiente errado, como uma seringa usada no lixo comum, o sistema pode ser configurado para alertar imediatamente a equipa através de uma luz ou som, ajudando a evitar contaminações e a garantir a conformidade.

Utilização do Ultralytics YOLO11 para detetar instrumentos médicos

Fig. 5. Utilização do Ultralytics YOLO11 para detetar instrumentos médicos.

Monitorização de culturas agrícolas com o Ultralytics YOLO11#

Saber qual é o momento certo para colher as culturas pode ter um grande impacto tanto na qualidade dos produtos como na produtividade geral de uma exploração agrícola. Tradicionalmente, os agricultores baseiam-se na experiência e em inspeções manuais, mas os avanços tecnológicos recentes estão a começar a mudar essa realidade.

Agora, com inovações de visão computacional como o YOLO11, exportado no formato ONNX, os agricultores podem introduzir automação e precisão no campo. Utilizando drones ou câmaras montadas em tratores ou postes, podem captar imagens das suas culturas, como tomates, maçãs ou trigo. O YOLO11 pode então ser utilizado para detetar indicadores importantes, como a cor, o tamanho e a distribuição das culturas. Com base nestas informações, os agricultores podem determinar se as culturas estão prontas para a colheita, ainda estão a amadurecer ou já ultrapassaram o ponto ideal.

Ultralytics YOLO11 a detetar culturas em imagens aéreas captadas por drones

Fig. 6. O YOLO11 pode ser utilizado para detetar culturas em imagens aéreas captadas por drones.

Limitações do ONNX a considerar#

Embora ONNX ofereça inúmeras vantagens, como portabilidade, compatibilidade multiplataforma e interoperabilidade entre frameworks, há algumas limitações a ter em conta:

  • Tamanho do modelo: A conversão de modelos para o formato ONNX pode, por vezes, resultar em ficheiros maiores do que os seus formatos originais. Técnicas como quantização e pruning podem ajudar a atenuar este problema, reduzindo o tamanho do modelo sem afetar significativamente o desempenho.

  • Compatibilidade do runtime: Embora o ONNX Runtime tenha sido concebido para oferecer compatibilidade multiplataforma, o desempenho e o suporte podem variar consoante o hardware e os sistemas operativos.

  • Desafios de depuração: A depuração de modelos ONNX pode ser mais complexa do que em frameworks nativos como PyTorch ou TensorFlow. As mensagens de erro podem ser menos descritivas, dificultando a identificação dos problemas. No entanto, ferramentas como o Netron, para visualização de modelos, e as capacidades de registo do ONNX Runtime podem ajudar na resolução de problemas.

Principais conclusões#

Exportar o Ultralytics YOLO11 para ONNX facilita a utilização de um modelo de visão computacional treinado e a sua implementação praticamente em qualquer lugar — seja num portátil, dispositivo móvel ou até numa câmara inteligente compacta. Com a integração ONNX, não ficas limitado a um único framework ou plataforma, o que te dá flexibilidade para executar o modelo no ambiente mais adequado à tua aplicação.

Isto torna a transição do treino para a implementação no mundo real mais rápida e eficiente. Quer estejas a monitorizar o inventário de um armazém ou a garantir que os resíduos hospitalares são eliminados corretamente, esta configuração ajuda os sistemas a funcionar de forma mais fluida, reduz os erros e poupa tempo valioso.

Queres saber mais sobre visão computacional e IA? Explora o nosso repositório no GitHub, liga-te à nossa comunidade e consulta as nossas opções de licenciamento para começares o teu projeto de visão computacional. Se estás a explorar inovações como IA na indústria e visão computacional no setor automóvel, visita as nossas páginas de soluções para descobrires mais.

Explore solutions

Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em insights em tempo real para agricultura, aquicultura, monitoramento ambiental, conservação e análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Leva a IA de visão para o monitoramento aéreo com os modelos do Ultralytics YOLO. Potencializa drones, fluxos de trabalho aeroespaciais, conservação ambiental e indústrias geoespaciais com soluções de visão computacional.
Saiba mais

Protege cada local com os modelos do Ultralytics YOLO. A IA de visão alimenta monitoramento de perímetro, detecção de ameaças, reconhecimento de placas e segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Dê mais inteligência às suas máquinas com os modelos Ultralytics YOLO. A IA de visão na robótica permite a navegação autónoma, a perceção, o rastreamento de objetos e o controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Simplifique a logística com os modelos Ultralytics YOLO. A IA de visão permite a inspeção de encomendas, a triagem, o rastreamento de veículos e a monitorização da segurança dos armazéns em tempo real.
Saiba mais
Visão computacional no retalho

Visão computacional no retalho

Reinvente o retalho com os modelos Ultralytics YOLO. A IA de visão permite o rastreamento do inventário, a monitorização de prateleiras, a gestão de filas e informações mais inteligentes sobre os clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Cria soluções de saúde com modelos Ultralytics YOLO. A Vision AI na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitorização de pacientes.
Saiba mais
Visão computacional na produção

Visão computacional na produção

Otimiza a produção com modelos Ultralytics YOLO. A Vision AI impulsiona o controlo de qualidade, a deteção de defeitos, a conformidade com EPI e a automatização das linhas de montagem.
Saiba mais
Visão computacional no setor automóvel

Visão computacional no setor automóvel

Aplique visão computacional no setor automóvel com modelos Ultralytics YOLO. A IA de visão melhora a segurança rodoviária, a assistência ao condutor e a automatização de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão para a agricultura inteligente com modelos Ultralytics YOLO. Potencie a monitorização das culturas, o acompanhamento do gado e a agricultura de precisão para obter colheitas maiores e mais inteligentes.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em insights em tempo real para agricultura, aquicultura, monitoramento ambiental, conservação e análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Leva a IA de visão para o monitoramento aéreo com os modelos do Ultralytics YOLO. Potencializa drones, fluxos de trabalho aeroespaciais, conservação ambiental e indústrias geoespaciais com soluções de visão computacional.
Saiba mais

Protege cada local com os modelos do Ultralytics YOLO. A IA de visão alimenta monitoramento de perímetro, detecção de ameaças, reconhecimento de placas e segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Dê mais inteligência às suas máquinas com os modelos Ultralytics YOLO. A IA de visão na robótica permite a navegação autónoma, a perceção, o rastreamento de objetos e o controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Simplifique a logística com os modelos Ultralytics YOLO. A IA de visão permite a inspeção de encomendas, a triagem, o rastreamento de veículos e a monitorização da segurança dos armazéns em tempo real.
Saiba mais
Visão computacional no retalho

Visão computacional no retalho

Reinvente o retalho com os modelos Ultralytics YOLO. A IA de visão permite o rastreamento do inventário, a monitorização de prateleiras, a gestão de filas e informações mais inteligentes sobre os clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Cria soluções de saúde com modelos Ultralytics YOLO. A Vision AI na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitorização de pacientes.
Saiba mais
Visão computacional na produção

Visão computacional na produção

Otimiza a produção com modelos Ultralytics YOLO. A Vision AI impulsiona o controlo de qualidade, a deteção de defeitos, a conformidade com EPI e a automatização das linhas de montagem.
Saiba mais
Visão computacional no setor automóvel

Visão computacional no setor automóvel

Aplique visão computacional no setor automóvel com modelos Ultralytics YOLO. A IA de visão melhora a segurança rodoviária, a assistência ao condutor e a automatização de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão para a agricultura inteligente com modelos Ultralytics YOLO. Potencie a monitorização das culturas, o acompanhamento do gado e a agricultura de precisão para obter colheitas maiores e mais inteligentes.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em insights em tempo real para agricultura, aquicultura, monitoramento ambiental, conservação e análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Leva a IA de visão para o monitoramento aéreo com os modelos do Ultralytics YOLO. Potencializa drones, fluxos de trabalho aeroespaciais, conservação ambiental e indústrias geoespaciais com soluções de visão computacional.
Saiba mais

Protege cada local com os modelos do Ultralytics YOLO. A IA de visão alimenta monitoramento de perímetro, detecção de ameaças, reconhecimento de placas e segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Dê mais inteligência às suas máquinas com os modelos Ultralytics YOLO. A IA de visão na robótica permite a navegação autónoma, a perceção, o rastreamento de objetos e o controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Simplifique a logística com os modelos Ultralytics YOLO. A IA de visão permite a inspeção de encomendas, a triagem, o rastreamento de veículos e a monitorização da segurança dos armazéns em tempo real.
Saiba mais
Visão computacional no retalho

Visão computacional no retalho

Reinvente o retalho com os modelos Ultralytics YOLO. A IA de visão permite o rastreamento do inventário, a monitorização de prateleiras, a gestão de filas e informações mais inteligentes sobre os clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Cria soluções de saúde com modelos Ultralytics YOLO. A Vision AI na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitorização de pacientes.
Saiba mais
Visão computacional na produção

Visão computacional na produção

Otimiza a produção com modelos Ultralytics YOLO. A Vision AI impulsiona o controlo de qualidade, a deteção de defeitos, a conformidade com EPI e a automatização das linhas de montagem.
Saiba mais
Visão computacional no setor automóvel

Visão computacional no setor automóvel

Aplique visão computacional no setor automóvel com modelos Ultralytics YOLO. A IA de visão melhora a segurança rodoviária, a assistência ao condutor e a automatização de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão para a agricultura inteligente com modelos Ultralytics YOLO. Potencie a monitorização das culturas, o acompanhamento do gado e a agricultura de precisão para obter colheitas maiores e mais inteligentes.
Saiba mais

Vamos construir juntos o futuro da IA!

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