IoU over Union)とは何か、どのように計算されるのか、そして物体検出とAIモデル評価における重要な役割について学びます。
交差率(Intersection over Union,IoU)は、特定のデータセットにおける物体検出器の精度を測定するためにコンピュータビジョンで使用される基本的な指標である。しばしばジャッカード指数とも呼ばれ、2つの境界(真の境界ボックス(実際の物体の位置)と予測境界ボックス(モデルの推測))の重なりを定量化する。IoU 0から1の範囲で、0は重複なし、1は完全一致を示す。この指標は、YOLO26のようなモデルが画像内でオブジェクトをどれだけ正確に特定できるかを評価する上で不可欠であり、単純な分類を超えた空間的精度を測定する。
IoU 概念はIoU :2つのボックスが重なる領域(交差)と、両ボックスが覆う総面積(和)の比率を算出する。重なり部分を総面積で正規化するため、IoU スケール不変の指標IoU 。つまり、対象が大型車両であれ小型の交通標識であれ、効果的に性能を評価できる。
実用的な物体検出ワークフローでは、IoU を用いて予測が「真陽性」か「偽陽性」かを判定する。 通常、閾値が設定されます。COCO などのベンチマークでは一般的に0.5または0.75です。IoU がこの閾値を超える場合、検出は正しいと見なされます。この閾値設定は、異なるクラスや閾値にわたる性能を集約する平均精度(mAP)などのより複雑な指標を計算する前段階となります。
安全性と信頼性が最優先される産業において、IoU 提供する精度は極めてIoU 。
IoU を理解するには、実践的な例がIoU 。 ultralytics パッケージには、IoU 計算するための最適化されたユーティリティ関数が含まれており、カスタム評価やモデル挙動の理解に役立ちます。
import torch
from ultralytics.utils.metrics import box_iou
# Define ground truth and predicted boxes in (x1, y1, x2, y2) format
# Example: Ground truth box [50, 50, 150, 150] vs Predicted box [60, 60, 160, 160]
ground_truth = torch.tensor([[50, 50, 150, 150]])
prediction = torch.tensor([[60, 60, 160, 160]])
# Calculate Intersection over Union
iou_score = box_iou(ground_truth, prediction)
print(f"IoU Score: {iou_score.item():.4f}")
# Output: IoU Score: 0.6806
評価を超えて、IoU 現代的な検出器の学習過程において積極的にIoU 。
タスクに適した指標を選択するためには、IoU 類似の評価概念IoU 区別することが有用である。

