HoughClusterer.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002  *  HoughClusterer.h
00003  *
00004  *  (C) 2007 AG Aktives Sehen <agas@uni-koblenz.de>
00005  *           Universitaet Koblenz-Landau
00006  *
00007  *  Additional information:
00008  *  $Id: $
00009  *******************************************************************************/
00010 
00011 #ifndef HoughClusterer_H
00012 #define HoughClusterer_H
00013 
00014 #include "Workers/KeyPointExtraction/KeyPoint.h"
00015 #include <vector>
00016 #include <deque>
00017 #include <sstream>
00018 #include <list>
00019 
00020 #include "Workers/ObjectRecognition/HoughAccumulator.h"
00021 #include "Workers/KeyPointExtraction/KeyPointMatch.h"
00022 #include "Workers/Puma2/ColorImageRGB8.h"
00023 #include "Workers/Math/Math.h"
00024 #include "Workers/Math/Box2D.h"
00025 
00026 class ImageProperties;
00027 
00033 class HoughClusterer
00034 {
00035 public:
00036 
00037   HoughClusterer(){}
00038 
00044   HoughClusterer( std::vector< KeyPoint >* sceneKeyPoints, std::vector< KeyPoint >* objectImageKeyPoints, Point2D center, int imageWidth, int imageHeight);
00045 
00047   ~HoughClusterer();
00048 
00049   std::string getLog();
00050 
00051   void getImage( puma2::ColorImageRGB8& target );
00052 
00053   float getVariance();
00054 
00055   void setNNMatches(std::list< KeyPointMatch > nnrMatches);
00056   std::vector< std::list< KeyPointMatch> > clusterAccumulator();
00057 
00058 private:
00059 
00060   void incrAccumulatorValue(KeyPoint scenePoint, KeyPoint objectPoint, KeyPointMatch match);
00061   //Get highest accumulator value for keypoint values for rotation, scale and position; if nothing found return -1
00062   bool getAccumulatorValue(KeyPoint scenePoint, KeyPoint objectPoint, unsigned int& value);
00063 
00064   std::vector< KeyPoint >* m_SceneKeyPoints;
00065   std::vector< KeyPoint >* m_ObjectImageKeyPoints;
00066 
00067   Point2D m_Center;
00068 
00069   std::ostringstream m_Log;
00070 
00071   HoughAccumulator* m_HoughAccumulator;
00072 
00073   int m_ScaleBins;
00074   int m_OrientationBins;
00075   int m_XLocationBins;
00076   int m_YLocationBins;
00077 
00078   int m_ImageWidth;
00079   int m_ImageHeight;
00080 };
00081 
00082 #endif


obj_rec_gui
Author(s): AGAS/agas@uni-koblenz.de
autogenerated on Mon Oct 6 2014 02:53:43