Python計算機視覺裡的IOU計算例項
阿新 • • 發佈:2020-01-17
其中x1,y1;x2,y2分別表示兩個矩形框的中心點
def calcIOU(x1,y1,w1,h1,x2,y2,w2,h2): if((abs(x1 - x2) < ((w1 + w2)/ 2.0)) and (abs(y1-y2) < ((h1 + h2)/2.0))): left = max((x1 - (w1 / 2.0)),(x2 - (w2 / 2.0))) upper = max((y1 - (h1 / 2.0)),(y2 - (h2 / 2.0))) right = min((x1 + (w1 / 2.0)),(x2 + (w2 / 2.0))) bottom = min((y1 + (h1 / 2.0)),(y2 + (h2 / 2.0))) inter_w = abs(left - right) inter_h = abs(upper - bottom) inter_square = inter_w * inter_h union_square = (w1 * h1)+(w2 * h2)-inter_square calcIOU = inter_square/union_square * 1.0 print("calcIOU:",calcIOU) else: print("No intersection!") return calcIOU def main(): calcIOU(1,2,1,2) if __name__ == '__main__': main()
以上這篇Python計算機視覺裡的IOU計算例項就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。