1. 程式人生 > >IoU 判斷矩形區域重疊

IoU 判斷矩形區域重疊

重疊度(IOU):

IOU定義了兩個bounding box的重疊度,如下圖所示:

計算IoU

A = [x1, y1, x2, y2],B = [x1, y1, x2, y2]

iw = min(A[2], B[2]) - max(A[0], B[0])
if iw > 0:
   ih = min(A[3], B[3]) - max(A[1], B[1])  
   if ih > 0:
        A_area = (A[2] - A[0]) * (A[3] - A[1])
        B_area = (B[2] - B[0]) * (B[3] - B[1])
        uAB = float(A_area + B_area - iw * ih)
        IoU = iw * ih / uAB