最近做目标追踪,很少有JAVA的IOU计算.模仿其他语言算法实现一个
IOU作用
可以衡量两个矩阵的重叠率,在目标检测中,这个重叠率可以作为跟踪的一种参数
代码
/**
* IoU(交并比)计算
* @param rect1 org.opencv.core.Rect 这里的Rect不是通用包,但是都差不多.包含了左顶点和宽高的值,有些是左上,右下的坐标点,注意转换
* @param rect2 org.opencv.core.Rect
* @return IoU矩阵重叠率
*/
public static float intersectionOverUnion(Rect rect1,Rect rect2){
int leftColumnMax = Math.max(rect1.x, rect2.x);
int rightColumnMin = Math