Utilisation

Le package yolo-sara fournit une API simplifiée pour l’entraînement, l’inférence et l’export de modèles YOLO.

Import des modules

from altametris.sara.yolo import YoloModel, YoloTrainer, YoloDetector, YoloExporter

Entraînement d’un modèle

Exemple d’entraînement avec YOLOv11 pour la segmentation :

from altametris.sara.yolo import YoloModel, YoloTrainer

# Créer le modèle
model = YoloModel(version="11", task="segment", size="x", pretrained=True)

# Initialiser le trainer
trainer = YoloTrainer(model=model, device="cuda")

# Lancer l'entraînement
results = trainer.train(
    dataset_config="dataset.yaml",
    epochs=100,
    batch_size=16,
    imgsz=640,
    patience=20
)

Inférence et détection

Détection d’objets sur une image :

from altametris.sara.yolo import YoloDetector

# Charger le détecteur
detector = YoloDetector(model_path="weights/best.pt", task="detect")

# Prédiction sur une image
results = detector.predict(
    source="image.jpg",
    conf=0.25,
    imgsz=640,
    save=True
)

# Accéder aux résultats
for result in results:
    boxes = result.boxes
    print(f"Détecté {len(boxes)} objets")

Inférence depuis Azure Blob Storage

from altametris.sara.yolo import YoloDetector

detector = YoloDetector(model_path="weights/best.pt", task="segment")

# Prédiction depuis un blob Azure
results = detector.predict_from_blob(
    connection_string="DefaultEndpointsProtocol=https;...",
    container_name="images",
    blob_name="test.jpg",
    conf=0.3
)

Export de modèles

Export au format ONNX pour l’optimisation :

from altametris.sara.yolo import YoloExporter

# Créer l'exporter
exporter = YoloExporter(model_path="weights/best.pt")

# Export ONNX
onnx_path = exporter.export(
    format="onnx",
    imgsz=640,
    half=True,
    simplify=True
)

print(f"Modèle exporté : {onnx_path}")

Formats d’export supportés

# ONNX (optimisé pour production)
exporter.export(format="onnx")

# TensorFlow Lite (edge devices)
exporter.export(format="tflite")

# TorchScript (PyTorch production)
exporter.export(format="torchscript")

Pour plus d’exemples

Consultez le répertoire examples/ dans le dépôt Git :

  • examples/train_yolo.py : Entraînement complet

  • examples/inference_yolo.py : Inférence et prédictions

  • examples/export_yolo.py : Export de modèles

Note

Documentation complète : yolo-sara repository