Image Component Library (ICL)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Private Attributes

Class for Wiener Filter \. More...

#include <WienerOp.h>

Inheritance diagram for icl::filter::WienerOp:
icl::filter::NeighborhoodOp icl::filter::UnaryOp icl::utils::Configurable

List of all members.

Public Member Functions

 WienerOp (const utils::Size &maskSize, icl32f noise=0)
 Constructor that creates a wiener filter object, with specified mask size.
ICLFilter_API void apply (const core::ImgBase *poSrc, core::ImgBase **ppoDst)
 Filters an image using the Wiener algorithm.
icl32f getNoise () const
 returns the current noise factor
void setNoise (icl32f noise)
 sets up a new noise factor

Private Attributes

std::vector< icl8um_vecBuffer
 internal buffer for applying the wiener operation
icl32f m_fNoise
 internal storage for the current noise factor

Detailed Description

Class for Wiener Filter \.

Wiener filters are commonly used in image processing applications to remove additive noise from degraded images, to restore a blurred image.

The following operation is performed on each pixel:

\[ R(x,y,c) = \mu_m(x,y,c) + \frac{\sigma_m^2(x,y,c)-\nu^2}{\sigma^2} * (S(x,y,c) - \mu_m(x,y,c)) \]

where:


Constructor & Destructor Documentation

icl::filter::WienerOp::WienerOp ( const utils::Size maskSize,
icl32f  noise = 0 
) [inline]

Constructor that creates a wiener filter object, with specified mask size.

Parameters:
maskSizeof odd width and height Even width or height is increased to next higher odd value.
noisenois factor

Member Function Documentation

ICLFilter_API void icl::filter::WienerOp::apply ( const core::ImgBase poSrc,
core::ImgBase **  ppoDst 
) [virtual]

Filters an image using the Wiener algorithm.

Parameters:
poSrcSource image
ppoDstDestination image

Implements icl::filter::UnaryOp.

returns the current noise factor

Returns:
current noise factor
void icl::filter::WienerOp::setNoise ( icl32f  noise) [inline]

sets up a new noise factor

@ param noise new noise factor


Member Data Documentation

internal storage for the current noise factor

std::vector<icl8u> icl::filter::WienerOp::m_vecBuffer [private]

internal buffer for applying the wiener operation


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines