# gaussSmooth

## PURPOSE

Applies Gaussian smoothing to a (multidimensional) image.

## SYNOPSIS

function [L,filters] = gaussSmooth( I, sigmas, shape, radius )

## DESCRIPTION

     Applies Gaussian smoothing to a (multidimensional) image.

     Smooths the n-dimensional array I with a n-dimensional gaussian with
     standard deviations specified by sigmas.  This operation in linearly
     seperable and is implemented as such.

     USAGE
      [L,filters] = gaussSmooth( I, sigmas, [shape], [radius] )

     INPUTS
      I       - input image
      sigmas  - either n dimensional or 1 dimensional vector of standard devs
                if sigmas(n)<=.3 then does not smooth along that dimension
      shape   - ['full'] shape flag 'valid', 'full', 'same', or 'smooth'
      radius  - [2.25] radius in units of standard deviation

     OUTPUTS
      L       - smoothed image
      filters - actual filters used, cell array of length n

     EXAMPLE
      load trees; I=ind2gray(X,map);
      I2 = gaussSmooth( I, 1, 'same' );
      figure(1); im(I); figure(2); im(I2);

     See also FILTERGAUSS

     Piotr's Image&Video Toolbox      Version 2.0
     Copyright 2008 Piotr Dollar.  [pdollar-at-caltech.edu]
     Please email me if you find bugs, or have suggestions or questions!
     Licensed under the Lesser GPL [see external/lgpl.txt]

## CROSS-REFERENCE INFORMATION

This function calls:

- filterGauss n-dimensional Gaussian filter.
- convnFast Fast convolution, replacement for both conv2 and convn.

This function is called by:

- diffTracker Fast, robust estimation of translational offset between a pair of images.
- histcImLoc Creates a series of locally position dependent histograms.
- kernelTracker Kernel Tracker from Comaniciu, Ramesh and Meer PAMI 2003.
- optFlowCorr Calculate optical flow using cross-correlation.
- optFlowHorn Calculate optical flow using Horn & Schunck.
- optFlowLk Calculate optical flow using Lucas & Kanade. Fast, parallel code.