Ultralytics YOLO27: ウェイトリストに登録する
YOLOのライセンス
Ultralytics用語集に戻る

Bounding Box

バウンディングボックスとは、画像内で物体が位置する範囲を示す四角形です。xyxy、xywh、YOLO形式、ラベリング、回転ボックス、3Dボックスを解説します。

バウンディングボックスとは、画像または動画フレーム内の物体を囲む、軸に平行な最小の長方形で、4つの数値で表されます。物体検出の出力単位であり、検出器は物体ごとに1つのボックスとクラスラベル、信頼度スコアを返します。また、モデルに学習させるため、アノテーターは同じボックスを学習データ上に描画します。ボックスは物体の形状をなぞらずに位置とおおよその大きさを示すため、ラベル付けが簡単で、予測コストも低くなります。

座標形式#

画像座標は左上隅を原点とし、xは右方向、yは下方向に大きくなります。どのボックス形式も4つの数値を格納しますが、どの4つの値を使うかはデータセットやライブラリによって異なります。形式を取り違えると、すべてのボックスが気付かないうちにずれたり、伸縮したりします。

  • 四隅(xyxy):左上隅(x1, y1)と右下隅(x2, y2)をピクセル単位で表します。PASCAL VOCのアノテーションや、ほとんどの描画関数およびIoU関数で使われます。
  • COCO形式:左上隅に続けて幅と高さをピクセル単位で表します。[x, y, width, height]
  • YOLO形式:ボックスの中心に続けて幅と高さを示し、それぞれを画像の幅または高さで割ることで、すべての値が0から1の範囲に収まります。YOLO26などのUltralytics YOLOモデルは、画像ごとに1つのテキストファイルを用い、物体ごとに1行を使って学習します。各行にはクラスインデックスに続けて、x_center、y_center、width、heightを記載します。

正規化座標はリサイズ後も維持されます。ボックスは画像サイズに対する割合として保存されるため、ラベルを書き換えなくても、画像を任意の学習解像度に拡大・縮小できます。

from ultralytics import YOLO

# 学習済みのYOLO26 nano検出器を読み込む
model = YOLO("yolo26n.pt")

# 物体を検出し、最初の画像からボックスを取得する
results = model("https://ultralytics.com/images/bus.jpg")
boxes = results[0].boxes

# 4つの形式で表した同じ最初のボックス
print(boxes.xyxy[0])  # ピクセル単位の四隅座標
print(boxes.xywh[0])  # ピクセル単位の中心、幅、高さ
print(boxes.xyxyn[0])  # 画像の幅と高さで割った四隅座標
print(boxes.xywhn[0])  # YOLOラベルと同様に、画像サイズで割った中心とサイズ

4行はいずれも1つの長方形を表しています。正規化された形式では、ピクセル値を画像のサイズである810 × 1080で割ります。xywhはボックスの中心を基準に測定するため、COCOの左上基準のxywhとは異なります。

検出器がボックスを予測する方法#

検出器は、画像内の多くの位置で回帰出力としてボックスを予測します。初期の設計では、サイズとアスペクト比が固定されたアンカーボックスからのオフセットを予測していました。一方、アンカーフリー検出器は、グリッド上の点からボックスの4辺までの距離を直接予測します。学習では、損失関数に基づいて予測ボックスとラベル付きボックスを比較します。この損失関数はintersection over union (IoU)に基づいています。隣り合う位置から同じ物体に対する重複ボックスが予測されるため、推論時には非極大値抑制(NMS)で重複を取り除きます。

バウンディングボックスのラベル付け#

検出器はラベルと同じ描き方でボックスを描くように学習するため、データアノテーションのガイドラインがボックスの品質を左右します。適切なガイドラインでは、各物体の見えている端に沿ってボックスを付けること、各クラスのすべてのインスタンスにラベルを付けること(ラベルのない物体は背景としてモデルに学習されるため)、遮蔽された物体や一部が切れた物体について、見えている部分だけを囲むなどの固定ルールを定めることを求めます。評価にも同じルールが適用されます。予測は、ラベル付きボックスとのIoUによって採点されるためです。

バウンディングボックスとその他の領域表現#

  • 回転バウンディングボックス(OBB):5つ目の値として回転角を加えることで、ボックスを回転させ、航空画像内の船や車両など、傾いた物体に合わせられます。これにより、ボックス内に含まれる背景を大幅に減らせます。
  • インスタンスセグメンテーション:ピクセル単位のマスクで、各物体の正確な形状を示します。
  • キーポイント:姿勢推定に用いる身体の関節など、個々のランドマーク点です。
  • 3Dバウンディングボックス:現実空間内の直方体で、通常は7つの数値で表されます。中心(x, y, z)、メートル単位の長さ、幅、高さ、および進行方向の角度です。

ソリューションを見る

スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、自然保護、地理空間分析に活用できます。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOを活用して航空宇宙分野でコンピュータビジョンを導入し、航空機検査、滑走路上のFOD検出、空港の地上業務、複合材の欠陥検出に活用できます。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る

AIの未来を一緒に築きましょう!

機械学習の未来に向けた歩みを始めましょう