二段階オブジェクト検出器の仕組みを探求し、領域提案と分類に焦点を当てます。Ultralytics のような現代モデルが現在リードしている理由を学びましょう。
二段階物体検出器は、コンピュータビジョンにおいて画像内の物体を識別・位置特定するために用いられる高度な深層学習(DL)アーキテクチャの一種である。 単一パスで検出を行うワンステージ型とは異なり、 これらのモデルはタスクを領域提案と物体分類という 二つの段階に分割する。この二分化された手法は 高い位置特定精度を優先するために考案され、 人工知能(AI)の進化において歴史的に重要な 検出器となっている。 「どこにあるか」と「何であるか」を分離することで、二段階検出器は特に小型または遮蔽された物体において高い精度を達成することが多い。ただし、これは通常、計算リソースの増加と推論遅延の増加を代償とする。
二段階検出器のアーキテクチャは、人間が注意深く情景を精査する方法を模倣した 順次的なワークフローに基づいている。
このアーキテクチャの代表的な例として、R-CNNファミリー、特に Faster R-CNNと Mask R-CNNが挙げられ、これらは数年にわたり学術的なベンチマークの基準を確立した。
二段階モデルと、シングルショットマルチボックス検出器(SSD)Ultralytics YOLO のような単一段階物体検出器を区別することは有用である。二段階モデルは領域を個別に処理することで精度を優先する一方、単一段階モデルは検出を単一の回帰問題として捉え、画像ピクセルを直接バウンディングボックス座標とクラス確率にマッピングする。
歴史的に、これはトレードオフを生み出してきた:二段階モデルは精度が高いが処理が遅く、一方、単段階モデルは処理が速いが精度が低い。しかし、近年の進歩によってこの境界線は曖昧になった。YOLO26のような最先端モデルは、エンドツーエンドアーキテクチャを採用しており、リアルタイム推論に必要な速度を維持しながら、二段階検出器に匹敵する精度を実現している。
精度 と再現率を重視するため、 安全性と詳細性が処理速度よりも重要となるシナリオでは、 二段階検出器がしばしば好まれる。
二段階検出器が高精度ビジョン技術の基盤を築いた一方で、現代の開発者はしばしば、同等の性能を提供しながら導入ワークフローを大幅に簡素化する先進的な単段階モデルを活用している。Ultralytics 、これらのモデルのトレーニングと導入を簡素化し、データセットと計算リソースを効率的に管理する。
Python 、最新の物体検出ワークフローを使用して、モデルを読み込み、推論を実行する方法を示しています。
ultralytics従来の二段階アプローチと同等の高精度な結果を達成しつつ、より高い効率性を実現する:
from ultralytics import YOLO
# Load the YOLO26 model, a modern high-accuracy detector
model = YOLO("yolo26n.pt")
# Run inference on an image to detect objects
results = model("https://ultralytics.com/images/bus.jpg")
# Process results (bounding boxes, classes, and confidence scores)
for result in results:
result.show() # Display the detection outcomes
print(result.boxes.conf) # Print confidence scores