Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

keypoint.h

Go to the documentation of this file.
00001 #ifndef __KEYPOINT_H
00002 #define __KEYPOINT_H
00003 
00004 #include <vector>
00005 #include <fstream>
00006 
00007 #define KEYPOINTDIM 128
00008 #define MAXIMAGEDIM 320
00009 
00010 class keygroup;
00011 
00012 class keypoint {
00013 private:
00014   int id;
00015   
00016 public:
00017   //    bool valid;
00018   keygroup* G;
00019   double modelX, modelY, modelScale, modelOrientation;
00020   double imageX, imageY, imageScale, imageOrientation;
00021   int imageIntScale, imageIntOctave;
00022   std::vector<double> desc;
00023   
00024   int generation;
00025   
00026   std::vector<double>    bestDist;
00027   std::vector<keypoint*> bestMatch;
00028   
00029   keypoint* finalMatch;
00030   std::vector<keypoint*> matches;
00031   
00032   std::vector<keypoint*> modelMatches;
00033   std::vector<double>    modelMatchErrors;
00034   
00035   bool isInlier;
00036   
00037   keypoint(int ID=getNewKeypointID());
00038   
00039   static int getNewKeypointID() { return keypointID++; }
00040   
00041   double sqDist(keypoint& key);
00042   
00043   void print();
00044   
00045   void writeToFile(std::ofstream& outfile, bool indicateDim);
00046   void writeToFile(std::ofstream& outfile);
00047   
00048   int getID() const { return id; }
00049   
00050   static int getKeypointID() { return keypointID; }
00051   static void setKeypointID(int kid) { keypointID = kid; }
00052   
00053 private:
00054   static int keypointID;
00055   keypoint(const keypoint&); // Do not use
00056   keypoint& operator=(const keypoint&); // Do not use
00057 };
00058 
00059 #endif

Tekkotsu v5.1CVS
Generated Mon May 9 04:58:42 2016 by Doxygen 1.6.3