tfmri.image.image_gradients

image_gradients(image, method='sobel', norm=False, batch_dims=None, image_dims=None, name=None)[source]

Computes image gradients.

Supports 2D and 3D inputs.

Parameters
  • image – A tf.Tensor of shape batch_shape + image_shape + [channels]. The number of dimensions in batch_shape and image_shape can be specified using the arguments batch_dims and image_dims respectively. By default, if neither batch_dims nor image_dims are specified, it is assumed that there is one batch dimension, i.e. that image has shape [batch_size] + image_shape + [channels].

  • method – A str. The operator to use for gradient computation. Must be one of 'prewitt', 'sobel' or 'scharr'. Defaults to 'sobel'.

  • norm – A boolean. If True, returns normalized gradients.

  • batch_dims

    An int. The number of batch dimensions in image. If None, it is inferred from image and image_dims as image.shape.rank - image_dims - 1. If image_dims is also None, then batch_dims defaults to 1. batch_dims can always be inferred if image_dims was specified, so you only need to provide one of the two.

  • image_dims

    An int. The number of spatial dimensions in image. If None, it is inferred from image and batch_dims as image.shape.rank - batch_dims - 1. Defaults to None. image_dims can always be inferred if batch_dims was specified, so you only need to provide one of the two.

  • name – A name for the operation (optional).

Returns

A tf.Tensor of shape image.shape + [len(spatial_dims)] holding the image gradients along each spatial dimension.