コンテンツへスキップ

コールバック

コールバック

Ultralytics フレームワークは、train、val、export、predictモードの戦略的な段階でのエントリーポイントとしてコールバックをサポートしている。各コールバックは Trainer, Validatorあるいは Predictor オブジェクトのすべてのプロパティは、ド キュメントのReferenceセクションに記載されている。これらのオブジェクトのすべてのプロパティは、docsのReferenceセクションにあります。



見るんだ: MasteringUltralytics YOLOv8 : コールバック

予測で追加情報を返す

この例では、各結果オブジェクトで元のフレームを返したい。その方法は以下の通りだ。

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

すべてのコールバック

以下はサポートされているすべてのコールバックです。詳細はコールバックのソースコードを参照してください。

トレーナー・コールバック

コールバック 説明
on_pretrain_routine_start プレトレーニング・ルーティンの開始時にトリガーされる
on_pretrain_routine_end プレトレーニング・ルーティンの終了時にトリガーされる
on_train_start トレーニング開始時に発動
on_train_epoch_start 各トレーニングエポックの開始時にトリガーされる。
on_train_batch_start 各トレーニングバッチの開始時にトリガーされる。
optimizer_step オプティマイザー・ステップ中にトリガーされる
on_before_zero_grad 勾配がゼロになる前にトリガーされる
on_train_batch_end 各トレーニングバッチの終了時にトリガーされる。
on_train_epoch_end 各トレーニングエポックの終了時にトリガーされる
on_fit_epoch_end 各フィットエポックの終了時にトリガーされる
on_model_save モデルの保存時にトリガーされる
on_train_end トレーニング終了時に発動
on_params_update モデルのパラメータが更新されたときにトリガーされる
teardown トレーニングプロセスのクリーンアップ時にトリガーされる

バリデータのコールバック

コールバック 説明
on_val_start 検証開始時にトリガーされる
on_val_batch_start 各検証バッチの開始時にトリガーされる。
on_val_batch_end 各検証バッチの終了時にトリガーされる。
on_val_end 検証終了時に発動

予測コールバック

コールバック 説明
on_predict_start 予測プロセス開始時にトリガーされる
on_predict_batch_start 各予測バッチの開始時にトリガーされる
on_predict_postprocess_end 予測後処理の終了時にトリガーされる
on_predict_batch_end 各予測バッチの終了時にトリガーされる
on_predict_end 予測プロセス終了時にトリガーされる

エクスポート・コールバック

コールバック 説明
on_export_start 輸出プロセス開始時にトリガーされる
on_export_end 輸出プロセス終了時にトリガーされる


作成日:2023-11-12 更新日:2024-05-03
作成者:glenn-jocher(4),RizwanMunawar(1),Laughing-q(1)

コメント