图像处理的交并比(IoU)
交并比(Intersection-over-Union,IoU),目标检测中使用的一个概念,是产生的候选框(candidate bound)与原标记框(ground truth bound)的交叠率,即它们的交集与并集的比值。最理想情况是完全重叠,即比值为1。
python实现
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, (x2 - x1))
h = max(0, (y2 - y1))
area = w * h #C∩G的面积
iou = area / (carea + garea - area)
return iou
vc++生成程序不需要.net运行环境的可以执行exe程序的方法
1、右键项目-属性
2、配置属性-C/C++-代码生成
3、运行时库-选择/mt或者/mtd
即 Multi-threaded (/MT) 或 Multi-threaded Debug (/MTd) 不要选 Multi-threaded DLL (/MD) Multi-threaded Debug DLL (/MDd)
4、配置属性-C/C++-常规
5、选择在静态库中使用MFC
6、编译运行即可
网友评论