Controllo verde
Link copiato negli appunti

Esportazione e ottimizzazione di Ultralytics YOLOv8 per l'inferenza su Intel OpenVINO

Ottimizza il tuo modello Ultralytics YOLOv8 per l'inferenza utilizzando OpenVINO. Segui la nostra guida per convertire i modelli PyTorch in ONNX e ottimizzarli per le applicazioni in tempo reale.

In questo blogpost vedremo come esportare e ottimizzare il tuo modello pre-addestrato o addestrato in modo personalizzato Ultralytics YOLOv8 per l' inferenza utilizzando OpenVINO. Se utilizzi un sistema basato su Intel, che sia CPU o GPU, questa guida ti mostrerà come velocizzare in modo significativo il tuo modello con il minimo sforzo.

Perché ottimizzare YOLOv8 con OpenVINO?

Ottimizzare il tuo modello YOLOv8 con OpenVINO può fornire un aumento di velocità fino a 3 volte nelle attività di inferenza, in particolare se si utilizza un modello Intel CPU . Questo aumento di prestazioni può fare un'enorme differenza nelle applicazioni in tempo reale, dal rilevamento di oggetti alla segmentazione e ai sistemi di sicurezza.

Passi per esportare e ottimizzare il tuo modello YOLOv8

Comprendere il processo

Prima di tutto, vediamo come funziona il processo. Convertiremo un modello PyTorch in ONNX e poi lo ottimizzeremo utilizzando OpenVINO. Questo processo prevede alcuni semplici passaggi e può essere applicato a diversi modelli e formati, tra cui TensorFlow, PyTorch, Caffe e ONNX.

Esportare il modello

Se ci addentriamo nelladocumentazione di Ultralytics , scopriamo che l'esportazione di un modello di YOLOv8 implica l'utilizzo del metodo di esportazione del framework Ultralytics . Questo metodo ci permette di convertire il nostro modello da PyTorch a ONNXe infine di ottimizzarlo per OpenVINO. Il risultato è un modello che gira molto più velocemente, sfruttando il potente hardware di Intel.

Installazione delle dipendenze

Prima di eseguire lo script di esportazione, dovrai assicurarti che tutte le dipendenze necessarie siano installate. Queste includono la libreria Ultralytics , ONNX e OpenVINO. L'installazione di questi pacchetti è un processo semplice che può essere eseguito tramite pip, il programma di installazione del pacchetto Python .

Eseguire lo script di esportazione

Una volta configurato l'ambiente, puoi eseguire lo script di esportazione. Questo script convertirà il tuo modello PyTorch in ONNX e poi in OpenVINO. Il processo è semplice e prevede la chiamata di un'unica funzione per gestire l'esportazione. Il framework Ultralytics semplifica la conversione e l'ottimizzazione dei tuoi modelli, garantendoti le migliori prestazioni con il minimo sforzo.

Figura 1. Nicolai Nielsen illustra come eseguire lo script di esportazione.

Confronto delle prestazioni

Dopo l'esportazione, è fondamentale confrontare le prestazioni del modello originale e di quello ottimizzato. Eseguendo un benchmarking del tempo di inferenza di entrambi i modelli, potrai vedere chiaramente i guadagni in termini di prestazioni. In genere, il modello OpenVINO mostra una riduzione significativa del tempo di inferenza rispetto al modello originale PyTorch . Questo vale soprattutto per i modelli più grandi, dove l'aumento delle prestazioni è più evidente.

Applicazione e vantaggi nel mondo reale

L'ottimizzazione dei modelli di YOLOv8 con OpenVINO è particolarmente vantaggiosa per le applicazioni che richiedono un'elaborazione in tempo reale. Ecco alcuni esempi:

  • Sistemi di sicurezza: Il rilevamento di oggetti in tempo reale può allertare istantaneamente il personale di sicurezza, migliorando la sicurezza e la reattività.
  • Veicoli automatizzati: Una maggiore velocità di inferenza migliora la reattività dei sistemi di guida autonoma, rendendoli più sicuri e affidabili.
  • Sanità: L'elaborazione rapida delle immagini per gli strumenti diagnostici può salvare vite umane fornendo risultati più rapidi e consentendo interventi tempestivi.

Implementando queste ottimizzazioni, non solo migliorerai le prestazioni ma anche l'affidabilità e l'efficienza delle tue applicazioni. Questo può portare a una migliore esperienza utente, a un aumento della produttività e a soluzioni più innovative.

Conclusione

Esportare e ottimizzare un modello di YOLOv8 per OpenVINO è un modo potente per sfruttare l'hardware di Intel per applicazioni AI più veloci ed efficienti. Con pochi semplici passaggi, puoi trasformare le prestazioni del tuo modello e applicarlo efficacemente a scenari reali.

Assicurati di dare un'occhiata ad altri tutorial e guide di Ultralytics per continuare a migliorare i tuoi progetti di intelligenza artificiale. Visita il nostro repository GitHub e unisciti alla comunità di Ultralytics per ulteriori approfondimenti e aggiornamenti. Innoviamo insieme!

Ricorda che l'ottimizzazione dei modelli non è solo una questione di velocità: si tratta di sbloccare nuove possibilità e di garantire che le tue soluzioni di IA siano robuste, efficienti e pronte per il futuro. 

Logo di FacebookLogo di TwitterLogo di LinkedInSimbolo di copia-link

Leggi tutto in questa categoria

Costruiamo insieme il futuro
di AI!

Inizia il tuo viaggio nel futuro dell'apprendimento automatico