Tensorflow.js es una biblioteca de código abierto desarrollada por Google para ejecutar modelos de aprendizaje automático, así como redes neuronales de aprendizaje profundo en el entorno del navegador o del Node.
La función .image.nonMaxSuppressionPaddedAsync() se utiliza para ejecutar de forma asíncrona la supresión no máxima de los cuadros de limitación sobre la base de IOU, es decir, la intersección sobre la unión junto con la posibilidad de rellenar los resultados.
Sintaxis:
tf.image.nonMaxSuppressionPaddedAsync(boxes, scores, maxOutputSize, iouThreshold?, scoreThreshold?, padToMaxOutputSize?)
Parámetros:
- boxes: El tensor 2d indicado, que es de configuración [numBoxes, 4]. Y todo acceso es [y1, x1, y2, x2], permitiendo que (y1, x1) e (y2, x2) sean los bordes de la caja restrictiva. Puede ser de tipo tf.Tensor2D, TypedArray o Array.
- puntuaciones: El tensor 1d indicado, siempre que las puntuaciones de las cajas tengan la configuración [numBoxes]. Es de tipo tf.Tensor2D, TypedArray o Array.
- maxOutputSize: Es el recuento máximo de las cajas indicadas que se van a recoger. Es de tipo número.
- iouThreshold: Es el flotador indicado que significa el umbral para decidir si las casillas indicadas se cruzan demasiado con referencia al pagaré. Debe estar en medio de [0, 1]. El valor predeterminado es 0,5, es decir, el 50 por ciento de la caja se cruza. Es opcional y es de tipo número.
- scoreThreshold: Es el umbral establecido para decidir en qué momento se deben eliminar las casillas en función de la puntuación establecida. El valor predeterminado es -inf, es decir, se permiten todas las puntuaciones. Es opcional y es de tipo número.
- padToMaxOutputSize: Es un parámetro opcional de tipo booleano. El valor predeterminado es falso . En caso de que sea cierto, la dimensión del resultado selectedIndices se rellena con maxOutputSize .
Valor devuelto: Devuelve la promesa de {[nombre: string]: tf.Tensor}.
Ejemplo 1: En este ejemplo, usaremos un tensor 2d, puntajes y parámetros maxOutputSize.
Javascript
// Importing the tensorflow.js library import * as tf from "@tensorflow/tfjs"; // Calling image.nonMaxSuppressionPaddedAsync() method const output = await tf.image.nonMaxSuppressionPaddedAsync( tf.tensor2d([1, 2, 3, 4, 2, 4, 6, 7], [2, 4]), [1, 1], 4 ); // Printing output console.log(output);
Producción:
{ "selectedIndices": { "kept": false, "isDisposedInternal": false, "shape": [2], "dtype": "int32", "size": 2, "strides": [], "dataId": { "id": 54 }, "id": 54, "rankType": "1", "scopeId": 27 }, "validOutputs": { "kept": false, "isDisposedInternal": false, "shape": [], "dtype": "int32", "size": 1, "strides": [], "dataId": { "id": 55 }, "id": 55, "rankType": "0", "scopeId": 27 } }
Ejemplo 2: en este ejemplo, usaremos una array de flotantes, iouThreshold, scoreThreshold, así como padToMaxOutputSize.
Javascript
// Importing the tensorflow.js library import * as tf from "@tensorflow/tfjs"; // Defining an array of floats const arr = [ [11.1, 2.3, 7.3, 6.4], [3, 6]] // Calling image.nonMaxSuppressionPaddedAsync() method const res = await tf.image.nonMaxSuppressionPaddedAsync( arr, [2.1, 0], 100, 0.5, 1, true); // Printing output console.log(res);
Producción:
{ "selectedIndices": { "kept": false, "isDisposedInternal": false, "shape": [2], "dtype": "int32", "size": 2, "strides": [], "dataId": { "id": 62 }, "id": 62, "rankType": "1", "scopeId": 29 }, "validOutputs": { "kept": false, "isDisposedInternal": false, "shape": [], "dtype": "int32", "size": 1, "strides": [], "dataId": { "id": 63 }, "id": 63, "rankType": "0", "scopeId": 29 } }
Referencia: https://js.tensorflow.org/api/latest/#image.nonMaxSuppressionPaddedAsync
Publicación traducida automáticamente
Artículo escrito por nidhi1352singh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA