Main Page   Modules   Class Hierarchy   Compound List   File List   Compound Members   Related Pages   Examples  

FloatKernel Class Reference

#include <FloatKernel.h>

Inheritance diagram for FloatKernel::

Kernel Image List of all members.

Public Methods

 FloatKernel (char *name="")
 FloatKernel (int w, int h, char *name="")
void makeRectangularPulse (float max_amplitude, int support)
void makeTriangularPulse (float max_amplitude, int support)
void makeGauss (float sigma)
void makeGauss (float sigma, float aspect, float orientation)
void makeDoG (float sigma, float ratio)
void makeDoG (float sigma, float aspect, float orientation, float ratio)
void makeGabor (float sigma, float aspect, float orientation, float lambda, float phase)
void makeLoG (float sigma)
void makeLoG (float sigma, float aspect, float orientation)

Detailed Description

Implements data structures and functions for manipulating different types of convolution kernels.
Examples:

test_convol.cpp, and test_kernel.cpp.

Definition at line 20 of file FloatKernel.h.


Constructor & Destructor Documentation

FloatKernel::FloatKernel ( char * name = "" ) [inline]
 

Creates a kernel with the specified name without allocating space for the kernel data.

Definition at line 28 of file FloatKernel.h.

FloatKernel::FloatKernel ( int w,
int h,
char * name = "" ) [inline]
 

Creates a kernel of size wxh with the specified name and allocates space for storing the kernel data.

Definition at line 31 of file FloatKernel.h.


Member Function Documentation

void FloatKernel::makeDoG ( float sigma,
float aspect,
float orientation,
float ratio )
 

Generates a 2D oriented Difference of Gaussians kernel . The parameters sigma, aspect, orientation (in degrees), and ratio determine the shape of the kernel according to the formulas:

where:

and

The kernel has zero mean and .

Definition at line 182 of file FloatKernel.cpp.

void FloatKernel::makeDoG ( float sigma,
float ratio )
 

Generates a 2D isotropic Difference of Gaussians kernel . The parameters sigma and ratio determine the shape of the kernel according to the formulas:

where:

The kernel has zero mean and .

Definition at line 176 of file FloatKernel.cpp.

void FloatKernel::makeGabor ( float sigma,
float aspect,
float orientation,
float lambda,
float phase )
 

Generates a 2D oriented Gabor kernel . The parameters sigma, aspect, orientation (in degrees), lambda, and phase (in degrees) determine the shape of the kernel according to the formulas:

where:

The kernel has zero mean and .

Examples:
test_kernel.cpp.

Definition at line 244 of file FloatKernel.cpp.

void FloatKernel::makeGauss ( float sigma,
float aspect,
float orientation )
 

Generates a 2D oriented Gaussian kernel . The parameters sigma, aspect, and orientation (in degrees) determine the shape of the kernel according to the formulas:

where

Definition at line 130 of file FloatKernel.cpp.

void FloatKernel::makeGauss ( float sigma )
 

Generates a 2D isotropic Gaussian kernel . The parameter sigma determines the shape of the kernel according to the formula:

Examples:
test_convol.cpp, and test_kernel.cpp.

Definition at line 124 of file FloatKernel.cpp.

void FloatKernel::makeLoG ( float sigma,
float aspect,
float orientation )
 

Generates a 2D oriented kernel , which is a Laplacian (second order derivative) of a Gaussian. The parameters sigma , aspect, and orientation (in degrees) determine the shape of the kernel according to the formulas:

where:

The kernel has zero mean and .

Definition at line 313 of file FloatKernel.cpp.

void FloatKernel::makeLoG ( float sigma )
 

Generates a 2D isotropic kernel , which is a Laplacian (second order derivative) of a Gaussian. The parameter sigma determines the shape of the kernel according to the formula:

The kernel has zero mean and .

Definition at line 307 of file FloatKernel.cpp.

void FloatKernel::makeRectangularPulse ( float max_amplitude,
int support )
 

Generates a centered 2D rectangular pulse (2D block) with amplitude max_amplitude and support in the interval . On the borders of the 2D block, the kernel value is max_amplitude/2.

Examples:
test_kernel.cpp.

Definition at line 8 of file FloatKernel.cpp.

void FloatKernel::makeTriangularPulse ( float max_amplitude,
int support )
 

Generates a centered 2D triangular pulse (2D pyramid) with maximum amplitude max_amplitude and support in the interval .

Examples:
test_kernel.cpp.

Definition at line 43 of file FloatKernel.cpp.


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