mlpack  master
Static Public Member Functions | List of all members
mlpack::ann::FFTConvolution< BorderMode, padLastDim > Class Template Reference

Computes the two-dimensional convolution through fft. More...

Static Public Member Functions

template<typename eT , typename Border = BorderMode>
static std::enable_if< std::is_same< Border, ValidConvolution >::value, void >::type Convolution (const arma::Mat< eT > &input, const arma::Mat< eT > &filter, arma::Mat< eT > &output)
 
template<typename eT , typename Border = BorderMode>
static std::enable_if< std::is_same< Border, FullConvolution >::value, void >::type Convolution (const arma::Mat< eT > &input, const arma::Mat< eT > &filter, arma::Mat< eT > &output)
 
template<typename eT >
static void Convolution (const arma::Cube< eT > &input, const arma::Cube< eT > &filter, arma::Cube< eT > &output)
 
template<typename eT >
static void Convolution (const arma::Mat< eT > &input, const arma::Cube< eT > &filter, arma::Cube< eT > &output)
 
template<typename eT >
static void Convolution (const arma::Cube< eT > &input, const arma::Mat< eT > &filter, arma::Cube< eT > &output)
 

Detailed Description

template<typename BorderMode = FullConvolution, const bool padLastDim = false>
class mlpack::ann::FFTConvolution< BorderMode, padLastDim >

Computes the two-dimensional convolution through fft.

This class allows specification of the type of the border type. The convolution can be compute with the valid border type of the full border type (default).

FullConvolution: returns the full two-dimensional convolution. ValidConvolution: returns only those parts of the convolution that are computed without the zero-padded edges.

Template Parameters
BorderModeType of the border mode (FullConvolution or ValidConvolution).
padLastDimPad the last dimension of the input to to turn it from odd to even.

Definition at line 37 of file fft_convolution.hpp.

Member Function Documentation

template<typename BorderMode = FullConvolution, const bool padLastDim = false>
template<typename eT , typename Border = BorderMode>
static std::enable_if< std::is_same<Border, ValidConvolution>::value, void>::type mlpack::ann::FFTConvolution< BorderMode, padLastDim >::Convolution ( const arma::Mat< eT > &  input,
const arma::Mat< eT > &  filter,
arma::Mat< eT > &  output 
)
inlinestatic
template<typename BorderMode = FullConvolution, const bool padLastDim = false>
template<typename eT , typename Border = BorderMode>
static std::enable_if< std::is_same<Border, FullConvolution>::value, void>::type mlpack::ann::FFTConvolution< BorderMode, padLastDim >::Convolution ( const arma::Mat< eT > &  input,
const arma::Mat< eT > &  filter,
arma::Mat< eT > &  output 
)
inlinestatic

Definition at line 89 of file fft_convolution.hpp.

template<typename BorderMode = FullConvolution, const bool padLastDim = false>
template<typename eT >
static void mlpack::ann::FFTConvolution< BorderMode, padLastDim >::Convolution ( const arma::Cube< eT > &  input,
const arma::Cube< eT > &  filter,
arma::Cube< eT > &  output 
)
inlinestatic
template<typename BorderMode = FullConvolution, const bool padLastDim = false>
template<typename eT >
static void mlpack::ann::FFTConvolution< BorderMode, padLastDim >::Convolution ( const arma::Mat< eT > &  input,
const arma::Cube< eT > &  filter,
arma::Cube< eT > &  output 
)
inlinestatic
template<typename BorderMode = FullConvolution, const bool padLastDim = false>
template<typename eT >
static void mlpack::ann::FFTConvolution< BorderMode, padLastDim >::Convolution ( const arma::Cube< eT > &  input,
const arma::Mat< eT > &  filter,
arma::Cube< eT > &  output 
)
inlinestatic

The documentation for this class was generated from the following file: