linux-ai-npu-inference.py
Utilise la bibliothèque OpenVINO pour accélérer l'inférence IA sur le NPU intégré (15-16 TOPS).
Requiert l'installation d'OpenVINO Runtime. Les modèles doivent être convertis au format IR (Intermediate Representation) via le OpenVINO Model Optimizer. Le NPU Intel est détecté automatiquement. Vérifiez les drivers NPU installés dans Linux/Windows. Ce code est un squelette nécessitant un modèle pré-entraîné.
linux-ai-npu-inference.py
import cv2
import numpy as np
from openvino.runtime import Core
# Charger le modèle (exemple : yolov8n.onnx converti en IR OpenVINO)
# Assurez-vous d'avoir installé openvino: pip install openvino
core = Core()
# Sélectionner le NPU si disponible, sinon CPU
available_devices = core.available_devices
print(f"Dispositifs disponibles: {available_devices}")
device = 'NPU' if 'NPU' in available_devices else 'CPU'
model_path = 'yolov8n.xml' # Chemin vers le modèle IR
if not os.path.exists(model_path):
print("Modèle non trouvé. Convertissez .onnx en .xml/.bin avec ocv.")
else:
compiled_model = core.compile_model(model_path, device)
input_layer = compiled_model.input(0)
output_layer = compiled_model.output(0)
# Prétraitement image (exemple simplifié)
img = cv2.imread('test.jpg')
img_resized = cv2.resize(img, (640, 640))
input_data = img_resized.transpose(2, 0, 1).astype(np.float32) / 255.0
input_data = np.expand_dims(input_data, axis=0)
# Inférence
result = compiled_model([input_data])[output_layer]
print(f"Inférence terminée sur {device}")