Ultralytics YOLO26 を使用した速度推定#
速度推定とは?#
速度推定とは、特定の状況における物体の移動速度を計算するプロセスであり、コンピュータービジョンアプリケーションで広く使用されています。Ultralytics YOLO26を使用すると、物体追跡と距離および時間のデータを組み合わせて物体の速度を計算できるようになり、交通監視や監視システムなどのタスクに役立ちます。速度推定の精度は、さまざまなアプリケーションの効率と信頼性に直接影響するため、インテリジェントシステムの進歩やリアルタイムの意思決定プロセスにおける重要な要素となっています。
Watch: Speed Estimation using Ultralytics YOLO26
速度推定について詳しく知りたい場合は、ブログ記事コンピュータービジョンプロジェクトにおける速度推定のためのUltralytics YOLOをご覧ください。
速度推定のメリット#
- 効率的な交通制御: 正確な速度推定は、交通の流れの管理、安全性の向上、道路の渋滞緩和に役立ちます。
- 高精度な自律ナビゲーション: 自動運転車などの自律システムでは、信頼性の高い速度推定によって、安全で正確な車両ナビゲーションを実現できます。
- 監視セキュリティの強化: 監視分析における速度推定は、通常とは異なる行動や潜在的な脅威の特定に役立ち、セキュリティ対策の有効性を高めます。
実際の用途#
| 交通 | 交通 |
|---|---|
![]() | ![]() |
| Ultralytics YOLO26を使用した道路上の速度推定 | Ultralytics YOLO26を使用した橋上の速度推定 |
速度は推定値です
速度は推定値であり、完全に正確とは限りません。また、推定結果はカメラの仕様や関連する要因によって変動する場合があります。
YOLO26で速度を推定する#
SpeedEstimatorソリューションは、フレーム間で各物体を追跡し、動画のフレームレート(fps)と実世界のスケール(meter_per_pixel)を使用して、ピクセル変位を速度に変換します。meter_per_pixelをカメラの構成に合わせて調整し、max_speedを使用して、ノイズの多い追跡結果から外れ値を除外してください。
# Run a speed example
yolo solutions speed show=True
# Pass a source video
yolo solutions speed source="path/to/video.mp4"
# Adjust meter per pixel value based on camera configuration
yolo solutions speed meter_per_pixel=0.05SpeedEstimatorの引数#
以下にSpeedEstimatorの引数を示します。
| 引数 | 型 | デフォルト | 説明 |
|---|---|---|---|
model | str | None | Ultralytics YOLOモデルファイルへのパスです。 |
fps | float | 30.0 | 速度計算に使用する1秒あたりのフレーム数です。 |
max_hist | int | 5 | 速度や方向の計算のために、オブジェクトごとに追跡する履歴ポイントの最大数です。 |
meter_per_pixel | float | 0.05 | ピクセル距離を実世界の単位に変換するために使用するスケーリング係数です。 |
max_speed | int | 120 | ビジュアルオーバーレイで使用する最大速度制限です(アラートで使用)。 |
line_width | int | 2 | ソリューションが描画するボックス、キーポイント、カウントの線の太さです。 |
verbose | bool | True | 入力形状、クラス数、処理速度をフレームごとにログに記録する機能を有効にします。トラッキング処理自体は常にサイレントです。 |
SpeedEstimatorソリューションでは、trackパラメーターを使用できます。
| 引数 | 型 | デフォルト | 説明 |
|---|---|---|---|
tracker | str | 'botsort.yaml' | 使用するトラッキングアルゴリズムを指定します。組み込みオプション:botsort.yaml、bytetrack.yaml、ocsort.yaml、deepocsort.yaml、fasttrack.yaml、tracktrack.yaml。 |
conf | float | 0.25 | 検出の信頼度しきい値を設定します。値を下げるとより多くのオブジェクトを追跡できますが、誤検出が含まれる可能性があります。 |
iou | float | 0.7 | 重複する検出結果をフィルタリングするためのIntersection over Union(IoU)しきい値を設定します。 |
classes | list | None | クラスインデックスで結果をフィルタリングします。たとえば、classes=[0, 2, 3]は指定されたクラスのみを追跡します。 |
device | str | None | 推論に使用するデバイスを指定します(例:cpu、cuda:0、0)。CPU、特定のGPU、その他の計算デバイスから、モデルの実行に使用するものを選択できます。 |
imgsz | int or tuple | 640 | 推論対象の画像サイズ:正方形の場合は整数、または (height, width) のペアです。形状はモデルのストライドに合わせて調整されます。 |
max_det | int | 300 | トラッキング前にフレームごとに保持される検出の最大数。高密度なシーンにおいてソリューションが処理するオブジェクトの数を制限します。 |
quantize | int or str | None | 推論精度:PyTorchおよびTorchScriptモデルの場合は 16 (FP16)または 32 /未設定(FP32);その他のフォーマットは、その成果物とランタイムが選択する精度で計算を行います。非推奨となった half フラグに置き換わるものです。 |
さらに、次の可視化オプションがサポートされています。
| 引数 | 型 | デフォルト | 説明 |
|---|---|---|---|
show | bool | False | Trueの場合、注釈付きの画像または動画をウィンドウに表示します。開発やテスト中の即時の視覚的フィードバックに役立ちます。 |
show_conf | bool | True | 各検出のラベルの横に信頼度スコアを表示します。各検出に対するモデルの確信度を確認できます。 |
show_labels | bool | True | 可視化出力に各検出のラベルを表示します。検出されたオブジェクトをすぐに把握できます。 |
FAQ#
Ultralytics YOLO26による物体速度の推定では、物体検出と追跡を組み合わせます。モデルは各フレームで物体を検出し、フレーム間で追跡した後、フレーム間の移動距離をフレームレートと
meter_per_pixelスケールを使用して速度に変換します。上記のPython例では、この一連の処理を実行します。動画を渡し、meter_per_pixelをカメラに合わせて調整してください。詳しくは、公式ブログ記事をご覧ください。Ultralytics YOLO26を使用した速度推定の精度は、物体追跡の品質、動画の解像度とフレームレート、環境要因など、複数の要因によって異なります。速度推定器は信頼性の高い推定値を提供しますが、フレーム処理速度の変動や物体のオクルージョンにより、100%正確とは限りません。
注: 可能な場合は、常に誤差の範囲を考慮し、推定値を正解データで検証してください。
精度をさらに向上させるためのヒントについては、引数
SpeedEstimatorのセクションをご覧ください。

