mindspore.ops.BoundingBoxDecode
- class mindspore.ops.BoundingBoxDecode(max_shape, means=(0.0, 0.0, 0.0, 0.0), stds=(1.0, 1.0, 1.0, 1.0), wh_ratio_clip=0.016)[源代码]
解码边界框位置信息。
算子的功能是计算偏移量,此算子将偏移量转换为Bbox,用于在后续图像中标记目标等。
- 参数:
max_shape (tuple) - 解码框计算的上限值。
means (tuple) - 计算 deltas 的均值。默认值:
(0.0, 0.0, 0.0, 0.0)
。stds (tuple) - 计算 deltas 的标准差。默认值:
(1.0, 1.0, 1.0, 1.0)
。wh_ratio_clip (float) - 解码框计算的宽高比限制。默认值:
0.016
。
- 输入:
anchor_box (Tensor) - 锚框。锚框的shape必须为 \((n, 4)\) 。
deltas (Tensor) - 框的增量。它的shape与 anchor_box 相同。
- 输出:
Tensor,解码框。它的数据类型和shape与 anchor_box 相同。
- 异常:
TypeError - 如果 means 、 stds 或 max_shape 不是tuple。
TypeError - 如果 wh_ratio_clip 不是float。
TypeError - 如果 anchor_box 或 deltas 不是Tensor。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> import mindspore >>> from mindspore import Tensor, ops >>> anchor_box = Tensor([[4, 1, 2, 1], [2, 2, 2, 3]], mindspore.float32) >>> deltas = Tensor([[3, 1, 2, 2], [1, 2, 1, 4]], mindspore.float32) >>> boundingbox_decode = ops.BoundingBoxDecode(means=(0.0, 0.0, 0.0, 0.0), stds=(1.0, 1.0, 1.0, 1.0), ... max_shape=(768, 1280), wh_ratio_clip=0.016) >>> output = boundingbox_decode(anchor_box, deltas) >>> print(output) [[ 4.194528 0. 0. 5.194528] [ 2.1408591 0. 3.8591409 60.598152 ]]