Public Types | Public Member Functions | Public Attributes | List of all members
ialgo::TSimpleSpaceResultConsumer< Dimensions, Element > Class Template Reference

Consumer of results generated for some multidimensional space (typically Hough space). More...

#include <TSimpleSpaceResultConsumer.h>

Inheritance diagram for ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >:
iimg::CGeneralBitmap ialgo::TIHoughSpace< Dimensions, Element >::ResultsConsumer iimg::CBitmapBase istd::IPolymorphic i2d::CObject2dBase iimg::IBitmap i2d::IObject2d iimg::IRasterImage iser::IObject i2d::ICalibrationProvider i2d::IObject2d iser::ISerializable istd::IChangeable iser::IObject i2d::ICalibrationProvider istd::IChangeable istd::IPolymorphic iser::ISerializable istd::IChangeable istd::IPolymorphic istd::IChangeable istd::IPolymorphic istd::IPolymorphic

Public Types

typedef imath::TVector
< Dimensions > 
PosVector
 
typedef QMultiMap< double,
PosVector
PosMap
 List of weights and positions. More...
 

Public Member Functions

 TSimpleSpaceResultConsumer (int maxPoints, int maxConsideredPoints, double minDistance, double minMaxRatio)
 Construct the result processor. More...
 
virtual QList< int > GetSupportedNeghboursCount () const
 Get list of number of neighbours supprted by this consumer. More...
 
virtual void OnProcessingBegin (const TIHoughSpace< Dimensions, Element > &space, const Element &minValue)
 Called when processing is started. More...
 
virtual void OnProcessingEnd (const TIHoughSpace< Dimensions, Element > &space)
 Called when processing is finished. More...
 
virtual bool OnMaximumFound (const TIHoughSpace< Dimensions, Element > &space, const istd::TIndex< Dimensions > &position, const Element &value, const Element *neghboursPtr, int neghboursCount, Element &minValue)
 Will be called when some local maximum is reached. More...
 
- Public Member Functions inherited from iimg::CGeneralBitmap
 CGeneralBitmap ()
 
 CGeneralBitmap (const CGeneralBitmap &bitmap)
 
virtual bool IsFormatSupported (PixelFormat pixelFormat) const
 
virtual PixelFormat GetPixelFormat () const
 
virtual bool CreateBitmap (PixelFormat pixelFormat, const istd::CIndex2d &size, int pixelBitsCount=0, int componentsCount=0)
 
virtual bool CreateBitmap (PixelFormat pixelFormat, const istd::CIndex2d &size, void *dataPtr, bool releaseFlag, int linesDifference=0)
 
virtual int GetLinesDifference () const
 
virtual int GetPixelsDifference () const
 
virtual int GetPixelBitsCount () const
 
virtual const void * GetLinePtr (int positionY) const
 
virtual void * GetLinePtr (int positionY)
 
virtual void ResetImage ()
 
virtual void ClearImage ()
 
virtual istd::CIndex2d GetImageSize () const
 
virtual int GetComponentsCount () const
 
virtual int GetSupportedOperations () const
 
virtual bool CopyFrom (const istd::IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS)
 
virtual istd::IChangeableCloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const
 
CGeneralBitmapoperator= (const CGeneralBitmap &bitmap)
 
bool operator== (const CGeneralBitmap &bitmap) const
 
bool operator!= (const CGeneralBitmap &bitmap) const
 
- Public Member Functions inherited from iimg::CBitmapBase
virtual icmm::CVarColor GetColorAt (const istd::CIndex2d &position) const
 
- Public Member Functions inherited from i2d::CObject2dBase
virtual bool Transform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL)
 
virtual bool InvTransform (const ITransformation2d &transformation, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL)
 
virtual bool GetTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) const
 
virtual bool GetInvTransformed (const ITransformation2d &transformation, IObject2d &result, ITransformation2d::ExactnessMode mode=ITransformation2d::EM_NONE, double *errorFactorPtr=NULL) const
 
virtual CVector2d GetCenter () const =0
 
virtual void MoveCenterTo (const CVector2d &position)=0
 
virtual CRectangle GetBoundingBox () const =0
 
virtual QByteArray GetFactoryId () const
 
virtual bool Serialize (IArchive &archive)=0
 
- Public Member Functions inherited from i2d::IObject2d
virtual void SetCalibration (const ICalibration2d *calibrationPtr, bool releaseFlag=false)=0
 
- Public Member Functions inherited from i2d::ICalibrationProvider
virtual const ICalibration2dGetCalibration () const =0
 
- Public Member Functions inherited from iimg::IBitmap
virtual bool CreateImageFromRegion (const iimg::IBitmap &sourceImage, const i2d::CRect &region)=0
 
virtual int GetLineBytesCount () const =0
 
virtual int GetComponentBitsCount (int componentIndex=0) const =0
 
virtual bool IsEmpty () const =0
 
virtual bool SetColorAt (const istd::CIndex2d &position, const icmm::CVarColor &color)=0
 

Public Attributes

PosMap positions
 

Additional Inherited Members

- Protected Member Functions inherited from iimg::CGeneralBitmap
virtual bool CreateBitmap (const istd::CIndex2d &size, int pixelBitsCount, int componentsCount, PixelFormat pixelFormat)
 
virtual bool CreateBitmap (const istd::CIndex2d &size, void *dataPtr, bool releaseFlag, int linesDifference, int pixelBitsCount, int componentsCount, PixelFormat pixelFormat)
 

Detailed Description

template<int Dimensions, class Element = double>
class ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >

Consumer of results generated for some multidimensional space (typically Hough space).

Definition at line 23 of file TSimpleSpaceResultConsumer.h.

Member Typedef Documentation

template<int Dimensions, class Element = double>
typedef QMultiMap<double, PosVector> ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >::PosMap

List of weights and positions.

Definition at line 32 of file TSimpleSpaceResultConsumer.h.

template<int Dimensions, class Element = double>
typedef imath::TVector<Dimensions> ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >::PosVector

Definition at line 28 of file TSimpleSpaceResultConsumer.h.

Constructor & Destructor Documentation

template<int Dimensions, class Element >
ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >::TSimpleSpaceResultConsumer ( int  maxPoints,
int  maxConsideredPoints,
double  minDistance,
double  minMaxRatio 
)

Construct the result processor.

Parameters
maxPointsmaximal number of points beeing in result set.
maxConsideredPointsmaximal number of points stored internally. Setting this number to smaller value speeds up the processing.
minDistanceMinimal distance between the points. Please note that the neighbourshood will be analysed at end.

Definition at line 75 of file TSimpleSpaceResultConsumer.h.

Member Function Documentation

template<int Dimensions, class Element >
QList< int > ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >::GetSupportedNeghboursCount ( ) const
virtual

Get list of number of neighbours supprted by this consumer.

For example if it works correctly with 4 and 8 neighbourshood it should return {4, 8}.

Implements ialgo::TIHoughSpace< Dimensions, Element >::ResultsConsumer.

Definition at line 85 of file TSimpleSpaceResultConsumer.h.

template<int Dimensions, class Element >
bool ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >::OnMaximumFound ( const TIHoughSpace< Dimensions, Element > &  space,
const istd::TIndex< Dimensions > &  position,
const Element &  value,
const Element *  neghboursPtr,
int  neghboursCount,
Element &  minValue 
)
virtual

Will be called when some local maximum is reached.

Parameters
spaceHough space.
positionelement position where maximum was found.
valuevalue of element at given position.
neghboursPtrlist of nighbours.
neghboursCountnumber of neighbours in the list. Must be one of returned by GetSupportedNeghboursCount().
minValuecurrent minimal value, it can be correctd by this function to improve search performance.
Returns
true, if object found and no more itarations are needed.

Implements ialgo::TIHoughSpace< Dimensions, Element >::ResultsConsumer.

Definition at line 142 of file TSimpleSpaceResultConsumer.h.

template<int Dimensions, class Element >
void ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >::OnProcessingBegin ( const TIHoughSpace< Dimensions, Element > &  space,
const Element &  minValue 
)
virtual

Called when processing is started.

Implements ialgo::TIHoughSpace< Dimensions, Element >::ResultsConsumer.

Definition at line 92 of file TSimpleSpaceResultConsumer.h.

template<int Dimensions, class Element >
void ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >::OnProcessingEnd ( const TIHoughSpace< Dimensions, Element > &  space)
virtual

Member Data Documentation

template<int Dimensions, class Element = double>
PosMap ialgo::TSimpleSpaceResultConsumer< Dimensions, Element >::positions

Definition at line 58 of file TSimpleSpaceResultConsumer.h.


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

© 2007-2017 Witold Gantzke and Kirill Lepskiy