Intel OpenVINO Esportazione
In questa guida, si parlerà dell'esportazione dei modelli YOLOv8 nel formato OpenVINO che può fornire una velocità fino a 3 volte CPU e l'accelerazione dell'inferenza di YOLO su hardware Intel GPU e sull'hardware NPU.
OpenVINO, abbreviazione di Open Visual Inference & Neural Network Optimization toolkit, è un toolkit completo per l'ottimizzazione e la distribuzione di modelli di inferenza AI. Anche se il nome contiene Visual, OpenVINO supporta anche diversi compiti aggiuntivi, tra cui lingua, audio, serie temporali, ecc.
Guarda: Come esportare e ottimizzare un modello Ultralytics YOLOv8 per l'inferenza con OpenVINO.
Esempi di utilizzo
Esportare un modello YOLOv8n in formato OpenVINO ed eseguire l'inferenza con il modello esportato.
Esempio
from ultralytics import YOLO
# Load a YOLOv8n PyTorch model
model = YOLO("yolov8n.pt")
# Export the model
model.export(format="openvino") # creates 'yolov8n_openvino_model/'
# Load the exported OpenVINO model
ov_model = YOLO("yolov8n_openvino_model/")
# Run inference
results = ov_model("https://ultralytics.com/images/bus.jpg")
Argomenti
Chiave | Valore | Descrizione |
---|---|---|
format |
'openvino' |
formato in cui esportare |
imgsz |
640 |
dimensione dell'immagine come scalare o elenco (h, w), ad esempio (640, 480) |
half |
False |
Quantizzazione FP16 |
int8 |
False |
Quantizzazione INT8 |
batch |
1 |
dimensione del lotto per l'inferenza |
dynamic |
False |
consente dimensioni di ingresso dinamiche |
Vantaggi di OpenVINO
- Prestazioni: OpenVINO offre un'inferenza ad alte prestazioni utilizzando la potenza delle CPU Intel , delle GPU integrate e discrete e delle FPGA.
- Supporto per l'esecuzione eterogenea: OpenVINO fornisce un'API per scrivere una volta e distribuire su qualsiasi hardware supportato da Intel (CPU, GPU, FPGA, VPU, ecc.).
- Ottimizzatore di modelli: OpenVINO fornisce un ottimizzatore di modelli che importa, converte e ottimizza modelli da framework di deep learning popolari come PyTorch, TensorFlow, TensorFlow Lite, Keras, ONNX, PaddlePaddle, e Caffe.
- Facilità d'uso: il toolkit viene fornito con più di 80 quaderni di esercitazioni (compresa l'ottimizzazione diYOLOv8 ) che insegnano diversi aspetti del toolkit.
OpenVINO Struttura di esportazione
Quando si esporta un modello in formato OpenVINO , si ottiene una directory contenente quanto segue:
- File XML: Descrive la topologia della rete.
- File BIN: Contiene i dati binari di weights and biases .
- File di mappatura: Contiene la mappatura dei tensori di output del modello originale con i nomi di OpenVINO tensor .
È possibile utilizzare questi file per eseguire l'inferenza con il motore di inferenza OpenVINO .
Utilizzo dell'esportazione di OpenVINO nella distribuzione
Una volta ottenuti i file OpenVINO , è possibile utilizzare il Runtime OpenVINO per eseguire il modello. Il Runtime fornisce un'API unificata per l'inferenza su tutto l'hardware Intel supportato. Offre inoltre funzionalità avanzate come il bilanciamento del carico sull'hardware Intel e l'esecuzione asincrona. Per ulteriori informazioni sull'esecuzione dell'inferenza, consultare la Guida all'inferenza con OpenVINO Runtime.
Per impostare e utilizzare correttamente il modello con il Runtime, è necessario disporre dei file XML e BIN e di tutte le impostazioni specifiche dell'applicazione, come le dimensioni dell'input, il fattore di scala per la normalizzazione e così via.
Nell'applicazione di distribuzione, in genere si eseguono le seguenti operazioni:
- Inizializzare OpenVINO creando
core = Core()
. - Caricare il modello utilizzando il metodo
core.read_model()
metodo. - Compilare il modello utilizzando il metodo
core.compile_model()
funzione. - Preparare l'input (immagine, testo, audio, ecc.).
- Eseguire l'inferenza utilizzando
compiled_model(input_data)
.
Per passi più dettagliati e frammenti di codice, consultare la documentazione diOpenVINO o l'esercitazione API.
OpenVINO YOLOv8 Parametri di riferimento
YOLOv8 I benchmark riportati di seguito sono stati eseguiti dal team di Ultralytics su 4 diversi formati di modelli che misurano la velocità e la precisione: PyTorch, TorchScript, ONNX e OpenVINO. I benchmark sono stati eseguiti sulle GPU Flex e Arc di Intel e sulle CPU Xeon di Intel a FP32. precisione (con il half=False
argomento).
Nota
I risultati dei benchmark riportati di seguito sono di riferimento e possono variare in base all'esatta configurazione hardware e software di un sistema, nonché al carico di lavoro corrente del sistema al momento dell'esecuzione dei benchmark.
Tutti i benchmark vengono eseguiti con openvino
Python versione del pacchetto 2023.0.1.
Intel Flessibile GPU
La serie Intel® Data Center GPU Flex è una soluzione versatile e robusta progettata per il cloud visivo intelligente. Questo GPU supporta un'ampia gamma di carichi di lavoro, tra cui lo streaming multimediale, il cloud gaming, l'inferenza visiva AI e i carichi di lavoro dell'infrastruttura desktop virtuale. Si distingue per l'architettura aperta e il supporto integrato per la codifica AV1, fornendo uno stack software basato su standard per applicazioni ad alte prestazioni e con architetture diverse. La serie Flex GPU è ottimizzata per densità e qualità, offrendo elevata affidabilità, disponibilità e scalabilità.
I benchmark riportati di seguito vengono eseguiti su Intel® Data Center GPU Flex 170 con precisione FP32.
Modello | Formato | Stato | Dimensione (MB) | mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|
YOLOv8n | PyTorch | ✅ | 6.2 | 0.3709 | 21.79 |
YOLOv8n | TorchScript | ✅ | 12.4 | 0.3704 | 23.24 |
YOLOv8n | ONNX | ✅ | 12.2 | 0.3704 | 37.22 |
YOLOv8n | OpenVINO | ✅ | 12.3 | 0.3703 | 3.29 |
YOLOv8s | PyTorch | ✅ | 21.5 | 0.4471 | 31.89 |
YOLOv8s | TorchScript | ✅ | 42.9 | 0.4472 | 32.71 |
YOLOv8s | ONNX | ✅ | 42.8 | 0.4472 | 43.42 |
YOLOv8s | OpenVINO | ✅ | 42.9 | 0.4470 | 3.92 |
YOLOv8m | PyTorch | ✅ | 49.7 | 0.5013 | 50.75 |
YOLOv8m | TorchScript | ✅ | 99.2 | 0.4999 | 47.90 |
YOLOv8m | ONNX | ✅ | 99.0 | 0.4999 | 63.16 |
YOLOv8m | OpenVINO | ✅ | 49.8 | 0.4997 | 7.11 |
YOLOv8l | PyTorch | ✅ | 83.7 | 0.5293 | 77.45 |
YOLOv8l | TorchScript | ✅ | 167.2 | 0.5268 | 85.71 |
YOLOv8l | ONNX | ✅ | 166.8 | 0.5268 | 88.94 |
YOLOv8l | OpenVINO | ✅ | 167.0 | 0.5264 | 9.37 |
YOLOv8x | PyTorch | ✅ | 130.5 | 0.5404 | 100.09 |
YOLOv8x | TorchScript | ✅ | 260.7 | 0.5371 | 114.64 |
YOLOv8x | ONNX | ✅ | 260.4 | 0.5371 | 110.32 |
YOLOv8x | OpenVINO | ✅ | 260.6 | 0.5367 | 15.02 |
Questa tabella rappresenta i risultati del benchmark per cinque diversi modelli (YOLOv8n, YOLOv8s, YOLOv8m, YOLOv8l, YOLOv8x) in quattro diversi formati (PyTorch, TorchScript, ONNX, OpenVINO), fornendo lo stato, la dimensione, la metrica mAP50-95(B) e il tempo di inferenza per ogni combinazione.
Intel Arco GPU
Intel® Arc™ rappresenta l'ingresso di Intel nel mercato dedicato GPU . La serie Arc™, progettata per competere con i principali GPU produttori come AMD e NVIDIA, si rivolge sia al mercato dei portatili che a quello dei desktop. La serie comprende versioni mobili per dispositivi compatti come i laptop e versioni più grandi e potenti per i computer desktop.
La serie Arc™ è suddivisa in tre categorie: Arc™ 3, Arc™ 5 e Arc™ 7. Ogni numero indica il livello di prestazioni. Ogni categoria comprende diversi modelli e la "M" nel nome del modello GPU indica una variante mobile e integrata.
Le prime recensioni hanno lodato la serie Arc™, in particolare l'A770M GPU integrato, per le sue impressionanti prestazioni grafiche. La disponibilità della serie Arc™ varia a seconda della regione e si prevede l'imminente rilascio di altri modelli. Le GPU Intel® Arc™ offrono soluzioni ad alte prestazioni per una vasta gamma di esigenze di computing, dal gioco alla creazione di contenuti.
I benchmark riportati di seguito vengono eseguiti su Intel® Arc 770 GPU con precisione FP32.
Modello | Formato | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|
YOLOv8n | PyTorch | ✅ | 6.2 | 0.3709 | 88.79 |
YOLOv8n | TorchScript | ✅ | 12.4 | 0.3704 | 102.66 |
YOLOv8n | ONNX | ✅ | 12.2 | 0.3704 | 57.98 |
YOLOv8n | OpenVINO | ✅ | 12.3 | 0.3703 | 8.52 |
YOLOv8s | PyTorch | ✅ | 21.5 | 0.4471 | 189.83 |
YOLOv8s | TorchScript | ✅ | 42.9 | 0.4472 | 227.58 |
YOLOv8s | ONNX | ✅ | 42.7 | 0.4472 | 142.03 |
YOLOv8s | OpenVINO | ✅ | 42.9 | 0.4469 | 9.19 |
YOLOv8m | PyTorch | ✅ | 49.7 | 0.5013 | 411.64 |
YOLOv8m | TorchScript | ✅ | 99.2 | 0.4999 | 517.12 |
YOLOv8m | ONNX | ✅ | 98.9 | 0.4999 | 298.68 |
YOLOv8m | OpenVINO | ✅ | 99.1 | 0.4996 | 12.55 |
YOLOv8l | PyTorch | ✅ | 83.7 | 0.5293 | 725.73 |
YOLOv8l | TorchScript | ✅ | 167.1 | 0.5268 | 892.83 |
YOLOv8l | ONNX | ✅ | 166.8 | 0.5268 | 576.11 |
YOLOv8l | OpenVINO | ✅ | 167.0 | 0.5262 | 17.62 |
YOLOv8x | PyTorch | ✅ | 130.5 | 0.5404 | 988.92 |
YOLOv8x | TorchScript | ✅ | 260.7 | 0.5371 | 1186.42 |
YOLOv8x | ONNX | ✅ | 260.4 | 0.5371 | 768.90 |
YOLOv8x | OpenVINO | ✅ | 260.6 | 0.5367 | 19 |
Intel Xeon CPU
Intel® Xeon® CPU è un processore di livello server ad alte prestazioni progettato per carichi di lavoro complessi ed esigenti. Dal cloud computing e dalla virtualizzazione di alto livello alle applicazioni di intelligenza artificiale e apprendimento automatico, le CPU Xeon® offrono la potenza, l'affidabilità e la flessibilità necessarie per i data center di oggi.
In particolare, le CPU Xeon® offrono un'elevata densità di calcolo e scalabilità, rendendole ideali sia per le piccole imprese che per le grandi aziende. Scegliendo le CPU Intel® Xeon®, le aziende possono gestire con sicurezza le attività di elaborazione più impegnative e promuovere l'innovazione, mantenendo al contempo l'economicità e l'efficienza operativa.
I benchmark riportati di seguito vengono eseguiti su Intel® Xeon® Scalable CPU di quarta generazione con precisione FP32.
Modello | Formato | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|
YOLOv8n | PyTorch | ✅ | 6.2 | 0.3709 | 24.36 |
YOLOv8n | TorchScript | ✅ | 12.4 | 0.3704 | 23.93 |
YOLOv8n | ONNX | ✅ | 12.2 | 0.3704 | 39.86 |
YOLOv8n | OpenVINO | ✅ | 12.3 | 0.3704 | 11.34 |
YOLOv8s | PyTorch | ✅ | 21.5 | 0.4471 | 33.77 |
YOLOv8s | TorchScript | ✅ | 42.9 | 0.4472 | 34.84 |
YOLOv8s | ONNX | ✅ | 42.8 | 0.4472 | 43.23 |
YOLOv8s | OpenVINO | ✅ | 42.9 | 0.4471 | 13.86 |
YOLOv8m | PyTorch | ✅ | 49.7 | 0.5013 | 53.91 |
YOLOv8m | TorchScript | ✅ | 99.2 | 0.4999 | 53.51 |
YOLOv8m | ONNX | ✅ | 99.0 | 0.4999 | 64.16 |
YOLOv8m | OpenVINO | ✅ | 99.1 | 0.4996 | 28.79 |
YOLOv8l | PyTorch | ✅ | 83.7 | 0.5293 | 75.78 |
YOLOv8l | TorchScript | ✅ | 167.2 | 0.5268 | 79.13 |
YOLOv8l | ONNX | ✅ | 166.8 | 0.5268 | 88.45 |
YOLOv8l | OpenVINO | ✅ | 167.0 | 0.5263 | 56.23 |
YOLOv8x | PyTorch | ✅ | 130.5 | 0.5404 | 96.60 |
YOLOv8x | TorchScript | ✅ | 260.7 | 0.5371 | 114.28 |
YOLOv8x | ONNX | ✅ | 260.4 | 0.5371 | 111.02 |
YOLOv8x | OpenVINO | ✅ | 260.6 | 0.5371 | 83.28 |
Intel Nucleo CPU
La serie Intel® Core® è una gamma di processori ad alte prestazioni di Intel. La gamma comprende Core i3 (entry-level), Core i5 (mid-range), Core i7 (high-end) e Core i9 (extreme performance). Ogni serie si rivolge a esigenze di elaborazione e budget diversi, dalle attività quotidiane ai carichi di lavoro professionali più impegnativi. Con ogni nuova generazione vengono apportati miglioramenti alle prestazioni, all'efficienza energetica e alle funzionalità.
I benchmark riportati di seguito vengono eseguiti su Intel® Core® i7-13700H di 13a generazione CPU con precisione FP32.
Modello | Formato | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|
YOLOv8n | PyTorch | ✅ | 6.2 | 0.4478 | 104.61 |
YOLOv8n | TorchScript | ✅ | 12.4 | 0.4525 | 112.39 |
YOLOv8n | ONNX | ✅ | 12.2 | 0.4525 | 28.02 |
YOLOv8n | OpenVINO | ✅ | 12.3 | 0.4504 | 23.53 |
YOLOv8s | PyTorch | ✅ | 21.5 | 0.5885 | 194.83 |
YOLOv8s | TorchScript | ✅ | 43.0 | 0.5962 | 202.01 |
YOLOv8s | ONNX | ✅ | 42.8 | 0.5962 | 65.74 |
YOLOv8s | OpenVINO | ✅ | 42.9 | 0.5966 | 38.66 |
YOLOv8m | PyTorch | ✅ | 49.7 | 0.6101 | 355.23 |
YOLOv8m | TorchScript | ✅ | 99.2 | 0.6120 | 424.78 |
YOLOv8m | ONNX | ✅ | 99.0 | 0.6120 | 173.39 |
YOLOv8m | OpenVINO | ✅ | 99.1 | 0.6091 | 69.80 |
YOLOv8l | PyTorch | ✅ | 83.7 | 0.6591 | 593.00 |
YOLOv8l | TorchScript | ✅ | 167.2 | 0.6580 | 697.54 |
YOLOv8l | ONNX | ✅ | 166.8 | 0.6580 | 342.15 |
YOLOv8l | OpenVINO | ✅ | 167.0 | 0.0708 | 117.69 |
YOLOv8x | PyTorch | ✅ | 130.5 | 0.6651 | 804.65 |
YOLOv8x | TorchScript | ✅ | 260.8 | 0.6650 | 921.46 |
YOLOv8x | ONNX | ✅ | 260.4 | 0.6650 | 526.66 |
YOLOv8x | OpenVINO | ✅ | 260.6 | 0.6619 | 158.73 |
Intel Ultra 7 155H Lago delle meteore CPU
L'Intel® Ultra™ 7 155H rappresenta un nuovo punto di riferimento nel settore dell'elaborazione ad alte prestazioni, progettato per soddisfare gli utenti più esigenti, dai giocatori ai creatori di contenuti. L'Ultra™ 7 155H non è un semplice CPU; integra un potente GPU e un'avanzata NPU (Neural Processing Unit) all'interno di un unico chip, offrendo una soluzione completa per diverse esigenze di elaborazione.
Questa architettura ibrida permette all'Ultra™ 7 155H di eccellere sia nelle attività tradizionali di CPU che nei carichi di lavoro accelerati da GPU, mentre la NPU migliora i processi guidati dall'intelligenza artificiale, consentendo operazioni di apprendimento automatico più rapide ed efficienti. Questo rende l'Ultra™ 7 155H una scelta versatile per le applicazioni che richiedono grafica ad alte prestazioni, calcoli complessi e inferenza AI.
La serie Ultra™ 7 comprende più modelli, ognuno dei quali offre diversi livelli di prestazioni, con la designazione "H" che indica una variante ad alta potenza adatta a computer portatili e dispositivi compatti. I primi benchmark hanno evidenziato le eccezionali prestazioni dell'Ultra™ 7 155H, in particolare in ambienti multitasking, dove la potenza combinata di CPU, GPU e NPU porta a una notevole efficienza e velocità.
Nell'ambito dell'impegno di Intel per una tecnologia all'avanguardia, l'Ultra™ 7 155H è stato progettato per soddisfare le esigenze di elaborazione del futuro, e si prevede il rilascio di altri modelli. La disponibilità dell'Ultra™ 7 155H varia da regione a regione e continua a ricevere apprezzamenti per l'integrazione di tre potenti unità di elaborazione in un unico chip, stabilendo nuovi standard nelle prestazioni di calcolo.
I benchmark riportati di seguito vengono eseguiti su Intel® Ultra™ 7 155H con precisione FP32 e INT8.
Parametri di riferimento
Modello | Formato | Precisione | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|---|
YOLOv8n | PyTorch | FP32 | ✅ | 6.2 | 0.6381 | 35.95 |
YOLOv8n | OpenVINO | FP32 | ✅ | 12.3 | 0.6117 | 8.32 |
YOLOv8n | OpenVINO | INT8 | ✅ | 3.6 | 0.5791 | 9.88 |
YOLOv8s | PyTorch | FP32 | ✅ | 21.5 | 0.6967 | 79.72 |
YOLOv8s | OpenVINO | FP32 | ✅ | 42.9 | 0.7136 | 13.37 |
YOLOv8s | OpenVINO | INT8 | ✅ | 11.2 | 0.7086 | 9.96 |
YOLOv8m | PyTorch | FP32 | ✅ | 49.7 | 0.737 | 202.05 |
YOLOv8m | OpenVINO | FP32 | ✅ | 99.1 | 0.7331 | 28.07 |
YOLOv8m | OpenVINO | INT8 | ✅ | 25.5 | 0.7259 | 21.11 |
YOLOv8l | PyTorch | FP32 | ✅ | 83.7 | 0.7769 | 393.37 |
YOLOv8l | OpenVINO | FP32 | ✅ | 167.0 | 0.0 | 52.73 |
YOLOv8l | OpenVINO | INT8 | ✅ | 42.6 | 0.7861 | 28.11 |
YOLOv8x | PyTorch | FP32 | ✅ | 130.5 | 0.7759 | 610.71 |
YOLOv8x | OpenVINO | FP32 | ✅ | 260.6 | 0.748 | 73.51 |
YOLOv8x | OpenVINO | INT8 | ✅ | 66.0 | 0.8085 | 51.71 |
Modello | Formato | Precisione | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|---|
YOLOv8n | PyTorch | FP32 | ✅ | 6.2 | 0.6381 | 34.69 |
YOLOv8n | OpenVINO | FP32 | ✅ | 12.3 | 0.6092 | 39.06 |
YOLOv8n | OpenVINO | INT8 | ✅ | 3.6 | 0.5968 | 18.37 |
YOLOv8s | PyTorch | FP32 | ✅ | 21.5 | 0.6967 | 79.9 |
YOLOv8s | OpenVINO | FP32 | ✅ | 42.9 | 0.7136 | 82.6 |
YOLOv8s | OpenVINO | INT8 | ✅ | 11.2 | 0.7083 | 29.51 |
YOLOv8m | PyTorch | FP32 | ✅ | 49.7 | 0.737 | 202.43 |
YOLOv8m | OpenVINO | FP32 | ✅ | 99.1 | 0.728 | 181.27 |
YOLOv8m | OpenVINO | INT8 | ✅ | 25.5 | 0.7285 | 51.25 |
YOLOv8l | PyTorch | FP32 | ✅ | 83.7 | 0.7769 | 385.87 |
YOLOv8l | OpenVINO | FP32 | ✅ | 167.0 | 0.7551 | 347.75 |
YOLOv8l | OpenVINO | INT8 | ✅ | 42.6 | 0.7675 | 91.66 |
YOLOv8x | PyTorch | FP32 | ✅ | 130.5 | 0.7759 | 603.63 |
YOLOv8x | OpenVINO | FP32 | ✅ | 260.6 | 0.7479 | 516.39 |
YOLOv8x | OpenVINO | INT8 | ✅ | 66.0 | 0.8119 | 142.42 |
Modello | Formato | Precisione | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|---|
YOLOv8n | PyTorch | FP32 | ✅ | 6.2 | 0.6381 | 36.98 |
YOLOv8n | OpenVINO | FP32 | ✅ | 12.3 | 0.6103 | 16.68 |
YOLOv8n | OpenVINO | INT8 | ✅ | 3.6 | 0.5941 | 14.6 |
YOLOv8s | PyTorch | FP32 | ✅ | 21.5 | 0.6967 | 79.76 |
YOLOv8s | OpenVINO | FP32 | ✅ | 42.9 | 0.7144 | 32.89 |
YOLOv8s | OpenVINO | INT8 | ✅ | 11.2 | 0.7062 | 26.13 |
YOLOv8m | PyTorch | FP32 | ✅ | 49.7 | 0.737 | 201.44 |
YOLOv8m | OpenVINO | FP32 | ✅ | 99.1 | 0.7284 | 54.4 |
YOLOv8m | OpenVINO | INT8 | ✅ | 25.5 | 0.7268 | 30.76 |
YOLOv8l | PyTorch | FP32 | ✅ | 83.7 | 0.7769 | 385.46 |
YOLOv8l | OpenVINO | FP32 | ✅ | 167.0 | 0.7539 | 80.1 |
YOLOv8l | OpenVINO | INT8 | ✅ | 42.6 | 0.7508 | 52.25 |
YOLOv8x | PyTorch | FP32 | ✅ | 130.5 | 0.7759 | 609.4 |
YOLOv8x | OpenVINO | FP32 | ✅ | 260.6 | 0.7637 | 104.79 |
YOLOv8x | OpenVINO | INT8 | ✅ | 66.0 | 0.8077 | 64.96 |
Riprodurre i risultati
Per riprodurre i benchmark di Ultralytics su tutti i formati di esportazione, eseguite questo codice:
Esempio
Si noti che i risultati dei benchmark possono variare in base all'esatta configurazione hardware e software di un sistema, nonché al carico di lavoro corrente del sistema al momento dell'esecuzione dei benchmark. Per ottenere i risultati più affidabili, utilizzare un set di dati con un numero elevato di immagini, ad es. data='coco128.yaml' (128 val images), or
data='coco.yaml'` (5000 immagini val).
Conclusione
I risultati del benchmarking dimostrano chiaramente i vantaggi dell'esportazione del modello YOLOv8 nel formato OpenVINO . Tra diversi modelli e piattaforme hardware, il formato OpenVINO supera costantemente gli altri formati in termini di velocità di inferenza, pur mantenendo un'accuratezza comparabile.
Per la serie Intel® Data Center GPU Flex, il formato OpenVINO è stato in grado di fornire velocità di inferenza quasi 10 volte superiori al formato PyTorch originale. Sullo Xeon CPU, il formato OpenVINO è risultato due volte più veloce del formato PyTorch . L'accuratezza dei modelli è rimasta pressoché identica tra i diversi formati.
I benchmark sottolineano l'efficacia di OpenVINO come strumento per la distribuzione di modelli di deep learning. Convertendo i modelli nel formato OpenVINO , gli sviluppatori possono ottenere miglioramenti significativi delle prestazioni, rendendo più semplice l'implementazione di questi modelli nelle applicazioni reali.
Per informazioni e istruzioni più dettagliate sull'uso di OpenVINO, consultate la documentazione ufficiale di OpenVINO .
FAQ
Come si esportano i modelli YOLOv8 nel formato OpenVINO ?
L'esportazione dei modelli YOLOv8 nel formato OpenVINO può migliorare significativamente la velocità di CPU e consentire le accelerazioni di GPU e NPU sull'hardware Intel . Per l'esportazione si può usare Python o CLI come mostrato di seguito:
Esempio
Per ulteriori informazioni, consultare la documentazione sui formati di esportazione.
Quali sono i vantaggi dell'utilizzo di OpenVINO con i modelli di YOLOv8 ?
L'utilizzo del toolkit di Intel'OpenVINO con i modelli di YOLOv8 offre diversi vantaggi:
- Prestazioni: Raggiungete una velocità fino a 3 volte superiore sull'inferenza di CPU e sfruttate le GPU e le NPU di Intel per l'accelerazione.
- Ottimizzatore di modelli: Converte, ottimizza ed esegue modelli da framework popolari come PyTorch, TensorFlow e ONNX.
- Facilità d'uso: Per aiutare gli utenti a iniziare sono disponibili oltre 80 quaderni di esercitazione, compresi quelli per YOLOv8.
- Esecuzione eterogenea: Distribuzione dei modelli su vari hardware Intel con un'API unificata.
Per un confronto dettagliato delle prestazioni, visitate la nostra sezione dedicata ai benchmark.
Come posso eseguire l'inferenza utilizzando un modello YOLOv8 esportato in OpenVINO?
Dopo aver esportato un modello YOLOv8 nel formato OpenVINO , è possibile eseguire l'inferenza utilizzando Python o CLI:
Esempio
Per maggiori dettagli, consultare la documentazione sulla modalità di previsione.
Perché scegliere Ultralytics YOLOv8 rispetto ad altri modelli per l'esportazione di OpenVINO ?
Ultralytics YOLOv8 è ottimizzato per il rilevamento di oggetti in tempo reale con elevata precisione e velocità. In particolare, se combinato con OpenVINO, YOLOv8 offre:
- Velocità fino a 3 volte superiore su CPU Intel
- Implementazione senza problemi su GPU e NPU di Intel
- Accuratezza coerente e comparabile tra i vari formati di esportazione
Per un'analisi approfondita delle prestazioni, consultate i nostri benchmark dettagliati diYOLOv8 su diversi hardware.
È possibile eseguire il benchmark dei modelli YOLOv8 su diversi formati come PyTorch, ONNX e OpenVINO?
Sì, è possibile eseguire il benchmark dei modelli YOLOv8 in vari formati, tra cui PyTorch, TorchScript, ONNX e OpenVINO. Utilizzate il seguente frammento di codice per eseguire i benchmark sul set di dati scelto:
Esempio
Per i risultati dettagliati dei benchmark, consultare la sezione benchmark e la documentazione sui formati di esportazione.