Milena (Olena)  User documentation 2.0a Id
 All Classes Namespaces Functions Variables Typedefs Enumerator Groups Pages
mln::linear Namespace Reference

Namespace of linear image processing routines. More...

Namespaces

namespace  impl
 Namespace of linear image processing routines implementation details.
 
namespace  local
 Specializations of local linear routines.
 

Functions

template<typename I >
mln::trait::concrete< I >::ret gaussian (const Image< I > &input, float sigma)
 Gaussian filter of an image input.
 
template<typename I >
mln::trait::concrete< I >::ret gaussian (const Image< I > &input, float sigma, int dir)
 
template<typename I >
mln::trait::concrete< I >::ret gaussian_1st_derivative (const Image< I > &input, float sigma, int dir)
 
template<typename I >
mln::trait::concrete< I >::ret gaussian_2nd_derivative (const Image< I > &input, float sigma, int dir)
 
template<typename I >
mln::trait::concrete< I >::ret gaussian_2nd_derivative (const Image< I > &input, float sigma)
 
template<typename I , typename W , unsigned Sh, unsigned Sv>
 mln_ch_convolve (I, W) convolve_2x1d(const Image< I > &input
 
template<typename I , typename W >
 mln_ch_convolve (I, W) convolve(const Image< I > &input = convolve(input, w_win)
 
template<typename I , typename W , unsigned S>
 mln_ch_convolve (I, W) convolve_directional(const Image< I > &input
 
template<typename I >
 mln_ch_convolve_grad (I, int) sobel_2d(const Image< I > &input)
 Compute the vertical component of the 2D Sobel gradient.
 
template<typename I >
 mln_ch_convolve (I, int) sobel_2d_h(const Image< I > &input)
 Sobel_2d gradient components.
 

Detailed Description

Namespace of linear image processing routines.

Function Documentation

template<typename I >
mln::trait::concrete< I >::ret mln::linear::gaussian ( const Image< I > &  input,
float  sigma 
)
inline

Gaussian filter of an image input.

Precondition
output.domain = input.domain

Apply an approximated gaussian filter of sigma on input. This filter is applied in all the input image direction.

Precondition
input.is_valid

Definition at line 750 of file gaussian.hh.

References mln::initialize().

Referenced by mln::subsampling::gaussian_subsampling().

template<typename I >
mln::trait::concrete< I >::ret mln::linear::gaussian ( const Image< I > &  input,
float  sigma,
int  dir 
)
inline

Apply an approximated gaussian filter of sigma on input. on a specific direction dir if dir = 0, the filter is applied on the first image dimension. if dir = 1, the filter is applied on the second image dimension. And so on...

Precondition
input.is_valid
dir < dimension(input)

Definition at line 653 of file gaussian.hh.

References mln::initialize().

template<typename I >
mln::trait::concrete< I >::ret mln::linear::gaussian_1st_derivative ( const Image< I > &  input,
float  sigma,
int  dir 
)
inline

Apply an approximated first derivative gaussian filter of sigma on input. on a specific direction dir if dir = 0, the filter is applied on the first image dimension. if dir = 1, the filter is applied on the second image dimension. And so on...

Precondition
input.is_valid
dir < dimension(input)

Definition at line 685 of file gaussian.hh.

References mln::initialize().

template<typename I >
mln::trait::concrete< I >::ret mln::linear::gaussian_2nd_derivative ( const Image< I > &  input,
float  sigma,
int  dir 
)
inline

Apply an approximated second derivative gaussian filter of sigma on input. on a specific direction dir if dir = 0, the filter is applied on the first image dimension. if dir = 1, the filter is applied on the second image dimension. And so on...

Precondition
input.is_valid
dir < dimension(input)

Definition at line 718 of file gaussian.hh.

References mln::initialize().

template<typename I >
mln::trait::concrete< I >::ret mln::linear::gaussian_2nd_derivative ( const Image< I > &  input,
float  sigma 
)
inline

Apply an approximated second derivative gaussian filter of sigma on input This filter is applied in all the input image direction.

Precondition
input.is_valid

Definition at line 807 of file gaussian.hh.

References mln::initialize().

template<typename I >
mln::linear::mln_ch_convolve ( ,
int   
) const
inline

Sobel_2d gradient components.

Compute the L1 norm of the 2D Sobel gradient.

Compute the vertical component of the 2D Sobel gradient.

Compute the horizontal component of the 2D Sobel gradient.

Definition at line 70 of file lap.hh.

References mln_ch_convolve(), and mln::make::w_window2d().

template<typename I , typename W , unsigned Sh, unsigned Sv>
mln::linear::mln_ch_convolve ( ,
 
) const

Convolution of an image input by two weighted line-shapes windows.

Warning
The weighted window is used as-is, considering that its symmetrization is handled by the client.
Precondition
input.is_valid
template<typename I , typename W >
mln::linear::mln_ch_convolve ( ,
 
) const = convolve(input, w_win)

Convolution of an image input by the weighted window w_win.

  \warning Computation of \p output(p) is performed with the
  value type of \p output.

  \warning The weighted window is used as-is, considering that
  its symmetrization is handled by the client.

  \pre input.is_valid

Referenced by mln_ch_convolve(), and mln_ch_convolve_grad().

template<typename I , typename W , unsigned S>
mln::linear::mln_ch_convolve ( ,
 
) const
inline

Convolution of an image input by a line-shaped (directional) weighted window defined by the array of weights.

Warning
Computation of output(p) is performed with the value type of output.
The weighted window is used as-is, considering that its symmetrization is handled by the client.
Precondition
input.is_valid
template<typename I >
mln::linear::mln_ch_convolve_grad ( ,
int   
) const

Compute the vertical component of the 2D Sobel gradient.

Definition at line 124 of file sobel_2d.hh.

References mln_ch_convolve(), and mln::data::transform().