Torch 两个矩形框重叠面积的计算 (IoU between tow bounding box)
Torch 两个矩形框重叠面积的计算 (IoU between tow bounding box)
1 function DecideOberlap(BBox_x1, BBox_y1, BBox_x2, BBox_y2, BBox_gt_x1, BBox_gt_y1, BBox_gt_x2, BBox_gt_y2)
2
3 x1 = BBox_x1;
4 y1 = BBox_y1;
5 width1 = BBox_x2 - BBox_x1;
6 height1 = BBox_y2 - BBox_y1;
7
8 x2 = BBox_gt_x1;
9 y2 = BBox_gt_y1;
10 width2 = BBox_gt_x2 - BBox_gt_x1;
11 height2 = BBox_gt_y2 - BBox_gt_y1;
12
13 endx = math.max(x1+width1, x2+width2);
14 startx = math.min(x1, x2);
15 width = width1 + width2 - (endx - startx);
16
17 endy = math.max(y1 + height1, y2 + height2);
18 starty = math.min(y1, y2);
19 height = height1 + height2 - (endy - starty);
20
21 if width<=0 or height<=0 then
22 ratio = 0;
23 else
24 Area = width*height;
25 Area1 = width1*height1;
26 Area2 = width2*height2;
27 ratio = Area/Area1;
28 end
29
30 return ratio
31
32 end
Stay Hungry,Stay Foolish ...