An abstract class for space-variant image processing. More...
#include <Foveator/Foveator.H>
Public Member Functions | |
Foveator (const Image< PixRGB< byte > > &img) | |
Constructor. | |
virtual | ~Foveator () |
Destructor. | |
Point2D< int > | getOrigin (void) const |
Returns the current center of foveation. | |
int | getWidth (void) const |
Returns width of image being foveated. | |
int | getHeight (void) const |
Returns height of image being foveated. | |
void | changeImage (const Image< PixRGB< byte > > &img) |
Change the image to be foveated. | |
virtual bool | setOrigin (Point2D< int > pt) |
Set origin point (center of foveation). | |
virtual bool | setOrigin (int x, int y) |
Set origin point (center of foveation). | |
virtual Image< PixRGB< byte > > | foveate (void)=0 |
Foveation function, returns foveated image. | |
Protected Attributes | |
Image< PixRGB< byte > > | original |
image to be foveated | |
int | width |
width of original image | |
int | height |
height of original image | |
Point2D< int > | origin |
center of foveation |
An abstract class for space-variant image processing.
Space-variant image processing concentrates image quality and resolution in areas of interest. Human vision has high resolution at the center, but it decreases as we move further out into the periphery. Through the process of foveation, we attempt to simulate this type of vision.
Classes used for foveation should inherit this as a base. The foveation operation is performed through pure virtual function foveate(). Different foveation techniques and algorithms are implemented in BlurFoveator, PyrFoveator, and LPTFoveator.
Definition at line 25 of file Foveator.H.
Constructor.
Create a Foveator object to operate on image argument
img | image to be foveated |
Definition at line 14 of file Foveator.C.
Foveator::~Foveator | ( | ) | [virtual] |
Destructor.
Definition at line 22 of file Foveator.C.
Change the image to be foveated.
Change the image to be foveated to another one of the same size
img | new image to be used, must have same dimensions as original |
Definition at line 49 of file Foveator.C.
Foveation function, returns foveated image.
Implemented in BlurFoveator, LPTFoveator, and PyrFoveator.
int Foveator::getHeight | ( | void | ) | const |
Returns height of image being foveated.
Definition at line 41 of file Foveator.C.
References height.
Point2D< int > Foveator::getOrigin | ( | void | ) | const |
Returns the current center of foveation.
Definition at line 29 of file Foveator.C.
References origin.
int Foveator::getWidth | ( | void | ) | const |
bool Foveator::setOrigin | ( | int | x, | |
int | y | |||
) | [virtual] |
Set origin point (center of foveation).
Set origin point to two int arguments, returns true if successful
x | horizontal coordinate of origin | |
y | vertical coordinate of origin |
Reimplemented in LPTFoveator.
Definition at line 80 of file Foveator.C.
References Image< T >::coordsOk(), Point2D< T >::i, origin, and original.
bool Foveator::setOrigin | ( | Point2D< int > | pt | ) | [virtual] |
Set origin point (center of foveation).
Set origin point to Point2D<int> argument, returns true if successful
pt | center of foveation |
Reimplemented in LPTFoveator.
Definition at line 65 of file Foveator.C.
References Image< T >::coordsOk(), origin, and original.
Referenced by LPTFoveator::setOrigin().
int Foveator::height [protected] |
height of original image
Definition at line 30 of file Foveator.H.
Referenced by BlurFoveator::BlurFoveator(), changeImage(), PyrFoveator::foveate(), BlurFoveator::foveate(), getHeight(), LPTFoveator::invLPT(), LPTFoveator::LPTFoveator(), and LPTFoveator::setOrigin().
Point2D<int> Foveator::origin [protected] |
center of foveation
Definition at line 31 of file Foveator.H.
Referenced by BlurFoveator::foveate(), PyrFoveator::foveate(), getOrigin(), LPTFoveator::setOrigin(), and setOrigin().
Image< PixRGB< byte > > Foveator::original [protected] |
image to be foveated
Definition at line 28 of file Foveator.H.
Referenced by changeImage(), BlurFoveator::foveate(), PyrFoveator::foveate(), LPTFoveator::getLPT(), and setOrigin().
int Foveator::width [protected] |
width of original image
Definition at line 29 of file Foveator.H.
Referenced by BlurFoveator::BlurFoveator(), changeImage(), PyrFoveator::foveate(), BlurFoveator::foveate(), getWidth(), LPTFoveator::invLPT(), LPTFoveator::LPTFoveator(), and LPTFoveator::setOrigin().