linux-ai-npu-inference.py

BIOSTAR EdgeComp MS-U320: Fanless Intel Wildcat Lake Industrial Mini PC · File : linux-ai-npu-inference.py · Language : python · Use case : Exécuter une inférence d'image simple en utilisant le NPU Intel Core 3/5 (OpenVINO).

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}")

← Back to the board