CIoU
产品支持情况
| 产品 |
是否支持 |
| Ascend 950PR/Ascend 950DT |
√ |
| Atlas A3 训练系列产品/Atlas A3 推理系列产品 |
× |
| Atlas A2 训练系列产品/Atlas A2 推理系列产品 |
× |
| Atlas 200I/500 A2 推理产品 |
× |
| Atlas 推理系列产品 |
× |
| Atlas 训练系列产品 |
× |
功能说明
- 算子功能:用于边界框回归的损失函数,在IoU的基础上同时考虑了中心点距离、宽高比和重叠面积,以更全面地衡量预测框与真实框之间的差异。
- 计算公式:
CIoU=IoU−ρ2(bp,bg)c2−αvv=4π2(arctan(wghg)−arctan(wphp))2α=v1−IoU+vCIoU = IoU - \frac{\rho^2(b^p, b^g)}{c^2} - \alpha v \\
v = \frac{4}{\pi^2}(arctan(\frac{w^g}{h^g}) - arctan(\frac{w^p}{h^p}))^2 \\
\alpha = \frac{v}{1 - IoU + v} \\
CIoU=IoU−c2ρ2(bp,bg)−αvv=π24(arctan(hgwg)−arctan(hpwp))2α=1−IoU+vv
参数说明
| 参数名 |
输入/输出/属性 |
描述 |
数据类型 |
数据格式 |
| bboxes |
输入 |
预测矩形框。 |
FLOAT32、FLOAT16 |
ND |
| gtboxes |
输入 |
真值矩形框。 |
FLOAT32、FLOAT16 |
ND |
| trans |
属性 |
用于指定矩形框的格式。 |
BOOL |
- |
| is_cross |
属性 |
用于指定bBoxes与gtBoxes之间是否进行交叉运算。 |
BOOL |
- |
| mode |
属性 |
用于选择计算方式"iou"或"iof"。 |
String |
- |
| atan_sub_flag |
属性 |
用于指定是否输出atan_sub。 |
BOOL |
- |
| overlap |
输出 |
根据两个输入计算得到的交并比/前景交叉比。 |
FLOAT32、FLOAT16 |
ND |
| atan_sub |
输出 |
计算过程中两个arctan的差值。 |
FLOAT32、FLOAT16 |
ND |
约束说明
- 若输入格式为[x0, y0, x1, y1],(x0, y0)和(x1, y1)分别表示矩形框的左上角和右下角,需满足x1 > x0, y1 > y0。
- M和N需要一致。
is_cross目前仅支持false。
atan_sub_flag目前仅支持true。
调用说明