linux-ai-npu-inference.py
Uses the OpenVINO library to accelerate AI inference on the integrated NPU (15-16 TOPS).
Requires OpenVINO Runtime installation. Models must be converted to IR (Intermediate Representation) format via OpenVINO Model Optimizer. The Intel NPU is detected automatically. Check installed NPU drivers in Linux/Windows. This code is a skeleton requiring a pre-trained model.
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}")