Ultralytics YOLO26による分析#
Ultralytics YOLO26によるアナリティクスでは、object detectionとトラッキングの結果がリアルタイムのチャートに変換されるため、ビデオフレーム全体でオブジェクト数がどのように変化するかをフレーム単位で確認できます。このガイドでは、折れ線グラフ、棒グラフ、円グラフ、面グラフという4つのdata visualizationのタイプを取り上げ、共通のPythonとCLIのサンプルを使用してそれらを切り替える方法を示します。
Watch: How to generate Analytical Graphs using Ultralytics | Line Graphs, Bar Plots, Area and Pie Charts
可視化のサンプル#
| 折れ線グラフ | 棒グラフ | 円グラフ |
|---|---|---|
![]() | ![]() | ![]() |
検出データを可視化する理由とは?#
- 折れ線グラフは、短期間および長期間にわたる変化の追跡や、同じ期間における複数のグループ間の変化の比較に最適です。
- 棒グラフは、異なるカテゴリ間での数量の比較や、カテゴリとその数値の関係を示すのに適しています。
- 円グラフは、カテゴリ間の比率を説明したり、全体に対する割合を示すのに効果的です。
- 面グラフは折れ線グラフの下部を塗りつぶすため、クラスごとのオブジェクト数の推移を一目で把握しやすくなります。
分析グラフの生成#
ビデオを Analytics ソリューションに渡し、analytics_type でチャートを選択します。このソリューションはすべてのフレームで検出とトラッキングを実行し、(デフォルトで)1280×720のチャートを描画して、出力ビデオに直接書き込むことができます。単一の引数で、"line"、"bar"、"pie"、および "area" の間を切り替えます。
yolo solutions analytics show=True
# Pass the source
yolo solutions analytics source="path/to/video.mp4"
# Generate the pie chart
yolo solutions analytics analytics_type="pie" show=True
# Generate the bar plots
yolo solutions analytics analytics_type="bar" show=True
# Generate the area plots
yolo solutions analytics analytics_type="area" show=TrueAnalyticsの引数#
以下は、Analyticsの引数をまとめた表です。
| 引数 | タイプ | デフォルト | 説明 |
|---|---|---|---|
model | str | None | Ultralytics YOLOモデルファイルへのパス。 |
analytics_type | str | 'line' | グラフのタイプ、すなわち line、bar、area、または pie。 |
Analytics ソリューションで、さまざまな track 引数を活用することもできます。
| 引数 | タイプ | デフォルト | 説明 |
|---|---|---|---|
tracker | str | 'tracktrack.yaml' | 使用するトラッキングアルゴリズムを指定します。ビルトインオプション: botsort.yaml、bytetrack.yaml、ocsort.yaml、deepocsort.yaml、fasttrack.yaml、tracktrack.yaml。 |
conf | float | 0.1 | 検出の信頼度しきい値を設定します。低い値を設定するとより多くの物体を追跡できますが、誤検知が含まれる可能性があります。 |
iou | float | 0.7 | 重なり合う検出をフィルタリングするためのIntersection over Union (IoU) 閾値を設定します。 |
classes | list | None | クラスインデックスによって結果をフィルターします。たとえば、classes=[0, 2, 3]は指定されたクラスのみを追跡します。 |
verbose | bool | True | 追跡結果の表示を制御し、追跡された物体の視覚的な出力を行います。 |
device | str | None | 推論用のデバイスを指定します(例: cpu、cuda:0、または0)。ユーザーはモデルの実行にCPU、特定のGPU、またはその他の計算デバイスを選択できます。 |
さらに、以下の可視化引数がサポートされています。
| 引数 | タイプ | デフォルト | 説明 |
|---|---|---|---|
show | bool | False | True の場合、注釈付きの画像または動画をウィンドウに表示します。開発やテスト中の即座な視覚的フィードバックに役立ちます。 |
line_width | int or None | None | バウンディングボックスの線の太さを指定します。None の場合、画像のサイズに基づいて線の太さが自動的に調整されます。明瞭さのための視覚的なカスタマイズを提供します。 |
結論#
効果的なデータ分析を行うためには、さまざまなタイプの可視化をいつ、どのように使用するかを理解することが不可欠です。折れ線グラフ、棒グラフ、および円グラフは、データのストーリーをより明確かつ効果的に伝えるのに役立つ基本的なツールです。Ultralytics YOLO26 Analyticsソリューションは、object detectionとトラッキングの結果からこれらの可視化を生成するための合理化された方法を提供し、視覚データから意味のあるインサイトを簡単に抽出できるようにします。
よくある質問 (FAQ)#
Ultralytics YOLO26 Analyticsを使用して折れ線グラフを作成するにはどうすればよいですか?#
Ultralytics YOLO26 Analyticsを使用して折れ線グラフを作成するには、以下の手順に従ってください。
- YOLO26モデルを読み込み、ビデオファイルを開きます。
analytics_type="line"を使用してAnalyticsクラスを初期化します。- ビデオフレームをループ処理し、フレームごとにソリューションを呼び出して、オブジェクト数などのデータで折れ線グラフを更新します。
- チャートを保存するために、
results.plot_imを出力ビデオに書き込みます。
開始点として上記のPythonのサンプルを使用してください。これはすでに完全なフレームループを実行しており、折れ線グラフがデフォルトの analytics_type です。
Ultralytics YOLO26を使用して棒グラフを作成する利点は何ですか?#
Ultralytics YOLO26を使用して棒グラフを作成することには、いくつかの利点があります。
- リアルタイムデータ可視化: object detectionの結果を動的な更新のために棒グラフにシームレスに統合します。
- 使いやすさ: シンプルなAPIと関数により、実装やデータ可視化が容易です。
- カスタマイズ性: タイトル、ラベル、色などを個別の要件に合わせてカスタマイズ可能です。
- 効率性: 大量のデータを効率的に処理し、ビデオ処理中にリアルタイムでグラフを更新できます。
棒グラフを生成するには、上記の Python の例で analytics_type="bar" を設定します。フレームループの残りの部分は同じです。プレビューについては、Visual Samples セクションを参照してください。
データ可視化プロジェクトで円グラフを作成するためにUltralytics YOLO26を使用すべき理由は何ですか?#
Ultralytics YOLO26が円グラフ作成に適している理由は以下の通りです。
- 物体検出との統合: 物体検出結果を直接円グラフに統合し、即座に洞察を得ることができます。
- ユーザーフレンドリーなAPI: 最小限のコードで設定および使用が可能です。
- カスタマイズ可能: 色やラベルなど、多様なカスタマイズオプションがあります。
- リアルタイム更新: ビデオ分析プロジェクトに最適な、リアルタイムでのデータ処理と可視化が可能です。
円グラフを生成するには、上記の Python の例で analytics_type="pie" を設定します。詳細については、ガイド内の Visual Samples セクションを参照してください。
Ultralytics YOLO26を使用して物体を追跡し、可視化を動的に更新することはできますか?#
はい。トラッキングは Analytics ソリューションに組み込まれており、複数のオブジェクトをリアルタイムで追跡し、すべてのフレームで追跡されたオブジェクトのデータからチャートを更新するため、折れ線グラフ、棒グラフ、円グラフ、および面グラフのすべてがライブのカウントを反映します。これはまさに、上記のPythonのサンプルにおけるフレームループが行うことです。基盤となるトラッキング機能については、トラッキングセクションを参照してください。
Ultralytics YOLO26がOpenCVやTensorFlowなどの他の物体検出ソリューションと異なる点は何ですか?#
Ultralytics YOLO26がOpenCVやTensorFlowのような他の物体検出ソリューションと一線を画す理由は、以下の通り複数あります。
- 最先端の精度: YOLO26は、object detection、インスタンスセグメンテーション、セマンティックセグメンテーション、および分類の各タスクにおいて優れた精度を提供します。
- 使いやすさ: ユーザーフレンドリーなAPIにより、大規模なコーディングを必要とせず、迅速な実装と統合が可能です。
- リアルタイム性能: 高速推論に最適化されており、リアルタイムアプリケーションに適しています。
- 多様な用途: 多目的追跡、カスタムモデルトレーニング、ONNX、TensorRT、CoreMLなどの様々なフォーマットへのエクスポートを含む様々なタスクをサポートしています。
- 包括的なドキュメント: ユーザーをすべてのステップで導くための詳細なドキュメントとブログリソース。
より詳細な比較とユースケースについては、Ultralyticsブログをご覧ください。


