vg-pyramid-maker.h

Go to the documentation of this file.
00001 // Copyright 2007, Massachusetts Institute of Technology.
00002 // The use of this code is permitted for research only. There is
00003 // absolutely no warranty for this software.
00004 //
00005 // Author: John Lee (jjl@mit.edu)
00006 //
00007 
00008 #ifndef PYRAMIDS_VG_PYRAMID_MAKER_H
00009 #define PYRAMIDS_VG_PYRAMID_MAKER_H
00010 
00011 #include "pyramids/pyramid-maker.h"
00012 #include "point_set/point-set.h"
00013 #include "point_set/point-set-list.h"
00014 #include "point_set/feature.h"
00015 #include "util/sparse-vector.h"
00016 #include "histograms/multi-resolution-histogram.h"
00017 #include "util/distance-computer.h"
00018 #include "clustering/hierarchical-clusterer.h"
00019 
00020 namespace libpmk {
00022 
00026 class VGPyramidMaker : public PyramidMaker {
00027  public:
00034    VGPyramidMaker(const HierarchicalClusterer& c,
00035                   const DistanceComputer& distance_computer);
00036    
00037    virtual MultiResolutionHistogram*
00038       MakePyramid(const PointSet& point_set) = 0;
00039 
00040  protected:
00041    const HierarchicalClusterer& clusterer_;
00042 
00044    const PointSetList& centers_;
00045    const DistanceComputer& distance_computer_;
00046 
00049 
00062    pair<LargeIndex, vector<double> > GetMembershipPath(const Feature& f);
00063 };
00064 }  // namespace libpmk
00065 
00066 #endif  // PYRAMIDS_INPUT_SPECIFIC_VG_PYRAMID_MAKER_H

Generated on Wed May 2 11:17:12 2007 for libpmk by  doxygen 1.5.1