Ultralytics YOLO27:

Ultralytics Solutions:YOLO26を活用して現実世界の課題を解決#

Ultralytics Solutionsは、YOLOモデルの最先端の応用を提供し、オブジェクトカウント、ぼかし、セキュリティシステムなど、さまざまな業界で効率と精度を高める現実世界のソリューションを実現します。YOLO26が実用的で大きな効果をもたらす実装に発揮する力をご確認ください。

Ultralytics Solutionsのサムネイル



Watch: How to Run Ultralytics Solutions from the Command Line (CLI) | Ultralytics YOLO26 🚀

ソリューション#

YOLO26を活用して優れたコンピュータビジョンプロジェクトを作成できる、厳選したUltralyticsのソリューション一覧をご紹介します。

  • 分析:包括的なデータ分析を実施してパターンを発見し、YOLO26を活用した記述的分析、予測分析、処方的分析によって、十分な情報に基づく意思決定を行います。
  • 距離計算:YOLO26でバウンディングボックスの重心間の距離を計算します。空間分析に不可欠です。
  • ヒートマップ:検出ヒートマップを使用してマトリックス全体のデータ強度を可視化し、コンピュータビジョンタスクに明確な洞察をもたらします。
  • オブジェクトトラッキングを伴うインスタンスセグメンテーション:YOLO26でインスタンスセグメンテーションとオブジェクトトラッキングを実装し、正確なオブジェクト境界の把握と継続的な監視を実現します。
  • Streamlitによるライブ推論:使いやすいStreamlitインターフェースを通じて、Webブラウザーから直接、YOLO26の能力を活用したリアルタイムのオブジェクト検出を実行します。
  • オブジェクトのぼかし:YOLO26を使用してオブジェクトにぼかしを適用し、画像や動画の処理におけるプライバシーを保護します。
  • オブジェクトカウント:YOLO26でリアルタイムのオブジェクトカウントを実行する方法を学びます。ライブ動画ストリーム内のオブジェクトを正確にカウントするスキルを身につけます。
  • 領域内のオブジェクトカウント:YOLO26を使用して特定の領域内のオブジェクトをカウントし、さまざまなエリアで正確に検出します。
  • オブジェクトの切り出し:YOLO26によるオブジェクトの切り出しを習得し、画像や動画からオブジェクトを正確に抽出します。
  • 駐車場管理:YOLO26で駐車エリア内の車両の流れを整理・誘導し、スペースの利用効率とユーザー体験を最適化します。
  • キュー管理:YOLO26を使用して効率的なキュー管理システムを実装し、待ち時間を最小限に抑えて生産性を向上させます。
  • セキュリティアラームシステム:新しいオブジェクトを検出した際にアラートを発するセキュリティアラームシステムをYOLO26で構築します。特定のニーズに合わせてシステムをカスタマイズできます。
  • 類似検索OpenAI CLIPの埋め込みとコサイン類似度検索を組み合わせてインテリジェントな画像検索を実現し、「バッグを持っている人」や「移動中の車両」のような自然言語クエリを使用できます。
  • 速度推定:YOLO26とオブジェクトトラッキング技術を使用してオブジェクトの速度を推定します。自動運転車や交通監視などのアプリケーションに不可欠です。
  • ゾーン内のオブジェクトトラッキング:YOLO26を使用して動画フレーム内の特定のゾーンにあるオブジェクトを追跡し、正確かつ効率的に監視する方法を学びます。
  • VisionEyeによるオブジェクトマッピング:特定のオブジェクトに対する人間の目の焦点を模倣するシステムを開発し、コンピューターが詳細を識別して優先順位を付ける能力を高めます。
  • ワークアウト監視:YOLO26を使用してワークアウトを監視する方法を学びます。さまざまなフィットネスルーティンをリアルタイムで追跡・分析する方法を身につけます。

ソリューションの引数#

引数デフォルト説明
modelstrNoneUltralytics YOLOモデルファイルへのパスです。
regionlistまたはdictNone関心領域を定義するポイントです。(x, y)タプルのリスト、または複数の領域に対応する領域名からポイントリストへの辞書(RegionCounterのみ)を指定します。Noneの場合、領域を必要とするソリューションはあらかじめ定義されたデフォルト値にフォールバックします。
show_inboolTrueビデオストリームに入力カウントを表示するかどうかを制御するフラグです。
show_outboolTrueビデオストリームに出力カウントを表示するかどうかを制御するフラグです。
analytics_typestr'line'グラフの種類です。linebararea、またはpieを指定します。
colormapintcv2.COLORMAP_DEEPGREENヒートマップに使用するカラーマップです。
line_widthint2ソリューションが描画するボックス、キーポイント、カウントの線の太さです。
verboseboolTrue入力形状、クラス数、処理速度をフレームごとにログに記録する機能を有効にします。トラッキング処理自体は常にサイレントです。
json_filestrNoneすべての駐車座標データを含むJSONファイルへのパスです。
up_anglefloat145.0「上」ポーズの角度しきい値です。
kptslist[int]'[6, 8, 10]'ワークアウトの監視に使用する3つのキーポイントインデックスのリストです。これらのキーポイントは、腕立て伏せ、懸垂、スクワット、腹筋運動などで使用する肩、肘、手首といった身体の関節または部位に対応します。
down_angleint90「下」ポーズの角度しきい値です。
blur_ratiofloat0.5ぼかし強度の割合を調整します。値の範囲は0.1 - 1.0です。
crop_dirstr'cropped-detections'切り出した検出結果を保存するディレクトリ名です。
recordsint5セキュリティ警報システムのメールを送信するトリガーとなる検出数の合計です。
vision_pointtuple[int, int](20, 20)VisionEye Solutionを使用してビジョンがオブジェクトを追跡し、パスを描画するポイントです。
sourcestrNone入力ソース(ビデオ、RTSPなど)へのパスです。Solutionsコマンドラインインターフェース(CLI)でのみ使用できます。
figsizetuple[float, float](12.8, 7.2)ヒートマップやグラフなどの分析チャートの図のサイズです。
fpsfloat30.0速度計算に使用する1秒あたりのフレーム数です。
max_histint5速度や方向の計算のために、オブジェクトごとに追跡する履歴ポイントの最大数です。
meter_per_pixelfloat0.05ピクセル距離を実世界の単位に変換するために使用するスケーリング係数です。
max_speedint120ビジュアルオーバーレイで使用する最大速度制限です(アラートで使用)。
datastr'images'類似検索に使用する画像ディレクトリへのパスです。
imgszint640モデル推論に使用する入力画像サイズです。
トラッキング引数

ソリューションは、以下の推論およびトラッキングの引数を model.track() に渡します。

引数デフォルト説明
trackerstr'botsort.yaml'使用するトラッキングアルゴリズムを指定します。組み込みオプション:botsort.yamlbytetrack.yamlocsort.yamldeepocsort.yamlfasttrack.yamltracktrack.yaml
conffloat0.25検出の信頼度しきい値を設定します。値を下げるとより多くのオブジェクトを追跡できますが、誤検出が含まれる可能性があります。
ioufloat0.7重複する検出結果をフィルタリングするためのIntersection over Union(IoU)しきい値を設定します。
classeslistNoneクラスインデックスで結果をフィルタリングします。たとえば、classes=[0, 2, 3]は指定されたクラスのみを追跡します。
devicestrNone推論に使用するデバイスを指定します(例:cpucuda:00)。CPU、特定のGPU、その他の計算デバイスから、モデルの実行に使用するものを選択できます。
imgszint or tuple640推論対象の画像サイズ:正方形の場合は整数、または (height, width) のペアです。形状はモデルのストライドに合わせて調整されます。
max_detint300トラッキング前にフレームごとに保持される検出の最大数。高密度なシーンにおいてソリューションが処理するオブジェクトの数を制限します。
quantizeint or strNone推論精度:PyTorchおよびTorchScriptモデルの場合は 16 (FP16)または 32 /未設定(FP32);その他のフォーマットは、その成果物とランタイムが選択する精度で計算を行います。非推奨となった half フラグに置き換わるものです。
可視化引数

show_confshow_labels、その他の記載された引数を使用して、可視化をカスタマイズできます。

引数デフォルト説明
showboolFalseTrueの場合、注釈付きの画像または動画をウィンドウに表示します。開発やテスト中の即時の視覚的フィードバックに役立ちます。
show_confboolTrue各検出のラベルの横に信頼度スコアを表示します。各検出に対するモデルの確信度を確認できます。
show_labelsboolTrue可視化出力に各検出のラベルを表示します。検出されたオブジェクトをすぐに把握できます。

SolutionAnnotatorの使用#

すべてのUltralytics Solutionsは、独立したSolutionAnnotatorクラスを使用します。このクラスはメインのAnnotatorクラスを拡張しており、次のメソッドを備えています。

メソッド戻り値の型説明
draw_region()None指定したポイント、色、太さを使用して領域を描画します。
queue_counts_display()None指定した領域内のキュー数を表示します。
display_analytics()None駐車場管理の全体統計を表示します。
estimate_pose_angle()floatオブジェクトの姿勢における3つのポイント間の角度を計算します。
draw_specific_kpts()np.ndarray画像上に指定したキーポイントを描画します。
plot_workout_information()int画像上にラベル付きのテキストボックスを描画します。
plot_angle_and_count_and_stage()Noneワークアウト監視のために、角度、ステップ数、ステージを可視化します。
plot_distance_and_line()None重心間の距離を表示し、それらを線で接続します。
display_objects_labels()Noneオブジェクトのクラスラベルでバウンディングボックスにアノテーションを付けます。
sweep_annotator()None垂直スイープラインとオプションのラベルを可視化します。
visioneye()Noneオブジェクトの重心を視覚的な「目」のポイントにマッピングして接続します。
adaptive_label()Noneバウンディングボックスの中央に円形または長方形の背景ラベルを描画します。

SolutionResultsの操作#

Similarity Searchを除き、各Solutionの呼び出しはSolutionResultsオブジェクトを返します。

  • オブジェクトカウントでは、結果にin_countout_countclasswise_countが含まれます。
SolutionResults
import cv2

from ultralytics import solutions

im0 = cv2.imread("path/to/img")

region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]

counter = solutions.ObjectCounter(
    show=True,  # display the output
    region=region_points,  # pass region points
    model="yolo26n.pt",  # model="yolo26n-obb.pt" for object counting with OBB model.
    # classes=[0, 2],  # count specific classes i.e. person and car with COCO pretrained model.
    # tracker="botsort.yaml"  # Choose trackers i.e "bytetrack.yaml"
)
results = counter(im0)
print(results.in_count)  # display in_counts
print(results.out_count)  # display out_counts
print(results.classwise_count)  # display classwise_count

SolutionResultsオブジェクトには次の属性があります。

属性説明
plot_imnp.ndarrayカウント、ぼかし効果、ソリューション固有の拡張などの視覚的オーバーレイを含む画像です。
in_countint動画ストリーム内の定義されたゾーンに入ったことが検出されたオブジェクトの総数です。
out_countint動画ストリーム内の定義されたゾーンから出たことが検出されたオブジェクトの総数です。
classwise_countDict[str, int]高度な分析のために、クラスごとの入場・退出オブジェクト数を記録する辞書です。
queue_countint事前定義されたキューまたは待機エリア内に現在存在するオブジェクト数です(キュー管理に適しています)。
workout_countlist[int]AI Gymにおけるトラックごとのワークアウト反復回数です(現在追跡中の個人1人につき1エントリ)。
workout_anglelist[float]AI Gymにおけるトラックごとのエクササイズ角度です(現在追跡中の個人1人につき1エントリ)。
workout_stagelist[str]AI Gymにおけるトラックごとの現在のワークアウトステージです(現在追跡中の個人1人につき1エントリ)。
pixels_distancefloat2つのオブジェクトまたはポイント(例:バウンディングボックス)間のピクセルベースの距離です(距離計算に適しています)。
available_slotsint監視対象エリアの空きスロット数です(駐車場管理に適しています)。
filled_slotsint監視対象エリアの使用中スロット数です(駐車場管理に適しています)。
email_sentbool通知またはアラートメールが正常に送信されたかどうかを示します(セキュリティアラームに適しています)。
total_tracksint動画分析中に観測された一意のオブジェクトトラックの総数です。
region_countsDict[str, int]ユーザー定義の領域またはゾーン内のオブジェクト数です。
speed_dictDict[str, float]計算されたオブジェクト速度をトラックごとに記録した辞書で、速度分析に役立ちます。
total_crop_objectsintObjectCropperソリューションによって生成された切り出し済みオブジェクト画像の総数です。
speedDict[str, float]トラッキングおよびソリューション処理のパフォーマンス指標を含む辞書です。

詳細については、SolutionResultsクラスのドキュメントを参照してください。

CLIによるソリューションの使用#

コマンド情報

ほとんどのソリューションは、コマンドラインインターフェイスを使用して直接使用できます。

構文

yolo SOLUTIONS SOLUTION_NAME ARGS
  • SOLUTIONSは必須のキーワードです。
  • SOLUTION_NAMEは次のいずれかです:['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye', 'region', 'security', 'parking']
  • ARGS(オプション)は、デフォルト設定を上書きするためのカスタムarg=valueペアです。たとえば、show_in=Trueを指定します。
yolo solutions count show=True # for object counting

yolo solutions count source="path/to/video.mp4" # specify video file path

ソリューションに貢献する#

コミュニティからの貢献を歓迎します。Ultralytics YOLOの特定の分野に精通しており、まだソリューションで扱われていない内容がある場合は、ぜひ知識を共有してください。ガイドを執筆することは、コミュニティに貢献し、ドキュメントをより包括的で使いやすいものにするための優れた方法です。

始めるには、Pull Request(PR)をオープンする方法に関するガイドラインをまとめた貢献ガイドをお読みください 🛠️。皆様からの貢献をお待ちしています。

力を合わせて、Ultralytics YOLOエコシステムをより堅牢で多用途なものにしていきましょう 🙏!

FAQ#

  • Ultralytics YOLO26は、高度なオブジェクト検出機能を活用することで、リアルタイムのオブジェクトカウントに使用できます。オブジェクトカウントの詳細なガイドに従って、ライブ動画ストリーム分析用にYOLO26を設定できます。YOLO26をインストールし、モデルを読み込み、動画フレームを処理してオブジェクトを動的にカウントするだけです。

  • Ultralytics YOLO26は、リアルタイムのオブジェクト検出とアラート機能を提供することで、セキュリティシステムを強化します。YOLO26を活用すると、監視エリアで新しいオブジェクトが検出された際にアラートを発するセキュリティアラームシステムを構築できます。YOLO26を使用した堅牢なセキュリティ監視のためのセキュリティアラームシステムの設定方法をご確認ください。

  • Ultralytics YOLO26は、キュー内の人を正確にカウントして追跡することで、キュー管理システムを大幅に改善し、待ち時間の短縮とサービス効率の最適化に役立ちます。キュー管理の詳細なガイドに従って、効果的なキューの監視と分析にYOLO26を実装する方法を学んでください。

  • はい、Ultralytics YOLO26は、フィットネスルーティンをリアルタイムで追跡・分析することで、ワークアウトの監視に効果的に使用できます。これにより、エクササイズのフォームとパフォーマンスを正確に評価できます。YOLO26を使用したAI搭載ワークアウト監視システムの設定方法については、ワークアウト監視のガイドをご覧ください。

  • Ultralytics YOLO26は、指定したエリア全体のデータ強度を可視化するヒートマップを生成し、活動や関心の高い領域を強調表示できます。この機能は、さまざまなコンピュータビジョンタスクのパターンや傾向を把握する際に特に役立ちます。包括的なデータ分析と可視化のためにYOLO26でヒートマップを作成・使用する方法について詳しく学んでください。

コメント