Intel OpenVINO Esportazione
In questa guida, trattiamo l'esportazione YOLO11 modelli nel formato OpenVINO , che può fornire una velocità CPU fino a 3 volte superiore, oltre ad accelerare YOLO inferenza su Intel Hardware GPU e 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 YOLO11n in OpenVINO formattare ed eseguire l'inferenza con il modello esportato.
Esempio
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Export the model
model.export(format="openvino") # creates 'yolo11n_openvino_model/'
# Load the exported OpenVINO model
ov_model = YOLO("yolo11n_openvino_model/")
# Run inference
results = ov_model("https://ultralytics.com/images/bus.jpg")
# Run inference with specified device, available devices: ["intel:gpu", "intel:npu", "intel:cpu"]
results = ov_model("https://ultralytics.com/images/bus.jpg", device="intel:gpu")
# Export a YOLO11n PyTorch model to OpenVINO format
yolo export model=yolo11n.pt format=openvino # creates 'yolo11n_openvino_model/'
# Run inference with the exported model
yolo predict model=yolo11n_openvino_model source='https://ultralytics.com/images/bus.jpg'
# Run inference with specified device, available devices: ["intel:gpu", "intel:npu", "intel:cpu"]
yolo predict model=yolo11n_openvino_model source='https://ultralytics.com/images/bus.jpg' device="intel:gpu"
Argomenti di esportazione
Argomento | Tipo | Predefinito | Descrizione |
---|---|---|---|
format |
str |
'openvino' |
Formato di destinazione per il modello esportato, che definisce la compatibilità con vari ambienti di distribuzione. |
imgsz |
int o tuple |
640 |
Dimensione desiderata dell'immagine per l'input del modello. Può essere un numero intero per le immagini quadrate o una tupla (height, width) per le dimensioni specifiche. |
half |
bool |
False |
Abilita la quantizzazione FP16 (a mezza precisione), riducendo le dimensioni del modello e potenzialmente accelerando l'inferenza sull'hardware supportato. |
int8 |
bool |
False |
Attiva la quantizzazione INT8, comprimendo ulteriormente il modello e velocizzando l'inferenza con una perdita minima di precisione, soprattutto per i dispositivi edge. |
dynamic |
bool |
False |
Consente di inserire dimensioni dinamiche, migliorando la flessibilità nella gestione di immagini di dimensioni diverse. |
nms |
bool |
False |
Aggiunge la soppressione non massima (NMS), essenziale per una post-elaborazione accurata ed efficiente del rilevamento. |
batch |
int |
1 |
Specifica la dimensione dell'inferenza batch del modello di esportazione o il numero massimo di immagini che il modello esportato elaborerà contemporaneamente in predict modalità. |
data |
str |
'coco8.yaml' |
Percorso verso il set di dati file di configurazione (predefinito: coco8.yaml ), essenziale per la quantizzazione. |
fraction |
float |
1.0 |
Specifica la frazione del set di dati da utilizzare per la calibrazione della quantizzazione INT8. Consente di calibrare su un sottoinsieme dell'intero set di dati, utile per gli esperimenti o quando le risorse sono limitate. Se non viene specificato con INT8 abilitato, verrà utilizzato l'intero set di dati. |
Per maggiori dettagli sul processo di esportazione, visitare la pagina di documentazioneUltralytics sull'esportazione.
Avvertenze
OpenVINO™ è compatibile con la maggior parte dei processori Intel®, ma per garantire prestazioni ottimali:
-
Verifica il supporto di OpenVINO™ Controlla se il tuo chip Intel® è ufficialmente supportato da OpenVINO™ utilizzando l'elenco di compatibilità di Intel .
-
Identifica il tuo acceleratore Determina se il tuo processore include una NPU (Neural Processing Unit) integrata o GPU (integrato GPU ) consultando la guida hardware di Intel .
-
Installa i driver più recenti Se il tuo chip supporta una NPU o GPU ma OpenVINO™ non lo rileva, potrebbe essere necessario installare o aggiornare i driver associati. Seguire le istruzioni di installazione dei driver per abilitare l'accelerazione completa.
Seguendo questi tre passaggi, puoi assicurarti che OpenVINO™ funzioni in modo ottimale sul tuo hardware Intel®.
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 che il modello è stato esportato correttamente nel OpenVINO formato, hai due opzioni principali per eseguire l'inferenza:
-
Utilizzare il
ultralytics
pacchetto, che fornisce un'API di alto livello e racchiude il OpenVINO Durata. -
Utilizzare il nativo
openvino
pacchetto per un controllo più avanzato o personalizzato sul comportamento dell'inferenza.
Inferenza con Ultralytics
IL ultralytics il pacchetto consente di eseguire facilmente l'inferenza utilizzando l'esportato OpenVINO modello tramite il metodo predict. È anche possibile specificare il dispositivo di destinazione (ad esempio, intel:gpu
, intel:npu
, intel:cpu
) utilizzando l'argomento dispositivo.
from ultralytics import YOLO
# Load the exported OpenVINO model
ov_model = YOLO("yolo11n_openvino_model/") # the path of your exported OpenVINO model
# Run inference with the exported model
ov_model.predict(device="intel:gpu") # specify the device you want to run inference on
Questo approccio è ideale per la prototipazione o l'implementazione rapida quando non è necessario il controllo completo sulla pipeline di inferenza.
Inferenza con OpenVINO Durata
IL openvino Runtime fornisce un'API unificata per l'inferenza su tutti i supportati Intel hardware. Fornisce inoltre funzionalità avanzate come il bilanciamento del carico su Intel Hardware ed esecuzione asincrona. Per ulteriori informazioni sull'esecuzione dell'inferenza, fare riferimento ai notebook YOLO11 .
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 YOLO11 Punti di riferimento
IL Ultralytics squadra sottoposta a benchmark YOLO11 attraverso vari formati di modello e precisione , valutando velocità e accuratezza su diversi Intel dispositivi compatibili con OpenVINO .
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 2025.1.0.
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 sottostanti sono basati su Intel® Core® i9-12900KS di 12a generazione CPU con precisione FP32.

Modello | Formato | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|
YOLO11n | PyTorch | ✅ | 5.4 | 0.61 | 28.73 |
YOLO11n | TorchScript | ✅ | 10.5 | 0.6082 | 36.27 |
YOLO11n | ONNX | ✅ | 10.2 | 0.6082 | 19.62 |
YOLO11n | OpenVINO | ✅ | 10.4 | 0.6082 | 12.72 |
YOLO11s | PyTorch | ✅ | 18.4 | 0.7526 | 35.28 |
YOLO11s | TorchScript | ✅ | 36.6 | 0.74 | 54.57 |
YOLO11s | ONNX | ✅ | 36.3 | 0.74 | 37.91 |
YOLO11s | OpenVINO | ✅ | 36.4 | 0.74 | 34.38 |
YOLO11m | PyTorch | ✅ | 38.8 | 0.7598 | 82.46 |
YOLO11m | TorchScript | ✅ | 77.3 | 0.7643 | 121.66 |
YOLO11m | ONNX | ✅ | 76.9 | 0.7643 | 87.21 |
YOLO11m | OpenVINO | ✅ | 77.1 | 0.7643 | 78.94 |
YOLO11l | PyTorch | ✅ | 49.0 | 0.743 | 111.51 |
YOLO11l | TorchScript | ✅ | 97.7 | 0.725 | 161.36 |
YOLO11l | ONNX | ✅ | 97.0 | 0.725 | 109.23 |
YOLO11l | OpenVINO | ✅ | 97.3 | 0.725 | 100.42 |
YOLO11x | PyTorch | ✅ | 109.3 | 0.8288 | 241.93 |
YOLO11x | TorchScript | ✅ | 218.1 | 0.8308 | 307.04 |
YOLO11x | ONNX | ✅ | 217.5 | 0.8308 | 205.75 |
YOLO11x | OpenVINO | ✅ | 217.8 | 0.8308 | 211.69 |
Processore Intel® Core™ Ultra
La serie Intel® Core™ Ultra™ rappresenta un nuovo punto di riferimento nel computing ad alte prestazioni, progettata per soddisfare le esigenze in continua evoluzione degli utenti moderni, dai gamer e creatori di contenuti ai professionisti che sfruttano l'intelligenza artificiale. Questa gamma di nuova generazione è più di una semplice soluzione tradizionale. CPU serie; combina potenti CPU core, alte prestazioni integrate GPU capacità e un'unità di elaborazione neurale (NPU) dedicata all'interno di un singolo chip, offrendo una soluzione unificata per carichi di lavoro di elaborazione diversificati e intensivi.
Il cuore dell'architettura Intel® Core Ultra™ è un design ibrido che consente prestazioni eccezionali nelle attività di elaborazione tradizionali, GPU Carichi di lavoro accelerati e operazioni basate sull'intelligenza artificiale. L'inclusione della NPU migliora l'inferenza dell'intelligenza artificiale sul dispositivo, consentendo un apprendimento automatico e un'elaborazione dei dati più rapidi ed efficienti in un'ampia gamma di applicazioni.
La famiglia Core Ultra™ comprende diversi modelli pensati per diverse esigenze prestazionali, con opzioni che spaziano da modelli a basso consumo energetico a varianti ad alta potenza contrassegnate dalla sigla "H", ideali per laptop e dispositivi compatti che richiedono una potenza di elaborazione elevata. In tutta la gamma, gli utenti beneficiano della sinergia di CPU , GPU e integrazione NPU, garantendo efficienza, reattività e capacità multitasking straordinarie.
Come parte di Intel Grazie alla continua innovazione di, la serie Core Ultra™ stabilisce un nuovo standard per l'informatica a prova di futuro. Con diversi modelli disponibili e altri in arrivo, questa serie sottolinea Intel l'impegno di fornire soluzioni all'avanguardia per la prossima generazione di dispositivi intelligenti dotati di intelligenza artificiale.
I benchmark riportati di seguito sono eseguiti su Intel® Core™ Ultra™ 7 258V con precisione FP32 e INT8.
Processore Intel® Core™ Ultra™ 7 258V
Parametri di riferimento
Modello | Formato | Precisione | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|---|
YOLO11n | PyTorch | FP32 | ✅ | 5.4 | 0.6316 | 39.52 |
YOLO11n | OpenVINO | FP32 | ✅ | 10.4 | 0.6112 | 19.59 |
YOLO11n | OpenVINO | INT8 | ✅ | 3.3 | 0.6219 | 14.43 |
YOLO11s | PyTorch | FP32 | ✅ | 18.4 | 0.7469 | 104.09 |
YOLO11s | OpenVINO | FP32 | ✅ | 36.4 | 0.7414 | 16.274 |
YOLO11s | OpenVINO | INT8 | ✅ | 9.8 | 0.7086 | 19.436 |
YOLO11m | PyTorch | FP32 | ✅ | 38.8 | 0.7642 | 286.281 |
YOLO11m | OpenVINO | FP32 | ✅ | 77.1 | 0.7642 | 18.69 |
YOLO11m | OpenVINO | INT8 | ✅ | 20.2 | 0.7445 | 21.74 |
YOLO11l | PyTorch | FP32 | ✅ | 49.0 | 0.7401 | 352.25 |
YOLO11l | OpenVINO | FP32 | ✅ | 97.3 | 0.7264 | 31.90 |
YOLO11l | OpenVINO | INT8 | ✅ | 25.7 | 0.7376 | 25.64 |
YOLO11x | PyTorch | FP32 | ✅ | 109.3 | 0.8467 | 731.15 |
YOLO11x | OpenVINO | FP32 | ✅ | 217.8 | 0.8308 | 45.12 |
YOLO11x | OpenVINO | INT8 | ✅ | 55.9 | 0.8156 | 32.57 |

Modello | Formato | Precisione | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|---|
YOLO11n | PyTorch | FP32 | ✅ | 5.4 | 0.6316 | 39.52 |
YOLO11n | OpenVINO | FP32 | ✅ | 10.4 | 0.6082 | 30.21 |
YOLO11n | OpenVINO | INT8 | ✅ | 3.3 | 0.6256 | 17.98 |
YOLO11s | PyTorch | FP32 | ✅ | 18.4 | 0.7469 | 104.09 |
YOLO11s | OpenVINO | FP32 | ✅ | 36.4 | 0.7400 | 81.09 |
YOLO11s | OpenVINO | INT8 | ✅ | 9.8 | 0.7488 | 41.04 |
YOLO11m | PyTorch | FP32 | ✅ | 38.8 | 0.7642 | 286.28 |
YOLO11m | OpenVINO | FP32 | ✅ | 77.1 | 0.7642 | 204.31 |
YOLO11m | OpenVINO | INT8 | ✅ | 20.2 | 0.7504 | 109.51 |
YOLO11l | PyTorch | FP32 | ✅ | 49.0 | 0.7401 | 352.25 |
YOLO11l | OpenVINO | FP32 | ✅ | 97.3 | 0.7249 | 319.97 |
YOLO11l | OpenVINO | INT8 | ✅ | 25.7 | 0.7318 | 136.44 |
YOLO11x | PyTorch | FP32 | ✅ | 109.3 | 0.8467 | 731.15 |
YOLO11x | OpenVINO | FP32 | ✅ | 217.8 | 0.8308 | 742.98 |
YOLO11x | OpenVINO | INT8 | ✅ | 55.9 | 0.819 | 288.02 |

Modello | Formato | Precisione | Stato | Dimensione (MB) | metriche/mAP50-95(B) | Tempo di inferenza (ms/im) |
---|---|---|---|---|---|---|
YOLO11n | PyTorch | FP32 | ✅ | 5.4 | 0.6316 | 39.52 |
YOLO11n | OpenVINO | FP32 | ✅ | 10.4 | 0.6096 | 11.58 |
YOLO11n | OpenVINO | INT8 | ✅ | 3.3 | 0.6380 | 12.60 |
YOLO11s | PyTorch | FP32 | ✅ | 18.4 | 0.7469 | 104.09 |
YOLO11s | OpenVINO | FP32 | ✅ | 36.4 | 0.7430 | 15.15 |
YOLO11s | OpenVINO | INT8 | ✅ | 9.8 | 0.744 | 21.22 |
YOLO11m | PyTorch | FP32 | ✅ | 38.8 | 0.7642 | 286.28 |
YOLO11m | OpenVINO | FP32 | ✅ | 77.1 | 0.7642 | 32.92 |
YOLO11m | OpenVINO | INT8 | ✅ | 20.2 | 0.7445 | 21.74 |
YOLO11l | PyTorch | FP32 | ✅ | 49.0 | 0.7401 | 352.25 |
YOLO11l | OpenVINO | FP32 | ✅ | 97.3 | 0.7264 | 43.15 |
YOLO11l | OpenVINO | INT8 | ✅ | 25.7 | 0.7313 | 42.27 |
YOLO11x | PyTorch | FP32 | ✅ | 109.3 | 0.8467 | 731.15 |
YOLO11x | OpenVINO | FP32 | ✅ | 217.8 | 0.8308 | 74.33 |
YOLO11x | OpenVINO | INT8 | ✅ | 55.9 | 0.8211 | 59.41 |

Riprodurre i risultati
Per riprodurre i benchmark di Ultralytics su tutti i formati di esportazione, eseguite questo codice:
Esempio
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Benchmark YOLO11n speed and accuracy on the COCO8 dataset for all export formats
results = model.benchmark(data="coco8.yaml")
# Benchmark YOLO11n speed and accuracy on the COCO8 dataset for all export formats
yolo benchmark model=yolo11n.pt data=coco8.yaml
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 immagini val), oppure data='coco.yaml'
(5000 immagini val).
Conclusione
I risultati del benchmarking dimostrano chiaramente i vantaggi dell'esportazione YOLO11 modello per il OpenVINO formato. Su diversi modelli e piattaforme hardware, il OpenVINO il formato supera costantemente gli altri formati in termini di velocità di inferenza, mantenendo al contempo una precisione comparabile.
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 faccio a esportare? YOLO11 modelli a OpenVINO formato?
Esportazione YOLO11 modelli per il OpenVINO il formato può migliorare significativamente CPU velocità e abilitazione GPU e accelerazioni NPU su Intel hardware. Per esportare, puoi utilizzare Python O CLI come mostrato di seguito:
Esempio
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Export the model
model.export(format="openvino") # creates 'yolo11n_openvino_model/'
# Export a YOLO11n PyTorch model to OpenVINO format
yolo export model=yolo11n.pt format=openvino # creates 'yolo11n_openvino_model/'
Per ulteriori informazioni, consultare la documentazione sui formati di esportazione.
Quali sono i vantaggi dell'utilizzo OpenVINO con YOLO11 modelli?
Utilizzo Intel 'S OpenVINO kit di strumenti con YOLO11 i modelli offrono 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 : sono disponibili oltre 80 quaderni tutorial per aiutare gli utenti a iniziare, compresi quelli per YOLO11 .
- 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 YOLO11 modello esportato in OpenVINO ?
Dopo aver esportato un modello YOLO11n in OpenVINO formato, è possibile eseguire l'inferenza utilizzando Python O CLI :
Esempio
from ultralytics import YOLO
# Load the exported OpenVINO model
ov_model = YOLO("yolo11n_openvino_model/")
# Run inference
results = ov_model("https://ultralytics.com/images/bus.jpg")
# Run inference with the exported model
yolo predict model=yolo11n_openvino_model source='https://ultralytics.com/images/bus.jpg'
Per maggiori dettagli, consultare la documentazione sulla modalità di previsione.
Perché dovrei scegliere Ultralytics YOLO11 rispetto ad altri modelli per OpenVINO esportare?
Ultralytics YOLO11 è ottimizzato per il rilevamento di oggetti in tempo reale con elevata precisione e velocità. In particolare, se combinato con OpenVINO , YOLO11 fornisce:
- 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, consulta i nostri benchmark YOLO11 dettagliati su hardware diverso.
Posso effettuare il benchmark YOLO11 modelli su diversi formati come PyTorch , ONNX , E OpenVINO ?
Sì, puoi effettuare il benchmark YOLO11 modelli in vari formati tra cui PyTorch , TorchScript , ONNX , E OpenVINO Utilizza il seguente frammento di codice per eseguire benchmark sul set di dati scelto:
Esempio
from ultralytics import YOLO
# Load a YOLO11n PyTorch model
model = YOLO("yolo11n.pt")
# Benchmark YOLO11n speed and [accuracy](https://www.ultralytics.com/glossary/accuracy) on the COCO8 dataset for all export formats
results = model.benchmark(data="coco8.yaml")
# Benchmark YOLO11n speed and accuracy on the COCO8 dataset for all export formats
yolo benchmark model=yolo11n.pt data=coco8.yaml
Per i risultati dettagliati dei benchmark, consultare la sezione benchmark e la documentazione sui formati di esportazione.