Home || Architecture || Video Search || Visual Search || Scripts || Applications || Important Messages || OGL || Src

Impala::Core::Feature::Computor Class Reference

Base class for feature computors. More...

#include <Computor.h>

Inheritance diagram for Impala::Core::Feature::Computor:

Inheritance graph
[legend]
Collaboration diagram for Impala::Core::Feature::Computor:

Collaboration graph
[legend]
List of all members.

Public Types

typedef Persistency::FeatureLocator FeatureLocator

Public Member Functions

 Computor (String name, CmdOptions &options)
virtual ~Computor ()
String GetName () const
bool IsClusterBased () const
String GetMaskSetBase () const
virtual int GetNrPixelFeatureSets () const
int GetPixelFeatureSetSize () const
virtual int GetNrRegionFeatureSets () const
virtual int GetRegionFeatureSetSize (int i) const
int GetRegionDescriptorLength ()
int GetRegionFeatureLength ()
Geometry::RectanglePyramid GetPyramid ()
String GetProtoDataFile ()
FeatureTableSetGetFeatureTableSet ()
FeatureTableGetFeatureTable (FeatureDefinition def)
FeatureTableGetFeatureTable (FeatureDefinition def, int regionFeatureSet)
void AddFeatureTable (FeatureDefinition def, int tableSize, int vecLen)
void MakeFeatureTableSet ()
virtual FeatureDefinition ExtendFeatureDefinition (FeatureDefinition def)
void WriteFeatureDefinitions (String fName, Util::Database *db)
FeatureTableSetGetProtoFeatureTableSet ()
FeatureTableGetProtoFeatureTable (int pixelFeatureSet, int regionFeatureSet, String clusterType, String clusterVal)
FeatureTableGetProtoFeatureTable (int pixelFeatureSet, String anno)
std::vector< FeatureTable * > GetProtoFeatureTables (int pixelFeatureSet)
std::vector< FeatureTable * > GetProtoFeatureTables (int pixelFeatureSet, int regionFeatureSet)
void AddProtoFeatureTable (FeatureDefinition def, int tableSize, int vecLen)
void WriteProtoDefinitions (String fName, Util::Database *db)
void WriteProtoFeatureTableSet (Database::RawDataSet *dataSet)
void ReadProtoFeatureTableSet (String protoSet, String maskSet)
void LimitProtoFeatureTableSize (int maxNr)
 Limit the number of prototypes to maxNr per feature.
FeatureTableSetGetRegionFeatureTableSet ()
void AddRegionFeatureTable (FeatureDefinition def, int tableSize, int vecLen)
FeatureTableGetRegionFeatureTable (int pixelFeatureSet, int regionFeatureSet)
void MakeRegionFeatureTableSet ()
virtual String GetPixelFeatureDefName (int idx)
virtual String GetPixelFeatureDefVal (int idx)
virtual String GetRegionFeatureDefName (int idx)
virtual String GetRegionFeatureDefVal (int idx)
virtual FeatureTableMakeProtoFeatureTable (int pixelFeatureSet, int regionFeatureSet, String clusterType, String clusterVal)=0
virtual void ReadPrototypes (String annoSet, String maskSet, int maxNr)=0
virtual void ComputeRegionFeatures (Array::Array2dVec3UInt8 *im, Quid quid)=0
virtual void ComputeFeatures (Array::Array2dVec3UInt8 *im, Quid quid)=0

Protected Member Functions

double GetScale (int i)
void AddScale (double scale)
void SetPixelFeatureSetSize (int nr)
void SetRegionDescriptorLength (int len)

Protected Attributes

String mName
std::vector< double > mScale
Geometry::RectanglePyramid mPyramid
Geometry::RectanglePyramidPerDim mLazebnikPyramid
String mMaskSetBase
String mProtoDataFile
LabelSet mProtoLabels
int mProtoLimit
int mPixelFeatureSetSize
int mRegionDescriptorLength

Private Member Functions

void ReadFeatureTableSet (String listName, Util::Database *db, FeatureTableSet *tables, String maskSet)

Private Attributes

FeatureTableSetmFeatureTableSet
FeatureTableSetmProtoFeatureTableSet
FeatureTableSetmRegionFeatureTableSet
 ILOG_VAR_DEC

Detailed Description

Base class for feature computors.

A feature computor is an object that (typically) computes feature values based on similarity of regional features to prototypical features.

The first step in this process is to compute pixel feature sets, i.e. for each pixel in the image a number of (invariant) values are computed that constitute a point description. Typically, 2 or more of these sets of pixel features are copmuted at different scales.

In the second step the pixel features are combined into a regional descriptor. Such a region may be a rectangular area, a blob, or just an (interest) point. There may be several region descriptors, e.g. rectangles of various sizes. The region descriptors may also be grouped using Lazebnik's Spatial Pyramid (cvpr'06). The concatenation of all region descriptors for all pixel feature sets is called a region feature.

In the final step, the region features are compared to prototype features. The prototypes typically come from annotation or clustering of region features. The similarity to prototypical features constitutes the "real" feature.

Definition at line 48 of file Computor.h.


The documentation for this class was generated from the following file:
Generated on Fri Mar 19 11:08:46 2010 for ImpalaSrc by  doxygen 1.5.1