NonMaxSuppressionWithOverlaps

public final class NonMaxSuppressionWithOverlaps

Greedily selects a subset of bounding boxes in descending order of score,

pruning away boxes that have high overlaps with previously selected boxes. Bounding boxes with score less than `score_threshold` are removed. N-by-n overlap values are supplied as square matrix, which allows for defining a custom overlap criterium (eg. intersection over union, intersection over area, etc.).

The output of this operation is a set of integers indexing into the input collection of bounding boxes representing the selected boxes. The bounding box coordinates corresponding to the selected indices can then be obtained using the `tf.gather operation`. For example:

selected_indices = tf.image.non_max_suppression_with_overlaps( overlaps, scores, max_output_size, overlap_threshold, score_threshold) selected_boxes = tf.gather(boxes, selected_indices)

Constants

String OP_NAME The name of this op, as known by TensorFlow core engine

Public Methods

Output<TInt32>
asOutput()
Returns the symbolic handle of the tensor.
static NonMaxSuppressionWithOverlaps
create(Scope scope, Operand<TFloat32> overlaps, Operand<TFloat32> scores, Operand<TInt32> maxOutputSize, Operand<TFloat32> overlapThreshold, Operand<TFloat32> scoreThreshold)
Factory method to create a class wrapping a new NonMaxSuppressionWithOverlaps operation.
Output<TInt32>
selectedIndices()
A 1-D integer tensor of shape `[M]` representing the selected indices from the boxes tensor, where `M <= max_output_size`.

Inherited Methods

org.tensorflow.op.RawOp
final boolean
equals(Object obj)
final int
Operation
op()
Return this unit of computation as a single Operation.
final String
boolean
equals(Object arg0)
final Class<?>
getClass()
int
hashCode()
final void
notify()
final void
notifyAll()
String
toString()
final void
wait(long arg0, int arg1)
final void
wait(long arg0)
final void
wait()
org.tensorflow.op.Op
abstract ExecutionEnvironment
env()
Return the execution environment this op was created in.
abstract Operation
op()
Return this unit of computation as a single Operation.
org.tensorflow.Operand
abstract Output<TInt32>
asOutput()
Returns the symbolic handle of the tensor.
abstract TInt32
asTensor()
Returns the tensor at this operand.
abstract Shape
shape()
Returns the (possibly partially known) shape of the tensor referred to by the Output of this operand.
abstract Class<TInt32>
type()
Returns the tensor type of this operand
org.tensorflow.ndarray.Shaped
abstract int
rank()
abstract Shape
shape()
abstract long
size()
Computes and returns the total size of this container, in number of values.

Constants

public static final String OP_NAME

The name of this op, as known by TensorFlow core engine

Constant Value: "NonMaxSuppressionWithOverlaps"

Public Methods

public Output<TInt32> asOutput ()

Returns the symbolic handle of the tensor.

Inputs to TensorFlow operations are outputs of another TensorFlow operation. This method is used to obtain a symbolic handle that represents the computation of the input.

public static NonMaxSuppressionWithOverlaps create (Scope scope, Operand<TFloat32> overlaps, Operand<TFloat32> scores, Operand<TInt32> maxOutputSize, Operand<TFloat32> overlapThreshold, Operand<TFloat32> scoreThreshold)

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

Parameters
scope current scope
overlaps A 2-D float tensor of shape `[num_boxes, num_boxes]` representing the n-by-n box overlap values.
scores A 1-D float tensor of shape `[num_boxes]` representing a single score corresponding to each box (each row of boxes).
maxOutputSize A scalar integer tensor representing the maximum number of boxes to be selected by non max suppression.
overlapThreshold A 0-D float tensor representing the threshold for deciding whether boxes overlap too.
scoreThreshold A 0-D float tensor representing the threshold for deciding when to remove boxes based on score.
Returns
  • a new instance of NonMaxSuppressionWithOverlaps

public Output<TInt32> selectedIndices ()

A 1-D integer tensor of shape `[M]` representing the selected indices from the boxes tensor, where `M <= max_output_size`.