YOLOのような一段階物体検出器のスピードと効率をご覧ください。ロボティクスや監視のようなリアルタイムアプリケーションに最適です。
One-stage object detectorは、コンピュータビジョンにおける速度と効率のために設計された深層学習モデルの一種です。オブジェクトのローカライズと分類を、ニューラルネットワークの単一のパスで実行します。これは、タスクを2つの明確なステップに分割する、より複雑なtwo-stage object detectorとは対照的です。物体検出を単純な回帰問題として扱うことで、one-stageモデルは画像の特徴から直接、バウンディングボックスとクラスの確率を予測し、非常に高速で、リアルタイム推論を必要とするアプリケーションに適しています。
シングルステージ検出器は、単一の畳み込みニューラルネットワーク(CNN)を介して画像全体を一度に処理します。ネットワークのアーキテクチャは、いくつかのタスクを同時に実行するように設計されています。まず、ネットワークのバックボーンが特徴抽出を実行し、さまざまなスケールで入力画像の豊富な表現を作成します。これらの特徴は、特殊な検出ヘッドに供給されます。
このヘッドは、一連のバウンディングボックス、オブジェクトの存在を示す各ボックスの信頼性スコア、および各オブジェクトが特定のクラスに属する確率を予測します。このプロセス全体が1回のフォワードパスで実行されるため、高速処理が可能です。Non-Maximum Suppression(NMS)などの手法を使用して、冗長で重複する検出を除外し、最終的な出力を生成します。モデルは、局在化損失(バウンディングボックスの精度)と分類損失(クラス予測の精度)を組み合わせた特殊な損失関数を使用してトレーニングされます。
主な違いは、その方法論にあります。One-Stage検出器は速度とシンプルさを重視して構築されていますが、Two-Stage検出器は精度を優先していますが、この区別は新しいモデルでは薄れつつあります。
いくつかの影響力のあるOne-Stageアーキテクチャが開発されており、それぞれが独自の貢献をしています。
ワンステージ検出器の速度と効率により、数多くのAI主導のアプリケーションで不可欠なものとなっています。
One-Stage検出器の主な利点は、その驚異的な速度であり、リアルタイム物体検出を、NVIDIA JetsonやRaspberry Piなどの低電力エッジAIデバイスを含む、さまざまなハードウェアで実現します。また、よりシンプルなエンドツーエンドのアーキテクチャにより、PyTorchやTensorFlowなどのフレームワークを使用して、トレーニングとデプロイが容易になります。
従来、主な制限事項は、特に非常に小さいオブジェクトや大きく遮られたオブジェクトを扱う場合に、2段階検出器と比較して精度が低いことでした。ただし、YOLO11などのモデルに見られるように、モデルアーキテクチャとトレーニング手法の最近の進歩により、このパフォーマンスのギャップは大幅に縮まり、広範なコンピュータビジョンタスクに対して速度と高い精度の強力な組み合わせを提供しています。Ultralytics HUBのようなプラットフォームは、特定のニーズに合わせてカスタムモデルをトレーニングするプロセスをさらに簡素化します。