Función Tensorflow.js tf.image.cropAndResize()

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.cropAndResize() se usa para sacar las salidas del tensor de imagen de entrada indicado y también las vuelve a escalar a través de un muestreo bilineal o, de lo contrario, un muestreo del vecino más cercano a una dimensión de salida normal según lo establecido por la longitud del recorte.

Sintaxis:

tf.image.cropAndResize(image, boxes, boxInd, cropSize, 
method?, extrapolationValue?)

Parámetros: Este método acepta los siguientes parámetros:

  • imágenes: el tensor 4d indicado, que es de configuración [lote, altura de imagen, ancho de imagen, profundidad]. Donde tanto imageHeight como imageWidth deben ser positivos, definiendo el grupo de imágenes de donde se van a tomar los recortes. Puede ser de tipo tf.Tensor4D, TypedArray o Array.
  • boxes: El tensor 2d float32 indicado, que tiene una configuración [numBoxes, 4]. Y todo acceso es [y1, x1, y2, x2], permitiendo que (y1, x1) e (y2, x2) sean las coordenadas estandarizadas de la caja en la imagen boxInd[i] en el grupo. Puede ser de tipo tf.Tensor2D, TypedArray o Array.
  • boxInd: El tensor 1d int32 indicado, que es de configuración [numBoxes] junto con valores en el rango [0, lote) que define la imagen que indica el i-th box. Es de tipo tf.Tensor1D, TypedArray o Array.
  • cropSize: Es el tensor 1d int32 indicado que tiene dos elementos y tiene una configuración [cropHeigh, cropWidth] que define la longitud a la que se reescalan todos y cada uno de los cultivos. Es de tipo [número, número].
  • método: Es un parámetro opcional que define el método de muestreo para el reescalado. El valor predeterminado es bilineal . Puede ser de tipo ‘bilineal’ o ‘más cercano’.
  • extrapolationValue: es el umbral establecido que se utiliza para concluir en qué momento se deben eliminar las casillas sobre la base de la puntuación establecida. El valor por defecto es cero. Es opcional y es de tipo número.

Valor devuelto: Devuelve el objeto tf.Tensor4D.

Ejemplo 1: uso de un tensor 4d, parámetros boxes, boxInd y cropSize.

Javascript

// Importing the tensorflow.js library
const tf = require("@tensorflow/tfjs")
  
// Calling image.cropAndResize() method and
// Printing output
tf.image.cropAndResize(tf.tensor4d([[
  [[1, 7], [21, 9]],
  [[8, 9], [1, 33]]
]]), tf.tensor2d([1, 2, 3, 4], [1, 4]), [2], [1, 1]).print();

Producción:

Tensor
     [ [ [[0, 0],]]]

Ejemplo 2: uso de una array de flotantes, método y extrapolationValue.

Javascript

// Importing the tensorflow.js library
const tf = require("@tensorflow/tfjs")
  
// Defining an array of floats
const arr = [[
  [[1.1, 1.7, 1.5, 1.1], 
  [1.7, 1.9, 8.1, 6.3]],
  [[3.3, 3.4, 3.7, 4.0], 
  [5.1, 5.2, 5.3, 5.9]]
]];
  
// Defining boxes with an array of floats
const boxes = [[11.1, 2.3, 7.3, 6.4], [1, 4]];
  
// Calling image.cropAndResize() method and
// Printing output
tf.image.cropAndResize(arr, boxes, [2, 4], [2, 1], 'nearest', 0.4).print();

Producción:

Tensor
    [[ [[0, 0, 0, 0],],

       [[0, 0, 0, 0],]],


     [ [[0, 0, 0, 0],],

       [[0, 0, 0, 0],]]]

Referencia: https://js.tensorflow.org/api/latest/#image.cropAndResize

Publicación traducida automáticamente

Artículo escrito por nidhi1352singh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *