async function nonMaxSuppressionAsync_(boxes, scores, maxOutputSize, iouThreshold = 0.5, scoreThreshold = Number.NEGATIVE_INFINITY) {
    const $boxes = (0, _tensorUtilEnv.convertToTensor)(boxes, "boxes", "nonMaxSuppressionAsync");
    const $scores = (0, _tensorUtilEnv.convertToTensor)(scores, "scores", "nonMaxSuppressionAsync");
    const inputs = (0, _nonmaxUtil.nonMaxSuppSanityCheck)($boxes, $scores, maxOutputSize, iouThreshold, scoreThreshold);
    maxOutputSize = inputs.maxOutputSize;
    iouThreshold = inputs.iouThreshold;
    scoreThreshold = inputs.scoreThreshold;
    const boxesAndScores = await Promise.all([
        $boxes.data(),
        $scores.data()
    ]);
    const boxesVals = boxesAndScores[0];
    const scoresVals = boxesAndScores[1];
    // We call a cpu based impl directly with the typedarray data  here rather
    // than a kernel because all kernels are synchronous (and thus cannot await
    // .data()).
    const { selectedIndices } = (0, _nonMaxSuppressionImpl.nonMaxSuppressionV3Impl)(boxesVals, scoresVals, maxOutputSize, iouThreshold, scoreThreshold);
    if ($boxes !== boxes) $boxes.dispose();
    if ($scores !== scores) $scores.dispose();
    return (0, _tensor1D.tensor1d)(selectedIndices, "int32");
}
Performs non maximum suppression of bounding boxes based on
iou (intersection over union).

This is the async version of `nonMaxSuppression`

@param boxes a 2d tensor of shape `[numBoxes, 4]`. Each entry is
    `[y1, x1, y2, x2]`, where `(y1, x1)` and `(y2, x2)` are the corners of
    the bounding box.
@param scores a 1d tensor providing the box scores of shape `[numBoxes]`.
@param maxOutputSize The maximum number of boxes to be selected.
@param iouThreshold A float representing the threshold for deciding whether
    boxes overlap too much with respect to IOU. Must be between [0, 1].
    Defaults to 0.5 (50% box overlap).
@param scoreThreshold A threshold for deciding when to remove boxes based
    on score. Defaults to -inf, which means any score is accepted.
@return A 1D tensor with the selected box indices.

@doc {heading: 'Operations', subheading: 'Images', namespace: 'image'}