iou_similarity

paddle.fluid.layers. iou_similarity ( x, y, box_normalized=True, name=None )

IOU Similarity Operator

计算两个框列表的 intersection-over-union(IOU)。框列表 \(X\) 应为 LoDTensor, \(Y\) 是普通 Tensor,\(X\) 成批输入的所有实例共享 \(Y\) 中的框。给定框 A 和框 B,IOU 的运算如下:

\[IOU(A, B) = \frac{area(A\cap B)}{area(A)+area(B)-area(A\cap B)}\]

参数

  • x (Variable) - 框列表 \(X\) 是二维 LoDTensor,维度为 \([N,4]\),存有 \(N\) 个框,每个框表示为 \([xmin, ymin, xmax, ymax]\)\(X\) 的维度为 \([N,4]\)。如果输入是图像特征图,\([xmin, ymin]\) 表示框的左上角坐标,接近坐标轴的原点。\([xmax, ymax]\) 表示框的右下角坐标。该 Tensor 包含批次输入的 LoD 信息。该批次输入的一个实例能容纳不同的项数。数据类型为 float32 或 float64。

  • y (Variable) - 框列表 \(Y\) 是二维 Tensor,存有 \(M\) 个框,每个框表示为 \([xmin, ymin, xmax, ymax]\)\(Y\) 的维度为 \([M,4]\)。如果输入是图像特征图,\([xmin, ymin]\) 表示框的左上角坐标,接近坐标轴的原点。\([xmax, ymax]\) 表示框的右下角坐标。数据类型为 float32 或 float64。

  • box_normalized (bool) - 先验框坐标是否正则化,即是否在[0, 1]区间内。默认值为 true

返回

维度为 \([N,M]\) 的 LoDTensor,代表每一对 iou 分数,数据类型与 \(X\) 相同

返回类型

Variable

代码示例

COPY-FROM: paddle.fluid.layers.iou_similarity