mindspore.ops.check_valid
=========================

.. py:function:: mindspore.ops.check_valid(bboxes, img_metas)

    检查边界框是否在图片内。

    `bboxes` 里包含了多组边界框,每一组边界框用两个横坐标点 :math:`(x0, x1)` 和两个纵坐标点 :math:`(y0, y1)` 表示。
    `img_metas` 提供了原始图片的信息,包含 :math:`(height, width, ratio)` 三个参数,用于指定图片的有效边界。
    当满足:

    :math:`x0 >= 0`

    :math:`y0 >= 0`

    :math:`x1 <= width * ratio - 1`

    :math:`y1 <= height * ratio - 1`

    时,认为检查边界框在图片内。

    .. warning::
        由 `bboxes` 指定的边界框和由 `img_metas` 指定的图片信息需要是有效的,即:
        :math:`x0 <= x1`, :math:`y0 <= y1`, `img_metas` 中的信息 :math:`(height, width, ratio)` 均为正数。

    参数:
        - **bboxes** (Tensor) - shape大小为 :math:`(N, 4)` 。:math:`N` 表示边界框的数量, `4` 表示 :math:`(x0, y0, x1, y1)` 四个坐标点。数据类型必须是float16或float32。
        - **img_metas** (Tensor) - 原始图片的信息 :math:`(height, width, ratio)` ,指定有效边界为 :math:`(height * ratio - 1, width * ratio - 1)` 。数据类型必须是float16或float32。

    返回:
        Tensor,shape为 :math:`(N,)` ,类型为bool,需要指出边界框是否在图片内。`True` 表示在,`False` 表示不在。

    异常:
        - **TypeError** - 如果 `bboxes` 或者 `img_metas` 不是Tensor。
        - **TypeError** - 如果 `bboxes` 或者 `img_metas` 的数据类型既不是float16,也不是float32。