Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members

clRemoveNoise Class Reference

Background noise estimation and removal. More...

#include <RemoveNoise.hh>

Collaboration diagram for clRemoveNoise:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 clRemoveNoise ()
 ~clRemoveNoise ()
void TPSW (float *, float, long, long, long)
 Two-Pass Split-Window algorithm.

void TPSW (double *, double, long, long, long)
void TPSW (float *, const float *, float, long, long, long)
void TPSW (double *, const double *, double, long, long, long)
void OTA (float *, float, long, long)
 Order-Truncate-Average algorithm.

void OTA (double *, double, long, long)
void OTA (float *, const float *, float, long, long)
void OTA (double *, const double *, double, long, long)
void Diff (float *, float, long)
 Differential method (experimental).

void Diff (double *, double, long)
void Diff (float *, const float *, float, long)
void Diff (double *, const double *, double, long)
void InvDiff (float *, float, long)
 Inverse differential method (experimental).

void InvDiff (double *, double, long)
void InvDiff (float *, const float *, float, long)
void InvDiff (double *, const double *, double, long)

Private Member Functions

void GetPosSize (long *, long *, long, long, long)
void GetPosSize1 (long *, long *, long, long, long, long)
void GetPosSize2 (long *, long *, long, long, long, long)
long GetAlphaMedian (const float *, float, long)
long GetAlphaMedian (const double *, double, long)

Private Attributes

long lPrevSize
clAlloc PrevBuf
clSortedArray SortedArray

Detailed Description

Background noise estimation and removal.

Definition at line 105 of file RemoveNoise.hh.


Constructor & Destructor Documentation

clRemoveNoise::clRemoveNoise  ) 
 

Definition at line 218 of file RemoveNoise.cc.

References lPrevSize.

clRemoveNoise::~clRemoveNoise  ) 
 

Definition at line 224 of file RemoveNoise.cc.


Member Function Documentation

void clRemoveNoise::GetPosSize long *  ,
long *  ,
long  ,
long  ,
long 
[inline, private]
 

Definition at line 131 of file RemoveNoise.cc.

Referenced by OTA().

void clRemoveNoise::GetPosSize1 long *  ,
long *  ,
long  ,
long  ,
long  ,
long 
[inline, private]
 

Definition at line 146 of file RemoveNoise.cc.

Referenced by TPSW().

void clRemoveNoise::GetPosSize2 long *  ,
long *  ,
long  ,
long  ,
long  ,
long 
[inline, private]
 

Definition at line 163 of file RemoveNoise.cc.

Referenced by TPSW().

long clRemoveNoise::GetAlphaMedian const float *  ,
float  ,
long 
[inline, private]
 

Definition at line 180 of file RemoveNoise.cc.

Referenced by OTA().

long clRemoveNoise::GetAlphaMedian const double *  ,
double  ,
long 
[inline, private]
 

Definition at line 199 of file RemoveNoise.cc.

void clRemoveNoise::TPSW float *  ,
float  ,
long  ,
long  ,
long 
 

Two-Pass Split-Window algorithm.

\[R_{k}=\{k-M,k-M+1,...,k-L,k+L,...,k+M\}, 0\leq{L}<{M}\]

\[K=\left\{\begin{array}{ll} 2M+1&, L=0\\ 2M+2-2L&, L\neq{0} \end{array}\right.\]

\[\hat{x}(k)=\frac{1}{K}\sum_{i\epsilon{R_{k}}}x(i)\]

\[y(k)=\left\{\begin{array}{ll} x(k)&, x(k)\leq\alpha\hat{x}(k)\\ \hat{x}(k)&, x(k)>\alpha\hat{x}(k) \end{array}\right.\]

\[\hat{m}(k)=\frac{1}{K}\sum_{i\epsilon{R_{k}}}y(i)\]

then

\[z'(k)=\frac{x(k)-\hat{m}(k)}{\hat{m}(k)}, 0\leq{k}\leq{N-1}\]

Parameters:
fpVect Source&destination vector
fAlpha Alpha
lMeanLength Mean window length
lGapLength Gap length
lLength Length of source&destination vector

Definition at line 229 of file RemoveNoise.cc.

References GetPosSize1(), and GetPosSize2().

Referenced by clLofarDemon::CalcSpect(), clSpectDirLine2::Calculate(), clSpectDirLine::Calculate(), clSpectDirDipole2::Calculate(), clSpectDirDipole::Calculate(), clSpectrum::ProcessLoop(), and clDirection::SendResults().

void clRemoveNoise::TPSW double *  ,
double  ,
long  ,
long  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 272 of file RemoveNoise.cc.

References GetPosSize1(), and GetPosSize2().

void clRemoveNoise::TPSW float *  ,
const float *  ,
float  ,
long  ,
long  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters:
fpDest Destination vector
fpSrc Source vector
lMeanLength Mean window length
lGapLength Gap length
lLength Length of source&destination vectors

Definition at line 315 of file RemoveNoise.cc.

References GetPosSize1(), and GetPosSize2().

void clRemoveNoise::TPSW double *  ,
const double *  ,
double  ,
long  ,
long  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 358 of file RemoveNoise.cc.

References GetPosSize1(), and GetPosSize2().

void clRemoveNoise::OTA float *  ,
float  ,
long  ,
long 
 

Order-Truncate-Average algorithm.

Let y(k) be sorted (ascending) x(k) and $Y_{sm}$ median, then

\[\hat{m}(k)=\frac{1}{I}\sum_{\stackrel{i=1}{i\epsilon{R_{k}}}}^{I}y(i), y(I)\leq\alpha{Y_{sm}}, y(I+1)>\alpha{Y_{sm}}\]

then

\[z'(k)=\frac{x(k)-\hat{m}(k)}{\hat{m}(k)}, 0\leq{k}\leq{N-1}\]

Parameters:
fpVect Source&destination vector
fAlpha Alpha
lMeanLength Mean length
lLength Length of source&destination vector

Definition at line 401 of file RemoveNoise.cc.

References GetAlphaMedian(), and GetPosSize().

Referenced by clLofarDemon::CalcSpect(), clSpectDirLine2::Calculate(), clSpectDirLine::Calculate(), clSpectDirDipole2::Calculate(), clSpectDirDipole::Calculate(), clSpectrum::ProcessLoop(), and clDirection::SendResults().

void clRemoveNoise::OTA double *  ,
double  ,
long  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 443 of file RemoveNoise.cc.

References GetAlphaMedian(), and GetPosSize().

void clRemoveNoise::OTA float *  ,
const float *  ,
float  ,
long  ,
long 
 

Parameters:
fpDest Destination vector
fpSrc Source vector
fAlpha Alpha
lMeanLength Mean length
lLength Length of source&destination vectors

Definition at line 485 of file RemoveNoise.cc.

References GetAlphaMedian(), and GetPosSize().

void clRemoveNoise::OTA double *  ,
const double *  ,
double  ,
long  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 519 of file RemoveNoise.cc.

References GetAlphaMedian(), and GetPosSize().

void clRemoveNoise::Diff float *  ,
float  ,
long 
 

Differential method (experimental).

\[z'(k)=x_{1}(k)w-x_{2}(k)(1-w), 0\leq{k}\leq{N-1}\]

Parameters:
fpVect Source&destination vector
fWeight Weight, w
lLength Vector length

Definition at line 553 of file RemoveNoise.cc.

References lPrevSize, and PrevBuf.

Referenced by clLofarDemon::CalcSpect(), clSpectDirLine2::Calculate(), clSpectDirLine::Calculate(), clSpectDirDipole2::Calculate(), clSpectDirDipole::Calculate(), and clSpectrum::ProcessLoop().

void clRemoveNoise::Diff double *  ,
double  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 582 of file RemoveNoise.cc.

References lPrevSize, and PrevBuf.

void clRemoveNoise::Diff float *  ,
const float *  ,
float  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters:
fpDest Destination vector
fpSrc Source vector
fWeight Weight, w
lLength Vector length

Definition at line 611 of file RemoveNoise.cc.

References lPrevSize, and PrevBuf.

void clRemoveNoise::Diff double *  ,
const double *  ,
double  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 640 of file RemoveNoise.cc.

References lPrevSize, and PrevBuf.

void clRemoveNoise::InvDiff float *  ,
float  ,
long 
 

Inverse differential method (experimental).

Definition at line 669 of file RemoveNoise.cc.

References lPrevSize, and PrevBuf.

Referenced by clLofarDemon::CalcSpect(), clSpectDirLine2::Calculate(), clSpectDirLine::Calculate(), clSpectDirDipole2::Calculate(), clSpectDirDipole::Calculate(), and clSpectrum::ProcessLoop().

void clRemoveNoise::InvDiff double *  ,
double  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 705 of file RemoveNoise.cc.

References lPrevSize, and PrevBuf.

void clRemoveNoise::InvDiff float *  ,
const float *  ,
float  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 741 of file RemoveNoise.cc.

References lPrevSize, and PrevBuf.

void clRemoveNoise::InvDiff double *  ,
const double *  ,
double  ,
long 
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 777 of file RemoveNoise.cc.

References lPrevSize, and PrevBuf.


Member Data Documentation

long clRemoveNoise::lPrevSize [private]
 

Definition at line 107 of file RemoveNoise.hh.

Referenced by clRemoveNoise(), Diff(), and InvDiff().

clAlloc clRemoveNoise::PrevBuf [private]
 

Definition at line 108 of file RemoveNoise.hh.

Referenced by Diff(), and InvDiff().

clSortedArray clRemoveNoise::SortedArray [private]
 

Definition at line 109 of file RemoveNoise.hh.


The documentation for this class was generated from the following files:
Generated on Sun Oct 26 19:12:23 2003 for HASAS by doxygen 1.3.3