Intel OpenVINO Exportation
Dans ce guide, nous couvrons l'exportation YOLO11 modèles au format OpenVINO , qui peuvent fournir jusqu'à 3x d'accélération CPU , ainsi qu'une accélération YOLO inférence sur Intel Matériel GPU et NPU .
OpenVINO, abréviation de Open Visual Inference & Neural Network Optimization toolkit, est une boîte à outils complète pour l'optimisation et le déploiement de modèles d'inférence d'IA. Bien que le nom contienne Visual, OpenVINO prend également en charge diverses tâches supplémentaires, notamment le langage, l'audio, les séries temporelles, etc.
Regarder : Comment exporter et optimiser un modèle Ultralytics YOLOv8 pour l'inférence avec OpenVINO.
Exemples d'utilisation
Exporter un modèle YOLO11n vers OpenVINO formater et exécuter l'inférence avec le modèle exporté.
Exemple
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"
Arguments d'exportation
Argument | Type | Défaut | Description |
---|---|---|---|
format |
str |
'openvino' |
Format cible pour le modèle exporté, définissant la compatibilité avec divers environnements de déploiement. |
imgsz |
int ou tuple |
640 |
Taille de l'image souhaitée pour l'entrée du modèle. Il peut s'agir d'un entier pour les images carrées ou d'un tuple (height, width) pour les dimensions spécifiques. |
half |
bool |
False |
Permet la quantification FP16 (demi-précision), réduisant la taille du modèle et accélérant potentiellement l'inférence sur le matériel pris en charge. |
int8 |
bool |
False |
Active la quantification INT8, ce qui permet de comprimer davantage le modèle et d'accélérer l'inférence avec une perte de précision minimale, principalement pour les appareils périphériques. |
dynamic |
bool |
False |
Permet des tailles d'entrée dynamiques, améliorant ainsi la flexibilité dans la gestion de dimensions d'image variables. |
nms |
bool |
False |
Ajoute la suppression des valeurs non maximales (NMS), essentielle pour un post-traitement précis et efficace de la détection. |
batch |
int |
1 |
Spécifie la taille du lot d'inférence du modèle exporté ou le nombre maximum d'images que le modèle exporté traitera simultanément en predict mode. |
data |
str |
'coco8.yaml' |
Chemin d'accès à la ensemble de données fichier de configuration (par défaut : coco8.yaml ), essentielle pour la quantification. |
fraction |
float |
1.0 |
Spécifie la fraction de l'ensemble de données à utiliser pour l'étalonnage de la quantification INT8. Permet de calibrer sur un sous-ensemble du jeu de données complet, utile pour les expériences ou lorsque les ressources sont limitées. Si elle n'est pas spécifiée lorsque la fonction INT8 est activée, le jeu de données complet sera utilisé. |
Pour plus de détails sur le processus d'exportation, consultez la page de documentationUltralytics sur l'exportation.
Avertissement
OpenVINO™ est compatible avec la plupart des processeurs Intel® mais pour garantir des performances optimales :
-
Vérifiez la prise en charge d'OpenVINO™ Vérifiez si votre puce Intel® est officiellement prise en charge par OpenVINO™ à l'aide de la liste de compatibilité d' Intel .
-
Identifiez votre accélérateur Déterminez si votre processeur comprend une NPU (Neural Processing Unit) intégrée ou GPU (intégré GPU ) en consultant le guide matériel d' Intel .
-
Installez les derniers pilotes Si votre puce prend en charge un NPU ou GPU mais qu'OpenVINO™ ne le détecte pas, vous devrez peut-être installer ou mettre à jour les pilotes associés. Suivez les instructions d'installation des pilotes pour activer l'accélération complète.
En suivant ces trois étapes, vous pouvez garantir qu’OpenVINO™ fonctionne de manière optimale sur votre matériel Intel®.
Avantages de la OpenVINO
- Performance: OpenVINO offre une inférence de haute performance en utilisant la puissance des CPU Intel , des GPU intégrés et discrets et des FPGA.
- Prise en charge de l'exécution hétérogène: OpenVINO fournit une API permettant d'écrire une fois et de déployer sur tout matériel Intel pris en charge (CPU, GPU, FPGA, VPU, etc.).
- Optimiseur de modèle: OpenVINO fournit un optimiseur de modèle qui importe, convertit et optimise les modèles à partir de frameworks d'apprentissage profond populaires tels que PyTorch, TensorFlowTensorFlow Lite, Keras, ONNX, PaddlePaddle, et Caffe.
- Facilité d'utilisation: la boîte à outils est livrée avec plus de 80 cahiers de travaux dirigés (y compris YOLOv8 optimization) qui enseignent différents aspects de la boîte à outils.
OpenVINO Structure des exportations
Lorsque vous exportez un modèle au format OpenVINO , vous obtenez un répertoire contenant les éléments suivants :
- Fichier XML: Décrit la topologie du réseau.
- Fichier BIN: Contient les données binaires de weights and biases .
- Fichier de correspondance: Contient la correspondance entre les tenseurs de sortie du modèle original et les noms de OpenVINO tensor .
Vous pouvez utiliser ces fichiers pour lancer l'inférence avec le moteur d'inférence OpenVINO .
Utilisation de OpenVINO Export dans le déploiement
Une fois votre modèle exporté avec succès vers le OpenVINO format, vous disposez de deux options principales pour exécuter l'inférence :
-
Utiliser le
ultralytics
package, qui fournit une API de haut niveau et encapsule le OpenVINO Durée d'exécution. -
Utiliser le natif
openvino
package pour un contrôle plus avancé ou personnalisé du comportement d'inférence.
Inférence avec Ultralytics
Le ultralytics Le package vous permet d'exécuter facilement des inférences à l'aide des données exportées OpenVINO modèle via la méthode Predict. Vous pouvez également spécifier l'appareil cible (par exemple, intel:gpu
, intel:npu
, intel:cpu
) en utilisant l'argument device.
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
Cette approche est idéale pour le prototypage ou le déploiement rapide lorsque vous n’avez pas besoin d’un contrôle total sur le pipeline d’inférence.
Inférence avec OpenVINO Durée d'exécution
Le openvino Runtime fournit une API unifiée pour l'inférence sur tous les éléments pris en charge Intel matériel. Il offre également des fonctionnalités avancées comme l'équilibrage de charge sur Intel Exécution matérielle et asynchrone. Pour plus d'informations sur l'exécution de l'inférence, consultez les notebooks YOLO11 .
N'oubliez pas que vous aurez besoin des fichiers XML et BIN ainsi que de tous les paramètres spécifiques à l'application tels que la taille de l'entrée, le facteur d'échelle pour la normalisation, etc. pour configurer et utiliser correctement le modèle avec le Runtime.
Dans votre application de déploiement, vous effectuez généralement les étapes suivantes :
- Initialiser OpenVINO en créant
core = Core()
. - Charger le modèle à l'aide de la fonction
core.read_model()
méthode. - Compiler le modèle à l'aide de la fonction
core.compile_model()
fonction. - Préparer l'entrée (image, texte, audio, etc.).
- Effectuer une inférence à l'aide de
compiled_model(input_data)
.
Pour des étapes plus détaillées et des extraits de code, reportez-vous à la documentationOpenVINO ou au didacticiel API.
OpenVINO YOLO11 Repères
Le Ultralytics équipe évaluée YOLO11 sur différents formats de modèles et précision , évaluant la vitesse et la précision sur différents Intel appareils compatibles avec OpenVINO .
Note
Les résultats de l'analyse comparative ci-dessous sont donnés à titre de référence et peuvent varier en fonction de la configuration matérielle et logicielle exacte d'un système, ainsi que de la charge de travail actuelle du système au moment de l'exécution de l'analyse comparative.
Tous les points de repère sont exécutés avec openvino
Python version du paquet 2025.1.0.
Intel Cœur de métier CPU
La série Intel® Core® est une gamme de processeurs haute performance de Intel. La gamme comprend le Core i3 (entrée de gamme), le Core i5 (milieu de gamme), le Core i7 (haut de gamme) et le Core i9 (performances extrêmes). Chaque série répond à des besoins informatiques et à des budgets différents, qu'il s'agisse de tâches quotidiennes ou de charges de travail professionnelles exigeantes. Chaque nouvelle génération apporte des améliorations en termes de performances, d'efficacité énergétique et de fonctionnalités.
Les tests ci-dessous fonctionnent sur un processeur Intel® Core® i9-12900KS de 12e génération CPU avec une précision FP32.

Modèle | Format | Statut | Taille (MB) | métriques/mAP50-95(B) | Temps d'inférence (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 |
Intel® Core™ Ultra
La série Intel® Core™ Ultra™ représente une nouvelle référence en matière de calcul haute performance, conçue pour répondre aux exigences évolutives des utilisateurs modernes, des joueurs et créateurs aux professionnels exploitant l'IA. Cette gamme nouvelle génération est bien plus qu'une simple gamme traditionnelle. CPU série; elle combine de puissants CPU cœurs, hautes performances intégrées GPU capacités et une unité de traitement neuronal (NPU) dédiée au sein d'une seule puce, offrant une solution unifiée pour des charges de travail informatiques diverses et intensives.
Au cœur de l'architecture Intel® Core Ultra™ se trouve une conception hybride qui permet des performances exceptionnelles dans les tâches de traitement traditionnelles, GPU - des charges de travail accélérées et des opérations pilotées par l'IA. L'intégration du NPU améliore l'inférence de l'IA sur l'appareil, permettant un apprentissage automatique et un traitement des données plus rapides et plus efficaces pour un large éventail d'applications.
La famille Core Ultra™ comprend différents modèles adaptés à différents besoins de performances, avec des options allant des modèles écoénergétiques aux variantes haute puissance marquées de la mention « H », idéales pour les ordinateurs portables et les formats compacts exigeant une puissance de calcul importante. Sur toute la gamme, les utilisateurs bénéficient de la synergie de CPU , GPU , et l'intégration NPU, offrant une efficacité, une réactivité et des capacités multitâches remarquables.
Dans le cadre de Intel Grâce à l'innovation continue de, la série Core Ultra™ établit une nouvelle norme pour l'informatique d'avenir. Avec plusieurs modèles disponibles et d'autres à venir, cette série souligne Intel L'engagement de 's à fournir des solutions de pointe pour la prochaine génération d'appareils intelligents améliorés par l'IA.
Les tests ci-dessous fonctionnent sur Intel® Core™ Ultra™ 7 258V avec une précision FP32 et INT8.
Intel® Core™ Ultra™ 7 258 V
Critères de référence
Modèle | Format | Précision | Statut | Taille (MB) | métriques/mAP50-95(B) | Temps d'inférence (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 |

Modèle | Format | Précision | Statut | Taille (MB) | métriques/mAP50-95(B) | Temps d'inférence (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 |

Modèle | Format | Précision | Statut | Taille (MB) | métriques/mAP50-95(B) | Temps d'inférence (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 |

Reproduire nos résultats
Pour reproduire les benchmarks Ultralytics ci-dessus sur tous les formats d' exportation, exécutez ce code :
Exemple
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
Notez que les résultats de l'évaluation comparative peuvent varier en fonction de la configuration matérielle et logicielle exacte d'un système, ainsi que de la charge de travail actuelle du système au moment de l'exécution de l'évaluation comparative. Pour obtenir les résultats les plus fiables, utilisez un ensemble de données contenant un grand nombre d'images, c'est-à-dire un ensemble de données contenant un grand nombre d'images, c'est-à-dire un ensemble de données contenant un grand nombre d'images. data='coco128.yaml'
(128 images val), ou data='coco.yaml'
(5000 images de valeur).
Conclusion
Les résultats de l’analyse comparative démontrent clairement les avantages de l’exportation des YOLO11 modèle à la OpenVINO format. Sur différents modèles et plateformes matérielles, le OpenVINO Le format surpasse systématiquement les autres formats en termes de vitesse d'inférence tout en conservant une précision comparable.
Les benchmarks soulignent l'efficacité de OpenVINO en tant qu'outil de déploiement de modèles d'apprentissage profond. En convertissant les modèles au format OpenVINO , les développeurs peuvent obtenir des améliorations significatives des performances, ce qui facilite le déploiement de ces modèles dans des applications réelles.
Pour plus d'informations et d'instructions sur l'utilisation de OpenVINO, veuillez vous référer à la documentation officielle de OpenVINO .
FAQ
Comment exporter YOLO11 modèles à OpenVINO format?
Exportation YOLO11 modèles à la OpenVINO le format peut considérablement améliorer CPU vitesse et activation GPU et les accélérations NPU sur Intel matériel. Pour exporter, vous pouvez utiliser Python ou CLI comme indiqué ci-dessous :
Exemple
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/'
Pour plus d'informations, consultez la documentation sur les formats d'exportation.
Quels sont les avantages de l'utilisation OpenVINO avec YOLO11 des modèles ?
En utilisant Intel 's OpenVINO boîte à outils avec YOLO11 Les modèles offrent plusieurs avantages :
- Performance: Accélération jusqu'à trois fois plus rapide de l'inférence sur CPU et utilisation des GPU et NPU Intel pour l'accélération.
- Optimiseur de modèle: Convertissez, optimisez et exécutez des modèles à partir de cadres populaires tels que PyTorch, TensorFlow, et ONNX.
- Facilité d'utilisation : Plus de 80 cahiers de tutoriels sont disponibles pour aider les utilisateurs à démarrer, y compris ceux pour YOLO11 .
- Exécution hétérogène: Déployer des modèles sur différents matériels Intel avec une API unifiée.
Pour des comparaisons de performances détaillées, consultez notre section "benchmarks".
Comment puis-je exécuter une inférence à l'aide d'un YOLO11 modèle exporté vers OpenVINO ?
Après avoir exporté un modèle YOLO11n vers OpenVINO format, vous pouvez exécuter l'inférence en utilisant Python ou CLI :
Exemple
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'
Reportez-vous à notre documentation sur le mode prédictif pour plus de détails.
Pourquoi devrais-je choisir Ultralytics YOLO11 par rapport aux autres modèles pour OpenVINO exporter?
Ultralytics YOLO11 est optimisé pour la détection d'objets en temps réel avec une précision et une rapidité élevées. Plus précisément, lorsqu'il est combiné avec OpenVINO , YOLO11 fournit :
- Jusqu'à 3 fois plus rapide sur les processeurs Intel
- Déploiement transparent sur les GPU et NPU Intel
- Précision cohérente et comparable dans les différents formats d'exportation
Pour une analyse approfondie des performances, consultez nos benchmarks YOLO11 détaillés sur différents matériels.
Puis-je effectuer une analyse comparative YOLO11 modèles sur différents formats tels que PyTorch , ONNX , et OpenVINO ?
Oui, vous pouvez effectuer un benchmark YOLO11 modèles dans divers formats, y compris PyTorch , TorchScript , ONNX , et OpenVINO Utilisez l'extrait de code suivant pour exécuter des tests de performance sur l'ensemble de données choisi :
Exemple
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
Pour obtenir des résultats détaillés, reportez-vous à la section "benchmarks" et à la documentation sur les formats d'exportation.