Saturday, December 28, 2024
Google search engine
HomeLanguagesJavascriptTensorflow.js tf.image.transform() Function

Tensorflow.js tf.image.transform() Function

Tensorflow.js is an open-source library developed by Google for running machine learning models as well as deep learning neural networks in the browser or node environment.

The .image.transform() function is used to apply the specified transform(s) to the image(s).

Syntax:

tf.image.transform(image, transforms, interpolation?, fillMode?, 
fillValue?, outputShape?)

Parameters: This method accepts the following parameters:

  • images: The stated 4d tensor, which is of configuration [batch, imageHeight, imageWidth, depth]. It can be of type tf.Tensor4D, TypedArray, or Array.
  • transforms: The stated projective transform matrix or matrices. It is a 1d tensor of range 8 or else tensor of dimension N x 8. In case, a single row of transforms is [a0, a1, a2, b0 b1, b2, c0, c1], subsequently it plots the output point i.e. (x, y) into a modified input point i.e. (x’, y’) = ((a0 x + a1 y + a2) / k, (b0 x + b1 y + b2) / k), where k = c0 x + c1 y + 1. Moreover, the transforms are reversed in comparison to the transform plotting input points to the output points.
  • interpolation: It is the stated interpolation mode. It can be of type ‘nearest’, or ‘bilinear’. It is optional and the by default value is ‘nearest’.
  • fillMode: Here, the stated points beyond the margins of the input are filled in accordance with the stated mode. The mode is optional and can be of type ‘constant’, ‘reflect’, ‘wrap’, or ‘nearest’. The by default value is ‘constant’. In the ‘reflect‘ mode i.e. (d c b a | a b c d | d c b a ), the input is elongated by meditating around the verge of the utmost pixel. In the ‘constant‘ mode i.e. (k k k k | a b c d | k k k k), the input is elongated by stuffing every values beyond the verge along with the identical constant value k. In ‘wrap‘ mode i.e. (a b c d | a b c d | a b c d), the input is elongated by enclosing about the opposite edge. In ‘nearest‘ mode i.e. (a a a a | a b c d | d d d d), the input is elongated by the closest pixel.
  • fillValue: It is a float that depicts the value which is to be filled beyond the edges, if the stated fillMode is ‘constant‘. It is optional and is of type number.
  • outputShape: It is optional and is of type [number, number].

Return Value: It returns tf.Tensor4D object.

Example 1: Using a 4d tensor and a 2d tensor i.e. transforms.

Javascript




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


Output:

Tensor
    [[[[0, 0 ],
       [1, 33]],

      [[1, 33],
       [8, 9 ]]]]

Example 2: Using an array of floats, interpolation, fillMode, fillValue, as well as outputShape.

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]]
]];
  
// Calling image.transform() method and
// Printing output
tf.image.transform(arr, tf.tensor2d(
    [1.3, 2.4, 3.5, 4.5, 5.1, 6.0, 7.2, 8.5], 
    [1, 8]),'bilinear', 'reflect', 2, [2, 2])
    .print();


Output:

Tensor
    [[[[3.3      , 3.4000001, 3.7      , 4        ],
       [4.3536587, 4.4536586, 4.6365857, 5.112195 ]],

      [[4.4178948, 4.5178947, 4.6936841, 5.1800003],
       [3.8970597, 4.0186343, 4.3869019, 4.721858 ]]]]

Reference: https://js.tensorflow.org/api/latest/#image.transform

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!

RELATED ARTICLES

Most Popular

Recent Comments