Yolo 深圳
深セン
今すぐ参加
用語集

ノンマキシマムサプレッションNMS

物体検出のための非最大抑制NMS)をご覧ください。NMSがどのように結果を洗練させ、精度を高め、YOLOようなAIアプリケーションを強化するかをご覧ください。

ノンマキシマムサプレッションNMS)は、コンピュータビジョンで使用される重要な後処理技術です。 コンピュータ・ビジョンにおいて、物体検出アルゴリズム 後処理の重要なテクニックである。モデルが画像を分析するとき が画像を解析する場合、1つの物体に対して複数の重なり合うバウンディングボックス バウンディングボックスを予測します。 を予測します。NMS これらの冗長な予測をフィルタリングし、すべてのユニークなオブジェクトが正確に識別されるようにします。 最も正確なボックスだけを残し、残りは破棄します。このプロセスは 実世界のアプリケーションで高精度を達成するために不可欠であり、システムが "ゴースト "重複を検出するのを防ぐ。 システムが同じターゲットの「ゴースト」重複を検出することを防ぎます。

抑制のメカニズム

NMS アルゴリズムは、ディープラーニングモデルの生の出力をクリーンアップするフィルターとして動作する。 フィルターとして動作する。これは2つの重要な 信頼度スコア。 ボックスがオブジェクトを含むことをモデルがどの程度確信しているかを示す信頼度スコアと IoU)である。 2つのボックス間の空間的な重なりを測定する。

NMS 標準的な貪欲なアルゴリズムは、一般に次のようなものである。 以下のステップを踏む:

  1. 閾値処理:信頼度スコアが特定の閾値を下回るすべての候補ボックスは、弱い予測を取り除くために即座に破棄される。 弱い予測を取り除くために即座に破棄される。
  2. 並べ替え:残りのボックスは、信頼度スコアに基づいて降順にソートされる。
  3. 選択:最もスコアの高いボックスが有効な検出として選択される。
  4. 抑制:アルゴリズムは、選択されたボックスと他のすべての残りのボックスを比較する。選択されたボックスと他のIoU が定義された限界値(例えば、0.5)を超える場合、選択されたボックスと他のボックスの間のIoUが同じオブジェクトを表すと仮定されるため、低いスコアのボックスは抑制される(削除される)。 (削除)される。
  5. 反復:このプロセスは、すべての候補が処理されるまで、次の高得点のボックスに対して繰り返される。 処理される。

ソフトNMSような高度なバリエーションは、重なったボックスの検出スコアを減衰させる。 これは、オブジェクトが互いに自然に隠れるような混雑したシーンでは有益である。 これは、オブジェクトが互いに自然に隠れるような混雑したシーンでは有益である。

実際のアプリケーション

NMS 、人工知能に依存するシステムにおいて、どこにでもある。 人工知能が 視覚データを解釈する人工知能に依存するシステムにおいてその役割は、セーフティクリティカルで高精度な環境において特に重要である。

  • 自動車におけるAI自動運転車の知覚スタックでは 自動運転車の知覚スタックでは、他の車両や歩行者を正確に検出することは譲れない。 NMSなければ、車両認識システムは1人の歩行者を3~4人の別々の人間としてdetect しまうかもしれません。 予測値が重複するためだ。これは 動作計画アルゴリズムが混乱し、誤ったブレーキやステアリング やステアリング操作の誤りにつながります。NMS 、NVIDIA DRIVEのような技術に見られるように、障害物のクリーンで単一的な表現を保証します。 NVIDIA DRIVE
  • 医療画像解析 X線やMRIスキャンで腫瘍や病変を特定するためにAIを使用する場合、精度が最も重要です。 医療システムのAIは、NMS 使用して以下のことを保証します。 放射線技師が明確な所見に集中できるようにします。信頼性の高い により偽陽性が減少し、診断ワークフローが合理化されます。 医療画像研究

Ultralytics NMS YOLO

での Ultralytics YOLO11フレームワークでは、NMS 予測パイプラインに 予測パイプラインに直接統合されている。ユーザーは、IoU しきい値などのNMS パラメータを簡単に調整し、IoU 除去と間隔の近いオブジェクトの分離のバランスをとることができます。 を簡単に調整することができます。

以下のコード・スニペットは、推論を実行し、NMS 設定をカスタマイズする方法を示している。 ultralytics パッケージで提供される:

from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

# Run inference on an image
# 'iou=0.5' sets the NMS threshold; boxes with >50% overlap are suppressed
# 'conf=0.25' filters out boxes with low confidence before NMS runs
results = model.predict("https://ultralytics.com/images/bus.jpg", iou=0.5, conf=0.25)

# Display the number of detected objects after NMS
print(f"Objects detected: {len(results[0].boxes)}")

関連概念との比較

NMS 検出パイプラインに見られる他の用語と区別することは重要である。

  • NMS アンカーボックスの比較:アンカーとは モデルの処理中に予測の開始点として使用される定義済みの形状。NMS モデルが最終的な予測を出力した後に行われるポスト処理ステップです。
  • NMS 対信頼閾値A 信頼しきい値は、個々の確率スコアのみに基づいてボックスをフィルタリングする。NMS 他のボックスとの 他のボックスとの関係(オーバーラップ)に基づいてボックスをフィルタリングする。
  • NMS End-to-End検出の比較:従来のNMS 逐次処理であるため、推論レイテンシが発生する。 遅延が生じる。YOLO26のような最新のアーキテクチャは、エンド・ツー・エンド設計に移行しつつある。 ネイティブなエンド・ツー・エンド設計に向かっている。これらのモデルは、一意のオブジェクトの最終的なセットをニューラルネット ワークから直接出力することを目指している。 このようなモデルは、ニューラルネットワークから最終的な一意のオブジェクトセットを直接出力することを目的としており、将来世代の機械学習モデルにおいて、外部NMS アルゴリズムを時代遅れにする可能性がある。 機械学習モデル

これらのモデルを効率的に展開しようとする開発者にとって、NMS リアルタイム推論に与える影響を理解することは極めて重要である。 理解することは極めて重要である。以下のようなツールがある。 TensorRTNMS ようなツールには、最適化されたNMS プラグインが含まれていることが多い。 最適化されたNMSプラグインが含まれています。

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加