Ultralytics Solutions:YOLO11を活用して現実世界の問題を解決する
Ultralytics Solutionsは、YOLOモデルの最先端のアプリケーションを提供し、オブジェクトのカウント、ブラー処理、セキュリティシステムなどの現実世界のソリューションを提供し、多様な業界での効率と精度を向上させます。実用的で影響力のある実装のためのYOLO11のパワーを発見してください。
見る: コマンドライン(CLI)からUltralyticsソリューションを実行する方法 | Ultralytics YOLO11 🚀
ソリューション
素晴らしいコンピュータビジョンプロジェクトの作成に利用できる、Ultralyticsが厳選したソリューションを以下に示します。
- オブジェクトのカウント:YOLO11を使用してリアルタイムのオブジェクトカウントを実行する方法を学びます。ライブビデオストリーム内のオブジェクトを正確にカウントする専門知識を習得します。
- オブジェクトの切り抜き:YOLO11を使用してオブジェクトの切り抜きをマスターし、画像やビデオからオブジェクトを正確に抽出します。
- オブジェクトのぼかし:YOLO11を使用してオブジェクトをぼかし、画像およびビデオ処理におけるプライバシーを保護します。
- ワークアウトのモニタリング: YOLO11を使用してワークアウトをモニタリングする方法をご覧ください。さまざまなフィットネスルーチンをリアルタイムで追跡および分析する方法を学びます。
- 領域内のオブジェクトのカウント:YOLO11を使用して特定の領域内のオブジェクトをカウントし、さまざまな領域で正確な検出を実現します。
- セキュリティアラームシステム: 新しいオブジェクトを検出するとアラートをトリガーするYOLO11を使用したセキュリティアラームシステムを構築します。特定のニーズに合わせてシステムをカスタマイズします。
- ヒートマップ:検出ヒートマップを利用して、マトリックス全体のデータ強度を視覚化し、コンピュータビジョンのタスクで明確な洞察を提供します。
- オブジェクト追跡によるインスタンスセグメンテーション:YOLO11でインスタンスセグメンテーションとオブジェクト追跡を実装して、正確なオブジェクト境界と継続的な監視を実現します。
- VisionEye View Objects Mapping: 特定のオブジェクトに人間の目の焦点を模倣するシステムを開発し、コンピュータが詳細を識別して優先順位を付ける能力を強化します。
- 速度推定: YOLO11と物体追跡技術を使用してオブジェクトの速度を推定します。これは、自動運転車や交通監視などのアプリケーションに不可欠です。
- 距離の計算:YOLO11でバウンディングボックスの中心を使用してオブジェクト間の距離を計算します。これは空間分析に不可欠です。
- キュー管理:YOLO11を使用して効率的なキュー管理システムを実装し、待ち時間を最小限に抑え、生産性を向上させます。
- 駐車場管理:YOLO11を使用して駐車場エリア内の車両の流れを整理および指示し、スペースの利用率とユーザーエクスペリエンスを最適化します。
- Analytics: YOLO11を活用して、包括的なデータ分析を実施し、パターンを発見し、情報に基づいた意思決定を行い、記述的、予測的、および処方的分析を実現します。
- Streamlitを使用したライブ推論:ユーザーフレンドリーなStreamlitインターフェースで、リアルタイムな物体検出をウェブブラウザから直接行うために、YOLO11の能力を活用します。
- ゾーン内のオブジェクトを追跡: 正確で効率的な監視のために、YOLO11を使用してビデオフレームの特定のゾーン内のオブジェクトを追跡する方法を学びます。
- 類似性検索 🚀 NEW: OpenAI CLIP埋め込みとMeta FAISSを組み合わせることで、インテリジェントな画像検索を有効にし、「バッグを持っている人」や「走行中の車両」のような自然言語クエリを可能にします。
ソリューションの引数
引数 | 種類 | デフォルト | 説明 |
---|---|---|---|
model |
str |
None |
Ultralytics YOLOモデルファイルへのパス。 |
region |
list |
'[(20, 400), (1260, 400)]' |
カウント領域を定義する点のリスト。 |
show_in |
bool |
True |
ビデオストリームにカウントを表示するかどうかを制御するフラグ。 |
show_out |
bool |
True |
ビデオストリーム上にアウトカウントを表示するかどうかを制御するフラグ。 |
analytics_type |
str |
line |
グラフの種類、すなわち、 line , bar , area 、または pie . |
colormap |
int |
cv2.COLORMAP_JET |
ヒートマップに使用するカラーマップ。 |
json_file |
str |
None |
すべての駐車座標データを含むJSONファイルへのパス。 |
up_angle |
float |
145.0 |
「アップ」ポーズの角度閾値。 |
kpts |
list[int, int, int] |
'[6, 8, 10]' |
ワークアウトの監視に使用されるキーポイントのリスト。これらのキーポイントは、腕立て伏せ、懸垂、スクワット、腹筋運動などのエクササイズのために、肩、肘、手首などの体の関節または部分に対応しています。 |
down_angle |
float |
90.0 |
「ダウン」ポーズの角度閾値。 |
blur_ratio |
float |
0.5 |
ぼかしの強度の割合を調整します。値の範囲は 0.1 - 1.0 . |
crop_dir |
str |
'cropped-detections' |
切り抜かれた検出結果を保存するためのディレクトリ名。 |
records |
int |
5 |
セキュリティアラームシステムでメールをトリガーするための総検出数。 |
vision_point |
tuple[int, int] |
(20, 20) |
これは、VisionEye Solutionを使用して、ビジョンがオブジェクトを追跡し、パスを描画するポイントです。 |
source |
str |
None |
入力ソース(ビデオ、RTSPなど)へのパス。Solutionsコマンドラインインターフェース(CLI)でのみ使用可能です。 |
figsize |
tuple[int, int] |
(12.8, 7.2) |
ヒートマップやグラフなどの分析チャートの図のサイズ。 |
fps |
float |
30.0 |
速度計算に使用される1秒あたりのフレーム数。 |
max_hist |
int |
5 |
速度/方向計算のために、オブジェクトごとに追跡する最大履歴ポイント数。 |
meter_per_pixel |
float |
0.05 |
ピクセル距離を現実世界の単位に変換するために使用されるスケーリングファクター。 |
max_speed |
int |
120 |
ビジュアルオーバーレイの最大速度制限(アラートで使用)。 |
data |
str |
'images' |
類似性検索に使用される画像ディレクトリへのパス。 |
引数を追跡
ソリューションは、次の引数の一部もサポートしています。 track
などのパラメータを含みます。 conf
, line_width
, tracker
, model
, show
, verbose
および classes
.
引数 | 種類 | デフォルト | 説明 |
---|---|---|---|
tracker |
str |
'botsort.yaml' |
使用する追跡アルゴリズムを指定します。例: bytetrack.yaml または botsort.yaml . |
conf |
float |
0.3 |
検出の信頼度閾値を設定します。低い値を設定すると、より多くのオブジェクトを追跡できますが、誤検出が含まれる可能性があります。 |
iou |
float |
0.5 |
Intersection over Union (IoU) の閾値を設定して、重複する検出結果をフィルタリングします。 |
classes |
list |
None |
クラスインデックスで結果をフィルタリングします。例: classes=[0, 2, 3] 指定されたクラスのみを追跡します。 |
verbose |
bool |
True |
追跡結果の表示を制御し、追跡されたオブジェクトの視覚的な出力を提供します。 |
device |
str |
None |
推論に使用するデバイスを指定します(例: cpu , cuda:0 または 0 )。モデル実行のために、CPU、特定のGPU、またはその他の計算デバイスを選択できます。 |
可視化引数
以下を使用できます。 show_conf
, show_labels
、および視覚化をカスタマイズするために言及されたその他の引数。
引数 | 種類 | デフォルト | 説明 |
---|---|---|---|
show |
bool |
False |
もし True )は、アノテーションが付けられた画像またはビデオをウィンドウに表示します。開発またはテスト中に、視覚的なフィードバックを即座に得るのに役立ちます。 |
line_width |
None or int |
None |
バウンディングボックスの線の太さを指定します。もし None 場合、線の太さは画像サイズに基づいて自動的に調整されます。明確にするための視覚的なカスタマイズを提供します。 |
show_conf |
bool |
True |
ラベルとともに、検出ごとの信頼度スコアを表示します。各検出に対するモデルの確実性についての洞察が得られます。 |
show_labels |
bool |
True |
検出された各オブジェクトのラベルを視覚的な出力に表示します。検出されたオブジェクトをすぐに理解できます。 |
SolutionAnnotatorの使用
すべてのUltralytics Solutionsは、個別のクラスを使用します SolutionAnnotator
は、メインの Annotator
クラスであり、次のメソッドがあります。
メソッド | 戻り値の型 | 説明 |
---|---|---|
draw_region() |
None |
指定されたポイント、色、および太さを使用して領域を描画します。 |
queue_counts_display() |
None |
指定された領域内のキュー数を表示します。 |
display_analytics() |
None |
駐車場管理に関する全体的な統計を表示します。 |
estimate_pose_angle() |
float |
オブジェクトポーズにおける3点間の角度を計算します。 |
draw_specific_points() |
None |
画像上の特定のキーポイントを描画します。 |
plot_workout_information() |
None |
ラベル付きのテキストボックスを画像上に描画します。 |
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_count
,out_count
、およびclasswise_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="yolo11n.pt", # model="yolo11n-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_im |
np.ndarray |
カウント、ぼかし効果、またはソリューション固有の拡張機能などの視覚的なオーバーレイを持つ画像。 |
in_count |
int |
ビデオストリーム内で定義されたゾーンに進入する物体が検出された総数。 |
out_count |
int |
ビデオストリーム内で定義されたゾーンから退出する物体が検出された総数。 |
classwise_count |
Dict[str, int] |
高度な分析のために、クラスごとのオブジェクトのイン/アウト数を記録する辞書。 |
queue_count |
int |
定義済みのキューまたは待機エリア内にあるオブジェクトの数(キュー管理に適しています)。 |
workout_count |
int |
運動追跡中に完了したワークアウトの反復総数。 |
workout_angle |
float |
フォーム評価のためのワークアウト中の関節または姿勢の角度を計算します。 |
workout_stage |
str |
現在のワークアウト段階または動作フェーズ(例: '上'、'下')。 |
pixels_distance |
float |
2つのオブジェクトまたはポイント(例:バウンディングボックス)間のピクセルベースの距離。(距離の計算に適しています)。 |
available_slots |
int |
監視エリア内で空いているスロットの数。(駐車場管理に適しています) |
filled_slots |
int |
監視エリア内で占有されているスロットの数。(駐車場管理に適しています) |
email_sent |
bool |
通知または警告メールが正常に送信されたかどうかを示します(セキュリティアラームに適しています)。 |
total_tracks |
int |
ビデオ分析中に観察されたユニークな物体の追跡総数。 |
region_counts |
Dict[str, int] |
ユーザー定義の領域またはゾーン内のオブジェクト数。 |
speed_dict |
Dict[str, float] |
速度分析に役立つ、計算された物体速度のトラックごとの辞書。 |
total_crop_objects |
int |
ObjectCropperソリューションによって生成された、切り抜かれたオブジェクト画像の総数。 |
speed |
Dict[str, float] |
追跡およびソリューション処理のパフォーマンス指標を含む辞書。 |
詳細については、以下を参照してください。 SolutionResults
classドキュメント.
CLI経由でのソリューションの使用法
コマンド情報
ほとんどのソリューションは、以下のものを含め、コマンドラインインターフェースから直接使用できます:
Count
, Crop
, Blur
, Workout
, Heatmap
, Isegment
, Visioneye
, Speed
, Queue
, Analytics
, Inference
構文
yolo SOLUTIONS SOLUTION_NAME ARGS
- SOLUTIONS は必須キーワードです。
- SOLUTION_NAME は次のいずれかです:
['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye']
. - ARGS (オプション)はカスタム
arg=value
のようなペアshow_in=True
を使用して、デフォルト設定をオーバーライドします。
yolo solutions count show=True # for object counting
yolo solutions source="path/to/video.mp4" # specify video file path
ソリューションへの貢献
コミュニティからの貢献を歓迎します!Ultralytics YOLOの特定の部分を習得していて、まだソリューションでカバーされていない場合は、専門知識を共有してください。ガイドを書くことは、コミュニティに貢献し、ドキュメントをより包括的でユーザーフレンドリーにするための素晴らしい方法です。
まず、投稿ガイドをお読みになり、プルリクエスト(PR)🛠️;をオープンする方法に関するガイドラインをご確認ください。皆様からのご貢献をお待ちしております。
Ultralytics YOLO エコシステムをより堅牢で汎用性の高いものにするために協力しましょう 🙏!
よくある質問
リアルタイムのオブジェクトカウントにUltralytics YOLOを使用するにはどうすればよいですか?
Ultralytics YOLO11は、高度な物体検出機能を活用することで、リアルタイムの物体カウントに使用できます。ライブビデオストリーム分析用にYOLO11をセットアップするには、物体カウントに関する詳細なガイドに従ってください。YOLO11をインストールし、モデルをロードして、ビデオフレームを処理するだけで、オブジェクトを動的にカウントできます。
セキュリティシステムにUltralytics YOLOを使用する利点は何ですか?
Ultralytics YOLO11 は、リアルタイムの物体検出とアラートメカニズムを提供することにより、セキュリティシステムを強化します。YOLO11 を採用することにより、監視エリアで新しい物体が検出されたときにアラートをトリガーするセキュリティアラームシステムを作成できます。堅牢なセキュリティ監視のために、YOLO11 を使用したセキュリティアラームシステムの設定方法を学んでください。
Ultralytics YOLOは、どのようにキュー管理システムを改善できますか?
Ultralytics YOLO11 は、キュー内の人数を正確にカウントおよび追跡することにより、キュー管理システムを大幅に改善し、待ち時間を短縮し、サービスの効率を最適化するのに役立ちます。効果的なキューの監視と分析のために YOLO11 を実装する方法については、キュー管理に関する詳細なガイドに従ってください。
Ultralytics YOLOをワークアウトのモニタリングに使用できますか?
はい、Ultralytics YOLO11は、フィットネスルーチンをリアルタイムで追跡および分析することにより、ワークアウトのモニタリングに効果的に使用できます。これにより、運動フォームとパフォーマンスを正確に評価できます。YOLO11を使用してAIを活用したワークアウトモニタリングシステムをセットアップする方法については、ワークアウトモニタリングに関するガイドをご覧ください。
Ultralytics YOLOは、データ可視化のためのヒートマップ作成にどのように役立ちますか?
Ultralytics YOLO11 は、特定の領域におけるデータ強度を可視化するヒートマップを生成し、アクティビティや関心の高い領域を強調表示できます。この機能は、さまざまなコンピュータビジョンタスクにおけるパターンや傾向を理解する上で特に役立ちます。包括的なデータ分析と可視化のために、YOLO11 でのヒートマップの作成と使用についてさらに詳しく学んでください。