TuttleOFX  1
gaussianKernel.hpp File Reference
#include "convolve.hpp"
#include <terry/globals.hpp>
#include <boost/math/constants/constants.hpp>
#include <boost/math/special_functions/pow.hpp>
#include <boost/lambda/core.hpp>
#include <boost/lambda/lambda.hpp>
#include <boost/lambda/algorithm.hpp>
#include <cmath>
#include <vector>
#include <algorithm>
Include dependency graph for gaussianKernel.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  terry
namespace  terry::filter

Functions

template<typename Scalar >
Scalar terry::filter::gaussianValueAt (const Scalar x, const Scalar amplitude, const Scalar yscale=1, const Scalar xcenter=0)
 gaussian function

\[ G(x) = \frac{1}{\sqrt{2\pi \sigma^2}} e^{-\frac{x^2}{2 \sigma^2}} \]

or simplified...

\[ G(x) = a e^{- { \frac{(x-b)^2 }{ 2 c^2} } } \]


template<typename Scalar >
terry::filter::kernel_1d< Scalar > terry::filter::buildGaussian1DKernel (const Scalar size, const bool normalize=true, const double epsilon=kConvolutionEpsilon)
 create the gaussian kernel * found the kernel size * fill kernel values
template<typename Scalar >
Scalar terry::filter::gaussianDerivativeValueAt (const Scalar x, const Scalar amplitude, const Scalar yscale=1, const Scalar xcenter=0)
 gaussian derivative function

\[ G(x) = - x/a e^{- { \frac{(x-b)^2 }{ 2 c^2} } } \]


template<typename Scalar >
terry::filter::kernel_1d< Scalar > terry::filter::buildGaussianDerivative1DKernel (const Scalar size, const bool normalize=true, const double epsilon=kConvolutionEpsilon)
 create the gaussian derivative kernel * found the kernel size * fill kernel values

Variables

static const double terry::filter::kConvolutionEpsilon = 0.1
 arbitrary value...