Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

fl::Convolution Class Reference

#include <convolve.h>

Inheritance diagram for fl::Convolution:

fl::Filter fl::Convolution1D fl::ConvolutionDiscrete2D fl::ConvolutionDiscrete1D fl::ConvolutionRecursive1D fl::DifferenceOfGaussians fl::Gaussian2D fl::GaussianDerivativeFirst fl::GaussianDerivativeSecond fl::GaussianDerivativeThird fl::Laplacian List of all members.

Public Methods

virtual Image filter (const Image &image)=0
 Convolve the entire image with the kernel contained in this object.

virtual double response (const Image &image, const Point &p) const=0
 Strength of response of filter to image at pixel (x, y).


Public Attributes

BorderMode mode

Detailed Description

A Convolution is a type of Filter which computes the convolution of the image with some function.

Coordinate system convention: For efficiency's sake, we follow the standard coordinate system for pixel rasters. The origin is in the upper left. Positive x axis goes toward the right, and positive y axis goes downward.

Note about handedness: If you like to imagine that you are looking down at the plane where the pixels live, and that the positive z-axis comes out of the plane towards you, then this forms a "left-handed" coordinate system, which is universally condemned by purists. However, it is better to imagine that the positive z-axis is heading away from you, in which case this is a proper right-handed system. It is even better to realize that there is no z-axis whatsoever and that a 2D plane has no intrinsic handedness. (It is possible to define a handedness by choosing three non-colinear points as a basis. Since we have a coordiate system, we have implicitly already made this choice.)

All float-valued pixel coordinates follow the convention for Point (integral numbers refer to center of pixel). Integer-valued pixel coordinates refer to either the entire pixel or to its center, depending on context.


Member Function Documentation

virtual Image fl::Convolution::filter const Image   image [pure virtual]
 

Convolve the entire image with the kernel contained in this object.

Implements fl::Filter.

Implemented in fl::ConvolutionDiscrete2D, fl::ConvolutionDiscrete1D, and fl::ConvolutionRecursive1D.

virtual double fl::Convolution::response const Image   image,
const Point   p
const [pure virtual]
 

Strength of response of filter to image at pixel (x, y).

Implemented in fl::ConvolutionDiscrete2D, fl::ConvolutionDiscrete1D, and fl::ConvolutionRecursive1D.


Member Data Documentation

BorderMode fl::Convolution::mode
 


The documentation for this class was generated from the following file:
Generated on Thu Dec 9 17:13:26 2004 for fl by doxygen1.2.18