📅  最后修改于: 2023-12-03 14:47:55.096000             🧑  作者: Mango
tf.image.nonMaxSuppressionPadded()
是 TensorFlow.js 中的一个非最大值抑制算法函数,用于对检测边界框进行过滤,以去重重叠的边界框,得到最终的检测结果。
tf.image.nonMaxSuppressionPadded(boxes, scores, maxOutputSize, iouThreshold, scoreThreshold)
[numBoxes, 4]
的张量,表示边界框坐标(左上角和右下角),支持多个目标同时进行计算[numBoxes]
的张量,表示每个目标的置信度(得分)[M]
的张量,表示选中的目标索引,其中M <= maxOutputSize[]
的标量张量,表示选中的目标数量,为整数类型const tf = require('@tensorflow/tfjs-node-gpu')
const boxes = tf.tensor2d([[0,0,1,1], [0.5,0.5,1,1]])
const scores = tf.tensor1d([0.9, 0.8])
const maxOutputSize = 1
const iouThreshold = 0.5
const scoreThreshold = 0.0
const result = tf.image.nonMaxSuppressionPadded(boxes, scores, maxOutputSize, iouThreshold, scoreThreshold)
result.selectedIndices.print()
result.validOutputs.print()
输出结果:
Tensor
[[0]]
dtype: int32
Tensor
1
dtype: int32
tf.setBackend('cpu')
或tf.setBackend('webgl')
指定后端,服务器端需要使用tensorflow-gpu或tensorflow-cpu