GenerateBoundingBoxProposals

public final class GenerateBoundingBoxProposals

This op produces Region of Interests from given bounding boxes(bbox_deltas) encoded wrt anchors according to eq.2 in arXiv:1506.01497

The op selects top `pre_nms_topn` scoring boxes, decodes them with respect to anchors, applies non-maximal suppression on overlapping boxes with higher than `nms_threshold` intersection-over-union (iou) value, discarding boxes where shorter side is less than `min_size`. Inputs: `scores`: A 4D tensor of shape [Batch, Height, Width, Num Anchors] containing the scores per anchor at given position `bbox_deltas`: is a tensor of shape [Batch, Height, Width, 4 x Num Anchors] boxes encoded to each anchor `anchors`: A 1D tensor of shape [4 x Num Anchors], representing the anchors. Outputs: `rois`: output RoIs, a 3D tensor of shape [Batch, post_nms_topn, 4], padded by 0 if less than post_nms_topn candidates found. `roi_probabilities`: probability scores of each roi in 'rois', a 2D tensor of shape [Batch,post_nms_topn], padded with 0 if needed, sorted by scores.

Nested Classes

class GenerateBoundingBoxProposals.Options Optional attributes for GenerateBoundingBoxProposals  

Public Methods

static GenerateBoundingBoxProposals
create(Scope scope, Operand<Float> scores, Operand<Float> bboxDeltas, Operand<Float> imageInfo, Operand<Float> anchors, Operand<Float> nmsThreshold, Operand<Integer> preNmsTopn, Operand<Float> minSize, Options... options)
Factory method to create a class wrapping a new GenerateBoundingBoxProposals operation.
static GenerateBoundingBoxProposals.Options
postNmsTopn(Long postNmsTopn)
Output<Float>
roiProbabilities()
A 2-D float tensor of shape `[num_images, post_nms_topn]` representing the score of the region of interest box in `rois` tensor at the same index.
Output<Float>
rois()
A 3-D float tensor of shape `[num_images,post_nms_topn,4]` representing the selected region of interest boxes.

Inherited Methods

Public Methods

public static GenerateBoundingBoxProposals create (Scope scope, Operand<Float> scores, Operand<Float> bboxDeltas, Operand<Float> imageInfo, Operand<Float> anchors, Operand<Float> nmsThreshold, Operand<Integer> preNmsTopn, Operand<Float> minSize, Options... options)

Factory method to create a class wrapping a new GenerateBoundingBoxProposals operation.

Parameters
scope current scope
scores A 4-D float tensor of shape `[num_images, height, width, num_achors]` containing scores of the boxes for given anchors, can be unsorted.
bboxDeltas A 4-D float tensor of shape `[num_images, height, width, 4 x num_anchors]`. encoding boxes with respec to each anchor. Coordinates are given in the form [dy, dx, dh, dw].
imageInfo A 2-D float tensor of shape `[num_images, 5]` containing image information Height, Width, Scale.
anchors A 2-D float tensor of shape `[num_anchors, 4]` describing the anchor boxes. Boxes are formatted in the form [y1, x1, y2, x2].
nmsThreshold A scalar float tensor for non-maximal-suppression threshold.
preNmsTopn A scalar int tensor for the number of top scoring boxes to be used as input.
minSize A scalar float tensor. Any box that has a smaller size than min_size will be discarded.
options carries optional attributes values
Returns
  • a new instance of GenerateBoundingBoxProposals

public static GenerateBoundingBoxProposals.Options postNmsTopn (Long postNmsTopn)

Parameters
postNmsTopn An integer. Maximum number of rois in the output.

public Output<Float> roiProbabilities ()

A 2-D float tensor of shape `[num_images, post_nms_topn]` representing the score of the region of interest box in `rois` tensor at the same index.

public Output<Float> rois ()

A 3-D float tensor of shape `[num_images,post_nms_topn,4]` representing the selected region of interest boxes. Sorted in descending order in scores.