Open In App

Tensorflow.js tf.dilation2d() Function

Last Updated : 07 Jul, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

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

The .dilation2d() function is used to evaluate the grayscale dilation upon the stated input tensor.

Syntax:

tf.dilation2d(x, filter, strides, pad, dilations?, dataFormat?)

Parameters:

  • x: The stated input tensor which is either of rank 3 or else rank 4 and of shape: [batch, height, width, inChannels]. Moreover, in case the rank is 3, then the batch of size 1 is presumed. It can be of type tf.Tensor3D, tf.Tensor4D, TypedArray, or Array.
  • filter: The stated filter tensor of rank 3 and shape: [filterHeight, filterWidth, depth]. It can be of type  tf.Tensor3D, TypedArray, or Array.
  • strides: The stated strides of the sliding window for each size of the given input tensor of shape: [strideHeight, strideWidth]. In case, stated strides is a single number, then strideHeight == strideWidth. It can be of type [number, number], or number.
  • pad: The stated type of algorithm for padding. It can be of type valid or same.
    1. Here, for same and stride 1, the output would have identical size as input, irrespective of the filter size.
    2. For, ‘valid’ the output shall be smaller than the input in case, the filter size is larger than 1*1×1.
  • dilations: The stated dilation rates: [dilationHeight, dilationWidth] in that the input values are sampled over the height as well as width dimensions in favor of atrous morphological dilation. The by default value is [1, 1]. Moreover, in case dilations is a single number, then dilationHeight == dilationWidth. And if its greater than 1, then all the values of the strides should be 1. It is optional and is of type [number, number], number.
  • dataFormat: It specifies the data format of the stated input as well as output data. The by default value is ‘NHWC’. Moreover, the data here is stored in the order of: [batch, height, width, channels]. It is optional and is of type ‘NHWC’.

Return Value: It returns tf.Tensor3D or tf.Tensor4D.

Example 1:

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
 
// Defining input tensor
const x = tf.tensor3d([1, 2, 3, 4], [2, 2, 1]);
 
// Defining filter tensor
const y = tf.tensor3d([1, 1, 0, 4], [1, 1, 4]);
 
// Calling dilation2d() method
const result = tf.dilation2d(x, y, 2, 'valid');
 
// Printing output
result.print();


Output:

Tensor
     [ [[2],]]

Example 2:

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
 
// Calling dilation2d() method with
// all its parameters
tf.tensor3d([1.1, 2.2, 3.3, 4.4], [2, 2, 1]).dilation2d(
 tf.tensor3d([1.3, 1.2, null, -4], [1, 1, 4]),
             2, 'valid', [3, 2], 'NHWC').print();


Output:

Tensor
     [ [[2.4000001],]]

Reference: https://js.tensorflow.org/api/latest/#dilation2d



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads