iLab Neuromorphic Robotics Toolkit  0.1
Separable Filtering

These methods perform convolution of a separable filter and an Image using a given convolution boundary strategy.

See also:
Image Filtering

Enumerations

enum  nrt::ConvolutionBoundaryStrategy { nrt::ZERO, nrt::CLEAN, nrt::REPLICATE }
 Convolution boundary strategies. More...

Functions

template<NRT_MACRO_PROMOTE_PIX(double) >
Image< DestType > const nrt::xFilter (Image< PixType > const src, Image< DestType > const hFilt, ConvolutionBoundaryStrategy const boundary)
 Convolve a horizontal 1-D filter with the input Image using the given boundary strategy.
template<NRT_MACRO_PROMOTE_PIX(double) >
Image< DestType > const nrt::yFilter (Image< PixType > const src, Image< DestType > const vFilt, ConvolutionBoundaryStrategy const boundary)
 Convolve a vertical 1-D filter with the input Image using the given boundary strategy.
template<NRT_MACRO_PROMOTE_PIX(double) >
Image< DestType > const nrt::separableFilter (Image< PixType > const src, Image< DestType > const hFilter, Image< DestType > const vFilter, ConvolutionBoundaryStrategy const boundary)
 Convolve horizontal and vertical separable filters with the input Image using the given boundary strategy.
template<NRT_MACRO_PROMOTE_PIX(double) >
Image< DestType > const nrt::separableFilter (Image< PixType > const src, Image< DestType > const filter, ConvolutionBoundaryStrategy const boundary)
 Convolve a single separable filter (either 1xN or Nx1) with the input Image using the given boundary strategy.

Enumeration Type Documentation

Convolution boundary strategies.

Enumerator:
ZERO 

zero-pad, i.e., a black border is simulated around the source image

CLEAN 

normalize by the sum of the used filter coefficients (see Itti and Koch, Vision Research, 2000)

REPLICATE 

replicate the nearest image pixel value

Definition at line 58 of file SeparableFilter.H.


Function Documentation

template<NRT_MACRO_PROMOTE_PIX(double) >
nrt::Image< DestType > const nrt::separableFilter ( nrt::Image< PixType > const  src,
nrt::Image< DestType > const  hFilter,
nrt::Image< DestType > const  vFilter,
nrt::ConvolutionBoundaryStrategy const  boundary 
)

Convolve horizontal and vertical separable filters with the input Image using the given boundary strategy.

Internally, this method just calls nrt::yFilter(nrt::xFilter(src, hFilter), vFilter)

Definition at line 483 of file SeparableFilterImpl.H.

References nrt::Image< T, Flags >::height(), and nrt::Image< T, Flags >::width().

Referenced by nrt::sobelFilter3(), and nrt::sobelFilter5().

template<NRT_MACRO_PROMOTE_PIX(double) >
nrt::Image< DestType > const nrt::separableFilter ( nrt::Image< PixType > const  src,
nrt::Image< DestType > const  filter,
nrt::ConvolutionBoundaryStrategy const  boundary 
)

Convolve a single separable filter (either 1xN or Nx1) with the input Image using the given boundary strategy.

Internally, this method just calls yFilter() or xFilter(), depending on whether filter is a row or a column

Definition at line 497 of file SeparableFilterImpl.H.

References nrt::Image< T, Flags >::dims(), nrt::Image< T, Flags >::height(), NRT_FATAL, and nrt::Image< T, Flags >::width().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines