高度な データ可視化: Ultralytics YOLO26 を使用したヒートマップ 🚀
ヒートマップの紹介
Ultralytics YOLO26 で生成されたヒートマップは、複雑なデータを鮮やかな色分けされたマトリックスに変換します。この視覚ツールは、色のスペクトルを使用して様々なデータ値を表現し、暖色系は高い強度を、寒色系は低い値を示します。ヒートマップは、複雑なデータパターン、相関関係、異常を可視化することに優れており、多様な分野でデータ解釈に対する親しみやすく魅力的なアプローチを提供します。
Watch: Heatmaps using Ultralytics YOLO26
データ分析にヒートマップが選ばれる理由は何ですか?
- 直感的なデータ分布の可視化: ヒートマップは、データの集中度と分布の理解を単純化し、複雑なデータセットを理解しやすい視覚的形式に変換します。
- 効率的なパターン検出: データをヒートマップ形式で可視化することで、傾向、クラスター、異常値の発見が容易になり、より迅速な分析と洞察が可能になります。
- 空間分析と意思決定の強化: ヒートマップは空間的な関係性を明確にする上で役立ち、ビジネスインテリジェンス、環境調査、都市計画などの分野における意思決定プロセスを支援します。
実社会での応用例
| 交通機関 | 小売 |
|---|---|
![]() | ![]() |
| Ultralytics YOLO26 交通量ヒートマップ | Ultralytics YOLO26 小売店ヒートマップ |
# Run a heatmap example
yolo solutions heatmap show=True
# Pass a source video
yolo solutions heatmap source="path/to/video.mp4"
# Pass a custom colormap
yolo solutions heatmap colormap=cv2.COLORMAP_INFERNO
# Heatmaps + object counting
yolo solutions heatmap region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]"Heatmap() の引数
Heatmap の引数を示す表は以下の通りです。
| 引数 | タイプ | デフォルト | 説明 |
|---|---|---|---|
model | str | None | Ultralytics YOLO モデルファイルへのパス。 |
colormap | int | cv2.COLORMAP_DEEPGREEN | ヒートマップに使用するカラーマップ。 |
show_in | bool | True | ビデオストリーム上にインカウントを表示するかどうかを制御するフラグ。 |
show_out | bool | True | ビデオストリーム上にアウトカウントを表示するかどうかを制御するフラグ。 |
region | list | '[(20, 400), (1260, 400)]' | カウント対象となる領域を定義する点のリスト。 |
You can also apply different track arguments in the Heatmap solution.
| 引数 | タイプ | デフォルト | 説明 |
|---|---|---|---|
tracker | str | 'botsort.yaml' | 使用するトラッキングアルゴリズムを指定します(例:bytetrack.yamlやbotsort.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の場合、画像サイズに基づいて線幅が自動調整されます。明確化のための視覚的なカスタマイズが可能です。 |
show_conf | bool | True | ラベルとともに、各検出結果の信頼度スコアを表示します。各検出に対するモデルの確信度を把握できます。 |
show_labels | bool | True | 視覚的出力において、各検出結果にラベルを表示します。検出されたオブジェクトの即時理解を可能にします。 |
ヒートマップのカラーマップ (COLORMAPs)
| カラーマップ名 | 説明 |
|---|---|
cv::COLORMAP_AUTUMN | オータムカラーマップ |
cv::COLORMAP_BONE | ボーンカラーマップ |
cv::COLORMAP_JET | ジェットカラーマップ |
cv::COLORMAP_WINTER | ウィンターカラーマップ |
cv::COLORMAP_RAINBOW | レインボーカラーマップ |
cv::COLORMAP_OCEAN | オーシャンカラーマップ |
cv::COLORMAP_SUMMER | サマーカラーマップ |
cv::COLORMAP_SPRING | スプリングカラーマップ |
cv::COLORMAP_COOL | クールカラーマップ |
cv::COLORMAP_HSV | HSV (色相、彩度、明度) カラーマップ |
cv::COLORMAP_PINK | ピンクカラーマップ |
cv::COLORMAP_HOT | ホットカラーマップ |
cv::COLORMAP_PARULA | パルラカラーマップ |
cv::COLORMAP_MAGMA | マグマカラーマップ |
cv::COLORMAP_INFERNO | インフェルノカラーマップ |
cv::COLORMAP_PLASMA | プラズマカラーマップ |
cv::COLORMAP_VIRIDIS | ヴィリディスカラーマップ |
cv::COLORMAP_CIVIDIS | シヴィディスカラーマップ |
cv::COLORMAP_TWILIGHT | トワイライトカラーマップ |
cv::COLORMAP_TWILIGHT_SHIFTED | シフトトワイライトカラーマップ |
cv::COLORMAP_TURBO | ターボカラーマップ |
cv::COLORMAP_DEEPGREEN | ディープグリーンカラーマップ |
これらのカラーマップは、異なる色の表現を用いてデータを可視化する際によく使用されます。
Ultralytics YOLO26 におけるヒートマップの仕組み
Ultralytics YOLO26 の ヒートマップソリューション は、ObjectCounter クラスを拡張して、ビデオストリーム内の移動パターンを生成および可視化します。初期化されると、このソリューションは空のヒートマップレイヤーを作成し、オブジェクトがフレーム内を移動するにつれてそれが更新されます。
検出された各オブジェクトに対して、このソリューションは以下の処理を行います:
- YOLO26 のトラッキング機能を使用してフレーム間でのオブジェクトを追跡する
- オブジェクトの位置に合わせてヒートマップの強度を更新する
- 選択されたカラーマップを適用して強度値を可視化する
- 元のフレームに色付きヒートマップを重ね合わせる
その結果、時間が経つにつれて蓄積される動的な可視化が作成され、ビデオデータ内の交通パターン、群衆の動き、その他の空間的行動が明らかになります。
FAQ
Ultralytics YOLO26 はどのようにしてヒートマップを生成し、どのような利点があるのでしょうか?
Ultralytics YOLO26 は、複雑なデータを異なる色調でデータ強度を表現するカラーコード化されたマトリックスに変換することでヒートマップを生成します。ヒートマップにより、データのパターン、相関関係、異常を可視化することが容易になります。暖色系は高い値を示し、寒色系は低い値を示します。主な利点には、データ分布の直感的な可視化、効率的なパターン検出、意思決定のための空間分析の強化が含まれます。詳細や構成オプションについては、ヒートマップ構成セクションを参照してください。
Ultralytics YOLO26 を使用して、オブジェクトのトラッキングとヒートマップの生成を同時に実行できますか?
はい、Ultralytics YOLO26 はオブジェクトのトラッキングとヒートマップの生成を同時にサポートしています。これは、オブジェクトトラッキングモデルと統合された Heatmap ソリューションを通じて実現できます。そのためには、ヒートマップオブジェクトを初期化し、YOLO26 のトラッキング機能を使用する必要があります。以下に簡単な例を示します:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
heatmap = solutions.Heatmap(colormap=cv2.COLORMAP_PARULA, show=True, model="yolo26n.pt")
while cap.isOpened():
success, im0 = cap.read()
if not success:
break
results = heatmap(im0)
cap.release()
cv2.destroyAllWindows()さらなるガイダンスについては、トラッキングモード ページをご確認ください。
Ultralytics YOLO26 のヒートマップは、OpenCV や Matplotlib などの他のデータ可視化ツールと何が違うのですか?
Ultralytics YOLO26 のヒートマップは、オブジェクト検出およびトラッキングモデルとの統合を目的として特別に設計されており、リアルタイムデータ分析のためのエンドツーエンドのソリューションを提供します。OpenCV や Matplotlib といった一般的な可視化ツールとは異なり、YOLO26 のヒートマップはパフォーマンスと自動処理に最適化されており、永続的なトラッキング、減衰係数の調整、リアルタイムビデオオーバーレイなどの機能をサポートしています。YOLO26 のユニークな機能の詳細については、Ultralytics YOLO26 の紹介をご覧ください。
Ultralytics YOLO26 を使用して、特定のオブジェクトクラスのみをヒートマップで可視化するにはどうすればよいですか?
YOLO モデルの track() メソッドで目的のクラスを指定することで、特定のオブジェクトクラスを可視化できます。例えば、車と人だけを可視化したい場合(クラスインデックスが 0 と 2 と仮定)、classes パラメーターをそれに応じて設定できます。
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
heatmap = solutions.Heatmap(show=True, model="yolo26n.pt", classes=[0, 2])
while cap.isOpened():
success, im0 = cap.read()
if not success:
break
results = heatmap(im0)
cap.release()
cv2.destroyAllWindows()なぜ企業はデータ分析におけるヒートマップ生成に Ultralytics YOLO26 を選ぶべきなのですか?
Ultralytics YOLO26 は、高度なオブジェクト検出とリアルタイムのヒートマップ生成をシームレスに統合しており、より効果的にデータを可視化したい企業にとって理想的な選択肢です。主な利点には、直感的なデータ分布の可視化、効率的なパターン検出、意思決定を改善するための空間分析の強化が含まれます。さらに、永続的なトラッキング、カスタマイズ可能なカラーマップ、様々なエクスポート形式のサポートといった YOLO26 の最先端機能は、包括的なデータ分析において TensorFlow や OpenCV などの他のツールよりも優れています。ビジネスでの応用例の詳細については、Ultralytics プランをご覧ください。

