1. 程式人生 > >iou(交併比)的概念

iou(交併比)的概念

               交併比(Intersection-over-Union,IoU),目標檢測中使用的一個概念,是產生的候選框(candidate bound)與原標記框(ground truth bound)的交疊率,即它們的交集與並集的比值。最理想情況是完全重疊,即比值為1。

計算公式:

def calculateIoU(candidateBound, groundTruthBound):
    cx1 = candidateBound[0]
    cy1 = candidateBound[1]
    cx2 = candidateBound[2]
    cy2 = candidateBound[3]
 
    gx1 = groundTruthBound[0]
    gy1 = groundTruthBound[1]
    gx2 = groundTruthBound[2]
    gy2 = groundTruthBound[3]
 
    carea = (cx2 - cx1) * (cy2 - cy1) #C的面積
    garea = (gx2 - gx1) * (gy2 - gy1) #G的面積
 
    x1 = max(cx1, gx1)
    y1 = max(cy1, gy1)
    x2 = min(cx2, gx2)
    y2 = min(cy2, gy2)
    w = max(0, abs(x2 - x1))
    h = max(0, abs(y2 - y1))
    area = w * h #C∩G的面積
 
    iou = area / (carea + garea - area)
 
    return iou

 

 

轉載地址:https://blog.csdn.net/mdjxy63/article/details/79343733