Public Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions

CbmRichRingFinderHoughImpl Class Reference

Ring finder implementation based on Hough Transform method. More...

#include <CbmRichRingFinderHoughImpl.h>

Collaboration diagram for CbmRichRingFinderHoughImpl:
Collaboration graph
[legend]

Public Member Functions

 CbmRichRingFinderHoughImpl ()
 Standard constructor.
virtual ~CbmRichRingFinderHoughImpl ()
 Distructor.
void SetParameters ()
 Set parameters of the algorithm.
virtual void HoughTransformReconstruction ()
 Run HT for each hit.
virtual void DefineLocalAreaAndHits (float x0, float y0, int *indmin, int *indmax)
 Find hits in a local area.
virtual void HoughTransform (unsigned short indmin, unsigned short indmax)
 Run HoughTransformGroup for each group of hits.
virtual void HoughTransformGroup (unsigned short indmin, unsigned short indmax, int iPart)
 Main procedure for Hough Transform.
void FindPeak (int indmin, int indmax)
 Find peak in the HT histograms.
void DoFind (const vector< CbmRichHitLight > &hits)
 Start point to run algorithm.
vector< CbmRichRingLight * > & GetFoundRings ()
 Return vector of found rings.
 CbmRichRingFinderHoughImpl ()
 Standard constructor.
virtual ~CbmRichRingFinderHoughImpl ()
 Distructor.
void SetParameters ()
 Set parameters of the algorithm.
virtual void HoughTransformReconstruction ()
 Run HT for each hit.
virtual void DefineLocalAreaAndHits (float x0, float y0, int *indmin, int *indmax)
 Find hits in a local area.
virtual void HoughTransform (unsigned short indmin, unsigned short indmax)
 Run HoughTransformGroup for each group of hits.
virtual void HoughTransformGroup (unsigned short indmin, unsigned short indmax, int iPart)
 Main procedure for Hough Transform.
void FindPeak (int indmin, int indmax)
 Find peak in the HT histograms.
void DoFind (const vector< CbmRichHitLight > &hits)
 Start point to run algorithm.
vector< CbmRichRingLight * > & GetFoundRings ()
 Return vector of found rings.

Protected Attributes

unsigned short fNofParts
float fMaxDistance
float fMinDistance
float fMinDistanceSq
float fMaxDistanceSq
float fMinRadius
float fMaxRadius
float fDx
float fDy
float fDr
unsigned short fNofBinsX
unsigned short fNofBinsY
unsigned short fNofBinsXY
unsigned short fHTCut
unsigned short fNofBinsR
unsigned short fHTCutR
unsigned short fMinNofHitsInArea
float fRmsCoeffCOP
float fMaxCutCOP
float fCurMinX
float fCurMinY
vector< CbmRichHoughHitfData
vector< unsigned short > fHist
vector< unsigned short > fHistR
vector< vector< unsigned short > > fHitInd
vector< CbmRichRingLight * > fFoundRings
CbmRichRingFitterCOPfFitCOP

Static Protected Attributes

static const unsigned short MAX_NOF_HITS = 65000

Private Member Functions

 CbmRichRingFinderHoughImpl (const CbmRichRingFinderHoughImpl &)
 Copy constructor.
CbmRichRingFinderHoughImploperator= (const CbmRichRingFinderHoughImpl &)
 Assignment operator.
 CbmRichRingFinderHoughImpl (const CbmRichRingFinderHoughImpl &)
 Copy constructor.
CbmRichRingFinderHoughImploperator= (const CbmRichRingFinderHoughImpl &)
 Assignment operator.

Detailed Description

Ring finder implementation based on Hough Transform method.

Author:
Semen Lebedev
Date:
2008

Definition at line 107 of file CbmRichRingFinderHoughImpl.h.


Constructor & Destructor Documentation

CbmRichRingFinderHoughImpl::CbmRichRingFinderHoughImpl (  ) 

Standard constructor.

Definition at line 24 of file CbmRichRingFinderHoughImpl.cxx.

References fFitCOP, fHist, fHistR, fHitInd, fNofBinsR, fNofBinsXY, fNofParts, and SetParameters().

CbmRichRingFinderHoughImpl::~CbmRichRingFinderHoughImpl (  )  [virtual]

Distructor.

Definition at line 71 of file CbmRichRingFinderHoughImpl.cxx.

References fFitCOP.

CbmRichRingFinderHoughImpl::CbmRichRingFinderHoughImpl ( const CbmRichRingFinderHoughImpl  )  [private]

Copy constructor.

CbmRichRingFinderHoughImpl::CbmRichRingFinderHoughImpl (  ) 

Standard constructor.

virtual CbmRichRingFinderHoughImpl::~CbmRichRingFinderHoughImpl (  )  [virtual]

Distructor.

CbmRichRingFinderHoughImpl::CbmRichRingFinderHoughImpl ( const CbmRichRingFinderHoughImpl  )  [private]

Copy constructor.


Member Function Documentation

void CbmRichRingFinderHoughImpl::DefineLocalAreaAndHits ( float  x0,
float  y0,
int *  indmin,
int *  indmax 
) [virtual]

Find hits in a local area.

Parameters:
[in] x0 X coordinate of the local area center.
[in] y0 Y coordinate of the local area center.
[out] indmin Minimum index of the hit in local area.
[out] indmax Maximum index of the hit in local area.

Definition at line 154 of file CbmRichRingFinderHoughImpl.cxx.

References fData, fHist, fHistR, CbmRichHoughHit::fHit, fHitInd, fMaxDistance, fMaxDistanceSq, fMinNofHitsInArea, fNofBinsR, fNofBinsXY, fNofParts, and CbmRichHitLight::fX.

Referenced by HoughTransformReconstruction().

virtual void CbmRichRingFinderHoughImpl::DefineLocalAreaAndHits ( float  x0,
float  y0,
int *  indmin,
int *  indmax 
) [virtual]

Find hits in a local area.

Parameters:
[in] x0 X coordinate of the local area center.
[in] y0 Y coordinate of the local area center.
[out] indmin Minimum index of the hit in local area.
[out] indmax Maximum index of the hit in local area.
void CbmRichRingFinderHoughImpl::DoFind ( const vector< CbmRichHitLight > &  hits  ) 

Start point to run algorithm.

void CbmRichRingFinderHoughImpl::DoFind ( const vector< CbmRichHitLight > &  hits  ) 
void CbmRichRingFinderHoughImpl::FindPeak ( int  indmin,
int  indmax 
)

Find peak in the HT histograms.

Parameters:
[in] indmin Minimum index of the hit in local area.
[in] indmax Maximum index of the hit in local area.

Definition at line 289 of file CbmRichRingFinderHoughImpl.cxx.

References CbmRichRingLight::AddHit(), CbmRichRingFitterCOP::DoFit(), fCurMinX, fCurMinY, fData, fDr, fDx, fDy, fFitCOP, fFoundRings, fHist, fHistR, fHTCut, fHTCutR, fMaxCutCOP, fNofBinsX, fRmsCoeffCOP, CbmRichRingLight::GetCenterX(), CbmRichRingLight::GetCenterY(), CbmRichRingLight::GetChi2(), CbmRichRingLight::GetNofHits(), and CbmRichRingLight::GetRadius().

Referenced by HoughTransformReconstruction().

void CbmRichRingFinderHoughImpl::FindPeak ( int  indmin,
int  indmax 
)

Find peak in the HT histograms.

Parameters:
[in] indmin Minimum index of the hit in local area.
[in] indmax Maximum index of the hit in local area.
vector<CbmRichRingLight*>& CbmRichRingFinderHoughImpl::GetFoundRings (  )  [inline]

Return vector of found rings.

Definition at line 223 of file CbmRichRingFinderHoughImpl.h.

References fFoundRings.

vector<CbmRichRingLight*>& CbmRichRingFinderHoughImpl::GetFoundRings (  )  [inline]

Return vector of found rings.

Definition at line 223 of file CbmRichRingFinderHoughImpl.h.

References fFoundRings.

virtual void CbmRichRingFinderHoughImpl::HoughTransform ( unsigned short  indmin,
unsigned short  indmax 
) [virtual]

Run HoughTransformGroup for each group of hits.

Parameters:
[in] indmin Minimum index of the hit in local area.
[in] indmax Maximum index of the hit in local area.

Referenced by HoughTransformReconstruction().

virtual void CbmRichRingFinderHoughImpl::HoughTransform ( unsigned short  indmin,
unsigned short  indmax 
) [virtual]

Run HoughTransformGroup for each group of hits.

Parameters:
[in] indmin Minimum index of the hit in local area.
[in] indmax Maximum index of the hit in local area.
virtual void CbmRichRingFinderHoughImpl::HoughTransformGroup ( unsigned short  indmin,
unsigned short  indmax,
int  iPart 
) [virtual]

Main procedure for Hough Transform.

Parameters:
[in] indmin Minimum index of the hit in local area.
[in] indmax Maximum index of the hit in local area.
[in] iPart Index of the hit group.
virtual void CbmRichRingFinderHoughImpl::HoughTransformGroup ( unsigned short  indmin,
unsigned short  indmax,
int  iPart 
) [virtual]

Main procedure for Hough Transform.

Parameters:
[in] indmin Minimum index of the hit in local area.
[in] indmax Maximum index of the hit in local area.
[in] iPart Index of the hit group.
virtual void CbmRichRingFinderHoughImpl::HoughTransformReconstruction (  )  [virtual]

Run HT for each hit.

void CbmRichRingFinderHoughImpl::HoughTransformReconstruction (  )  [virtual]

Run HT for each hit.

Definition at line 137 of file CbmRichRingFinderHoughImpl.cxx.

References DefineLocalAreaAndHits(), fCurMinX, fCurMinY, fData, FindPeak(), fMaxDistance, and HoughTransform().

Referenced by DoFind().

CbmRichRingFinderHoughImpl& CbmRichRingFinderHoughImpl::operator= ( const CbmRichRingFinderHoughImpl  )  [private]

Assignment operator.

CbmRichRingFinderHoughImpl& CbmRichRingFinderHoughImpl::operator= ( const CbmRichRingFinderHoughImpl  )  [private]

Assignment operator.

void CbmRichRingFinderHoughImpl::SetParameters (  ) 
void CbmRichRingFinderHoughImpl::SetParameters (  ) 

Set parameters of the algorithm.


Field Documentation

Definition at line 141 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and HoughTransformReconstruction().

Definition at line 142 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and HoughTransformReconstruction().

Definition at line 126 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and SetParameters().

Definition at line 124 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and SetParameters().

Definition at line 125 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and SetParameters().

Definition at line 148 of file CbmRichRingFinderHoughImpl.h.

Referenced by DoFind(), FindPeak(), and GetFoundRings().

vector< unsigned short > CbmRichRingFinderHoughImpl::fHist [protected]
vector< unsigned short > CbmRichRingFinderHoughImpl::fHistR [protected]
vector< vector< unsigned short > > CbmRichRingFinderHoughImpl::fHitInd [protected]
unsigned short CbmRichRingFinderHoughImpl::fHTCut [protected]

Definition at line 131 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and SetParameters().

unsigned short CbmRichRingFinderHoughImpl::fHTCutR [protected]

Definition at line 134 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and SetParameters().

Definition at line 139 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and SetParameters().

Definition at line 119 of file CbmRichRingFinderHoughImpl.h.

Referenced by DefineLocalAreaAndHits(), and SetParameters().

Definition at line 122 of file CbmRichRingFinderHoughImpl.h.

Referenced by SetParameters().

Definition at line 117 of file CbmRichRingFinderHoughImpl.h.

Referenced by SetParameters().

Definition at line 118 of file CbmRichRingFinderHoughImpl.h.

Referenced by SetParameters().

Definition at line 136 of file CbmRichRingFinderHoughImpl.h.

Referenced by DefineLocalAreaAndHits(), and SetParameters().

Definition at line 121 of file CbmRichRingFinderHoughImpl.h.

Referenced by SetParameters().

unsigned short CbmRichRingFinderHoughImpl::fNofBinsR [protected]
unsigned short CbmRichRingFinderHoughImpl::fNofBinsX [protected]

Definition at line 127 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and SetParameters().

unsigned short CbmRichRingFinderHoughImpl::fNofBinsXY [protected]
unsigned short CbmRichRingFinderHoughImpl::fNofBinsY [protected]

Definition at line 128 of file CbmRichRingFinderHoughImpl.h.

Referenced by SetParameters().

unsigned short CbmRichRingFinderHoughImpl::fNofParts [protected]

Definition at line 138 of file CbmRichRingFinderHoughImpl.h.

Referenced by FindPeak(), and SetParameters().

static const unsigned short CbmRichRingFinderHoughImpl::MAX_NOF_HITS = 65000 [static, protected]

Definition at line 111 of file CbmRichRingFinderHoughImpl.h.

Referenced by DoFind().


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