Zum Inhalt springen

RĂŒckrufe

RĂŒckrufe

Ultralytics Framework unterstĂŒtzt Callbacks als Einstiegspunkte in strategischen Phasen der Modi train, val, export und predict. Jeder Callback akzeptiert eine Trainer, Validator, oder Predictor Objekt, abhĂ€ngig von der Art des Vorgangs. Alle Eigenschaften dieser Objekte findest du im Abschnitt "Referenz" in der Dokumentation.



Pass auf: Mastering Ultralytics YOLOv8 : RĂŒckrufe

Beispiele

RĂŒckgabe zusĂ€tzlicher Informationen mit Vorhersage

In diesem Beispiel wollen wir mit jedem Ergebnisobjekt das Originalbild zurĂŒckgeben. So können wir das tun

from ultralytics import YOLO


def on_predict_batch_end(predictor):
    """Handle prediction batch end by combining results with corresponding frames; modifies predictor results."""
    _, image, _, _ = predictor.batch

    # Ensure that image is a list
    image = image if isinstance(image, list) else [image]

    # Combine the prediction results with the corresponding frames
    predictor.results = zip(predictor.results, image)


# Create a YOLO model instance
model = YOLO(f"yolov8n.pt")

# Add the custom callback to the model
model.add_callback("on_predict_batch_end", on_predict_batch_end)

# Iterate through the results and frames
for result, frame in model.predict():  # or model.track()
    pass

Alle RĂŒckrufe

Hier sind alle unterstĂŒtzten Callbacks. Weitere Details findest du im Quellcode der RĂŒckrufe.

Trainer-RĂŒckrufe

RĂŒckruf Beschreibung
on_pretrain_routine_start Ausgelöst zu Beginn der Trainingsvorbereitung
on_pretrain_routine_end Ausgelöst am Ende der VorĂŒbungen
on_train_start Ausgelöst, wenn das Training beginnt
on_train_epoch_start Ausgelöst zu Beginn einer jeden Trainingsepoche
on_train_batch_start Ausgelöst zu Beginn eines jeden Trainingsstapels
optimizer_step Ausgelöst wÀhrend des Optimierungsschritts
on_before_zero_grad Ausgelöst, bevor die Gradienten auf Null gesetzt werden
on_train_batch_end Ausgelöst am Ende eines jeden Trainingsstapels
on_train_epoch_end Ausgelöst am Ende jeder Trainingsepoche
on_fit_epoch_end Ausgelöst am Ende jeder Fit-Epoche
on_model_save Wird ausgelöst, wenn das Modell gespeichert wird
on_train_end Ausgelöst, wenn der Trainingsprozess endet
on_params_update Ausgelöst, wenn Modellparameter aktualisiert werden
teardown Wird ausgelöst, wenn der Ausbildungsprozess aufgerÀumt wird

Validator RĂŒckrufe

RĂŒckruf Beschreibung
on_val_start Ausgelöst, wenn die Validierung beginnt
on_val_batch_start Ausgelöst zu Beginn einer jeden Validierungscharge
on_val_batch_end Ausgelöst am Ende jeder Validierungscharge
on_val_end Ausgelöst, wenn die Validierung endet

PrĂ€dikator-RĂŒckrufe

RĂŒckruf Beschreibung
on_predict_start Ausgelöst, wenn der Vorhersageprozess beginnt
on_predict_batch_start Ausgelöst zu Beginn jeder Vorhersagecharge
on_predict_postprocess_end Ausgelöst am Ende der Nachbearbeitung der Vorhersage
on_predict_batch_end Ausgelöst am Ende jeder Vorhersagecharge
on_predict_end Ausgelöst, wenn der Vorhersageprozess endet

Exporter RĂŒckrufe

RĂŒckruf Beschreibung
on_export_start Wird ausgelöst, wenn der Exportvorgang beginnt
on_export_end Ausgelöst, wenn der Exportvorgang endet


Created 2023-11-12, Updated 2024-06-10
Authors: glenn-jocher (7), RizwanMunawar (1), Laughing-q (1)

Kommentare