linux-ai-npu-inference.py
Utiliza la biblioteca OpenVINO para acelerar la inferencia de IA en la NPU integrada (15-16 TOPS).
Requiere la instalación de OpenVINO Runtime. Los modelos deben convertirse al formato IR (Representación Intermedia) mediante OpenVINO Model Optimizer. La NPU de Intel se detecta automáticamente. Verifique los controladores NPU instalados en Linux/Windows. Este código es un esqueleto que requiere un modelo preentrenado.
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}")