Convert a bounding box dictionary batched Ragged tensors
Convert a bounding box dictionary batched Ragged tensors
- Original Link : https://keras.io/api/keras_cv/bounding_box/utils/to_ragged/
- Last Checked at : 2024-11-25
to_ragged
function
keras_cv.bounding_box.to_ragged(bounding_boxes, sentinel=-1, dtype=tf.float32)
converts a Dense padded bounding box tf.Tensor
to a tf.RaggedTensor
.
Bounding boxes are ragged tensors in most use cases. Converting them to a dense tensor makes it easier to work with Tensorflow ecosystem. This function can be used to filter out the masked out bounding boxes by checking for padded sentinel value of the class_id axis of the bounding_boxes.
Example
bounding_boxes = {
"boxes": tf.constant([[2, 3, 4, 5], [0, 1, 2, 3]]),
"classes": tf.constant([[-1, 1]]),
}
bounding_boxes = bounding_box.to_ragged(bounding_boxes)
print(bounding_boxes)
# {
# "boxes": [[0, 1, 2, 3]],
# "classes": [[1]]
# }
Arguments
- bounding_boxes: a Tensor of bounding boxes. May be batched, or unbatched.
- sentinel: The value indicating that a bounding box does not exist at the current index, and the corresponding box is padding, defaults to -1.
- dtype: the data type to use for the underlying Tensors.
Returns
dictionary of tf.RaggedTensor
or ’tf.Tensor’ containing the filtered
bounding boxes.