eLynx SDK v3.3.0
C++ image processing API reference
Public Member Functions

eLynx::Image::KernelPSF Class Reference

PSF (point spread function) implementation based on convolution kernel. More...

#include <KernelPSF.h>

Inheritance diagram for eLynx::Image::KernelPSF:
eLynx::Image::IImagePSF

List of all members.

Public Member Functions

 KernelPSF (const Math::ConvolutionKerneld &iKernel)
 Constructor, creates PSF from given kernel.
 KernelPSF (const Math::ConvolutionKerneld &iKernel1, const Math::ConvolutionKerneld &iKernel2)
 Constructor, creates PSF from separable kernel.
 KernelPSF (const KernelPSF &iC)
 Copy constructor.
KernelPSFoperator= (const KernelPSF &iC)
 An assignement operator.
bool IsSeparable () const
 Returns true if PSF is implemented using separable kernel.
const Math::ConvolutionKerneldGetKernel () const
 Returns convolution kernel, that defines PSF.
Math::ConvolutionKerneldGetKernel ()
const Math::ConvolutionKerneldGetKernel2 () const
 Returns second convolution kernel, that defines PSF.
Math::ConvolutionKerneldGetKernel2 ()
void SetKernel (const Math::ConvolutionKerneld &iKernel)
 Sets convolution kernel.
void SetKernel2 (const Math::ConvolutionKerneld &iKernel)
 Sets second convolution kernel.
IImagePSF implementation
virtual uint32 GetWidth () const
 Returns width of the PSF function in pixels.
virtual uint32 GetHeight () const
 Returns height of the PSF function in pixels.
virtual double EvalPSF (uint32 iX, uint32 iY, int32 iDX, int32 iDY) const
 Returns the PSF value (floating point value between 0 and 1).

Detailed Description

PSF (point spread function) implementation based on convolution kernel.

The PSF does not change over the image. The kernel is supposed to be normalized. The kernel sizes must be odd numbers (so kernel has clear central pixel).


Constructor & Destructor Documentation

eLynx::Image::KernelPSF::KernelPSF ( const Math::ConvolutionKerneld iKernel )

Constructor, creates PSF from given kernel.

Parameters:
iKernelthe kernel to describe PSF
eLynx::Image::KernelPSF::KernelPSF ( const KernelPSF iC )

Copy constructor.

Parameters:
iCthe object to copy

Member Function Documentation

virtual double eLynx::Image::KernelPSF::EvalPSF ( uint32  iX,
uint32  iY,
int32  iDX,
int32  iDY 
) const [virtual]

Returns the PSF value (floating point value between 0 and 1).

The PSF is related to pixel iX and iY of the image. Delta values iDX and iDY represents center-relative coordinates in the PSF image. If the PSF is constant over whole image, iX and iY parameters are ignored.

Parameters:
iXthe x coordinate of the image pixel, for which PSF should be evaluated
iYthe y coordinate of the image pixel, for which PSF should be evaluated
iDXthe delta from PSF center in x direction (PSF coordinates)
iDYthe delta from PSF center in y direction (PSF coordinates)
Returns:
the PSF value for given pixel and delta (floating point value between 0 and 1)

Implements eLynx::Image::IImagePSF.

virtual uint32 eLynx::Image::KernelPSF::GetHeight (  ) const [virtual]

Returns height of the PSF function in pixels.

The PSF can be viewed as luminance image with width and height. The original point source is in the center of the image. PSF pixel values shows the convolved image of te source. Both width and height should be odd numbers.

Returns:
the width of the PSF function

Implements eLynx::Image::IImagePSF.

const Math::ConvolutionKerneld& eLynx::Image::KernelPSF::GetKernel (  ) const

Returns convolution kernel, that defines PSF.

Returns:
the convolution kernel
const Math::ConvolutionKerneld& eLynx::Image::KernelPSF::GetKernel2 (  ) const

Returns second convolution kernel, that defines PSF.

Valid if convolution is done using separable kernel.

Returns:
the second convolution kernel
virtual uint32 eLynx::Image::KernelPSF::GetWidth (  ) const [virtual]

Returns width of the PSF function in pixels.

The PSF can be viewed as luminance image with width and height. The original point source is in the center of the image. PSF pixel values shows the convolved image of te source. Both width and height should be odd numbers.

Returns:
the width of the PSF function

Implements eLynx::Image::IImagePSF.

bool eLynx::Image::KernelPSF::IsSeparable (  ) const

Returns true if PSF is implemented using separable kernel.

Returns:
true for separable kernel, false otherwise
KernelPSF& eLynx::Image::KernelPSF::operator= ( const KernelPSF iC )

An assignement operator.

Parameters:
iCthe object to assign
Returns:
reference to this object
void eLynx::Image::KernelPSF::SetKernel ( const Math::ConvolutionKerneld iKernel )

Sets convolution kernel.

Parameters:
iKernelthe kernel to describe PSF
void eLynx::Image::KernelPSF::SetKernel2 ( const Math::ConvolutionKerneld iKernel )

Sets second convolution kernel.

Used if convolution is done using separable kernel.

Parameters:
iKernelthe second kernel to describe PSF

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

Generated on Thu Dec 9 2010 by doxygen 1.7.2