Exportar e otimizar o Ultralytics YOLOv8 para inferência no Intel OpenVINO

Nuvola Ladi

2 min ler

24 de maio de 2024

Optimize o seu modelo Ultralytics YOLOv8 para inferência utilizando o OpenVINO. Siga o nosso guia para converter modelos PyTorch em ONNX e optimizá-los para aplicações em tempo real.

Neste post do blogue, veremos como pode exportar e otimizar o seu modelo Ultralytics YOLOv8 pré-treinado ou personalizado para inferência utilizando o OpenVINO. Se estiver a utilizar um sistema baseado em Intel, quer seja uma CPU ou GPU, este guia irá mostrar-lhe como acelerar significativamente o seu modelo com um esforço mínimo.

Porquê otimizar o YOLOv8 com o OpenVINO?

A otimização do seu modelo YOLOv8 com o OpenVINO pode proporcionar um aumento de velocidade até 3x nas tarefas de inferência, especialmente se estiver a utilizar um CPU Intel. Este aumento de desempenho pode fazer uma enorme diferença em aplicações em tempo real, desde a deteção de objectos à segmentação e sistemas de segurança.

Passos para exportar e otimizar o seu modelo YOLOv8

Compreender o processo

Antes de mais nada, vamos analisar o processo. Vamos converter um modelo PyTorch para ONNX e depois optimizá-lo utilizando o OpenVINO. Este processo envolve alguns passos simples e pode ser aplicado a vários modelos e formatos, incluindo TensorFlow, PyTorch, Caffe e ONNX.

Exportar o modelo

Ao consultar a documentação do Ultralytics, descobrimos que a exportação de um modelo YOLOv8 implica a utilização do método de exportação da estrutura do Ultralytics. Este método permite-nos converter o nosso modelo de PyTorch para ONNX e, finalmente, optimizá-lo para OpenVINO. O resultado é um modelo que é executado significativamente mais rápido, aproveitando o poderoso hardware da Intel.

Instalação de dependências

Antes de executar o script de exportação, é necessário garantir que todas as dependências necessárias estejam instaladas. Estas incluem a biblioteca Ultralytics, ONNX e OpenVINO. A instalação desses pacotes é um processo simples que pode ser feito via pip, o instalador de pacotes Python.

Executar o script de exportação

Quando o ambiente estiver configurado, pode executar o script de exportação. Este script irá converter o seu modelo PyTorch para ONNX e depois para OpenVINO. O processo é simples e envolve a chamada de uma única função para lidar com a exportação. A estrutura do Ultralytics facilita a conversão e a otimização dos seus modelos, garantindo-lhe o melhor desempenho com o mínimo de complicações.

__wf_reserved_inherit
Fig. 1. Nicolai Nielsen explica como executar o guião de exportação.

Comparação de desempenho

Após a exportação, é essencial comparar o desempenho dos modelos original e optimizado. Ao comparar o tempo de inferência de ambos os modelos, é possível ver claramente os ganhos de desempenho. Normalmente, o modelo OpenVINO mostrará uma redução significativa no tempo de inferência em comparação com o modelo PyTorch original. Isso é especialmente verdadeiro para modelos maiores, onde o aumento de desempenho é mais percetível.

Aplicação e benefícios no mundo real

A otimização dos modelos YOLOv8 com o OpenVINO é particularmente benéfica para aplicações que requerem processamento em tempo real. Eis alguns exemplos:

  • Sistemas de segurança: A deteção de objectos em tempo real pode alertar instantaneamente o pessoal de segurança, aumentando a segurança e a capacidade de resposta.
  • Veículos Autónomos: Velocidades de inferência mais rápidas melhoram a capacidade de resposta dos sistemas de condução autónoma, tornando-os mais seguros e fiáveis.
  • Cuidados de saúde: O processamento rápido de imagens para ferramentas de diagnóstico pode salvar vidas ao fornecer resultados mais rápidos, permitindo intervenções atempadas.

Ao implementar estas optimizações, não só melhora o desempenho, como também aumenta a fiabilidade e a eficiência das suas aplicações. Isto pode levar a melhores experiências de utilizador, maior produtividade e soluções mais inovadoras.

Concluir

Exportar e otimizar um modelo YOLOv8 para OpenVINO é uma forma poderosa de tirar partido do hardware Intel para aplicações de IA mais rápidas e eficientes. Com apenas alguns passos simples, pode transformar o desempenho do seu modelo e aplicá-lo a cenários do mundo real de forma eficaz.

Não deixe de conferir mais tutoriais e guias do Ultralytics para continuar aprimorando seus projetos de IA. Visite o nosso repositório GitHub e junte-se à comunidade Ultralytics para obter mais informações e actualizações. Vamos inovar juntos!

Lembre-se, otimizar os seus modelos não tem apenas a ver com velocidade - tem a ver com desbloquear novas possibilidades e garantir que as suas soluções de IA são robustas, eficientes e prontas para o futuro. 

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