Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

SiftTekkotsu Class Reference

#include <SiftTekkotsu.h>


Detailed Description

Main API class All API function calls are implemented within this class Look at APIExample.cc for an example of how to use the class to perform API calls

Definition at line 22 of file SiftTekkotsu.h.

List of all members.

Public Member Functions

void detectKeypoints (ImageBuffer buffer, std::vector< keypoint * > &keys, std::vector< std::vector< std::vector< int > > > &gaussianSpace)
void findInImage (ImageBuffer buffer, std::vector< SiftMatch * > &matchesFound, bool objectSpecified, int wantedObjectID)
void findInImage (std::vector< keypoint * > &keys, std::vector< SiftMatch * > &matchesFound, bool objectSpecified, int wantedObjectID)
 SiftTekkotsu ()
 ~SiftTekkotsu ()
int train_addNewObject (std::string PGMFileName)
 Training API calls.
int train_addNewObject (std::string PGMFileName, unsigned int &siftImageID)
int train_addNewObject (ImageBuffer buffer)
int train_addNewObject (ImageBuffer buffer, unsigned int &siftImageID)
int train_removeObject (std::string PGMFileName, int oID)
int train_removeObject (std::string PGMFileName, unsigned int &siftImageID, int oID)
int train_removeObject (ImageBuffer buffer, int oID)
int train_removeObject (ImageBuffer buffer, unsigned int &siftImageID, int oID)
int train_addToObject (int objectID, std::string PGMFileName)
int train_addToObject (int objectID, std::string PGMFileName, unsigned int &siftImageID, SiftMatch &matchFound)
int train_addToObject (int objectID, ImageBuffer buffer)
int train_addToObject (int objectID, ImageBuffer buffer, unsigned int &siftImageID, SiftMatch &matchFound)
int train_removefromObject (int objectID, std::string PGMFileName)
int train_removefromObject (int objectID, std::string PGMFileName, unsigned int &siftImageID, SiftMatch &matchFound)
int train_removefromObject (int objectID, ImageBuffer buffer)
int train_removefromObject (int objectID, ImageBuffer buffer, unsigned int &siftImageID, SiftMatch &matchFound)
int train_addNewModel (int objectID, std::string PGMFileName)
int train_addNewModel (int objectID, std::string PGMFileName, unsigned int &siftImageID)
int train_addNewModel (int objectID, ImageBuffer buffer)
int train_addNewModel (int objectID, ImageBuffer buffer, unsigned int &siftImageID)
int train_removeModel (int objectID, std::string PGMFileName, int mID)
int train_removeModel (int objectID, std::string PGMFileName, unsigned int &siftImageID, int mID)
int train_removeModel (int objectID, ImageBuffer buffer, int mID)
int train_removeModel (int objectID, ImageBuffer buffer, unsigned int &siftImageID, int mID)
void findObjectInImage (int objectID, std::string PGMFileName, std::vector< SiftMatch * > &matchesFound)
 Testing API calls.
void findObjectInImage (int objectID, ImageBuffer buffer, std::vector< SiftMatch * > &matchesFound)
void findAllObjectsInImage (std::string PGMFileName, std::vector< SiftMatch * > &matchesFound)
void findAllObjectsInImage (ImageBuffer buffer, std::vector< SiftMatch * > &matchesFound)
bool setObjectName (int objectID, std::string Name)
 Naming calls.
std::string getObjectName (int objectID)
int getObjectID (std::string Name)
bool setModelName (int objectID, int modelID, std::string Name)
std::string getModelName (int objectID, int modelID)
int getModelID (int objectID, std::string Name)
void setParameter (const char *paramName, double paramVal)
 Parameter calls.
double getParameter (const char *paramName)
void saveToFile (const std::string &filename, bool saveImages)
 List of parameters.
void loadFile (const std::string &filename)
bool trainImage_getImageBuffer (unsigned int siftImageID, ImageBuffer &buffer)
 Retrieve training image information.
bool trainImage_getGaussianSpace (unsigned int siftImageID, std::vector< std::vector< std::vector< int > > > &gaussianSpace)
bool trainImage_getKeypoints (unsigned int siftImageID, std::vector< keypoint * > &keypoints)
void testImage_getImageBuffer (ImageBuffer &buffer)
 Retrieve testing image information.
void testImage_getGaussianSpace (std::vector< std::vector< std::vector< int > > > &gaussianSpace)
void testImage_getKeypoints (std::vector< keypoint * > &keypoints)
bool loadFile1 (const char *filename)

Static Public Member Functions

static ImageBuffer sketchToBuffer (const DualCoding::Sketch< DualCoding::uchar > &sk)

Public Attributes

SIFTImage testSIFTImage

Private Member Functions

void detectKeypoints (std::string PGMFileName, ImageBuffer *buffer, std::vector< keypoint * > &keys, std::vector< std::vector< std::vector< int > > > &gaussianSpace, bool imageProvided)
void clearTestState ()
int train_addNewObject (std::vector< keypoint * > &keys)
int train_removeObject (std::vector< keypoint * > &keys, int oID)
int train_addToObject (int objectID, std::vector< keypoint * > &keys, object *wantedObject, SiftMatch &matchFound)
int train_removefromObject (int objectID, std::vector< keypoint * > &keys, object *wantedObject, SiftMatch &matchFound)
int train_addNewModel (int objectID, std::vector< keypoint * > &keys, object *wantedObject)
int train_removeModel (int objectID, std::vector< keypoint * > &keys, object *wantedObject, int mID)
void convertSiftMatchFromModelMatchingInfo (SiftMatch &sMatch, KnowledgeBase::modelMatchingInfo &mminfo)
int convertSiftImageIDToIndex (int siftImageID)
 SiftTekkotsu (const SiftTekkotsu &)
SiftTekkotsuoperator= (const SiftTekkotsu &)

Private Attributes

KnowledgeBase kb
std::vector< SIFTImage * > imageDatabase
int siftImageMaxID
char ** argv
char ** argvCopy
int argc

Constructor & Destructor Documentation

SiftTekkotsu::SiftTekkotsu (  ) 

Definition at line 19 of file SiftTekkotsu.cc.

SiftTekkotsu::~SiftTekkotsu (  ) 

Definition at line 30 of file SiftTekkotsu.cc.

SiftTekkotsu::SiftTekkotsu ( const SiftTekkotsu  )  [private]

Member Function Documentation

void SiftTekkotsu::clearTestState (  )  [private]

Definition at line 153 of file SiftTekkotsu.cc.

Referenced by findInImage(), loadFile(), saveToFile(), and ~SiftTekkotsu().

int SiftTekkotsu::convertSiftImageIDToIndex ( int  siftImageID  )  [private]

Advanced image database functions SiftTekkotsu maintains a database of all the training images and of the most recent testing image. The information stored for each image include: 1. the image itself (stored as ImageBuffer) 2. Gaussian space generated by SIFT++ 3. keypoints detected in the image by SIFT++, and used for matching by KnowledgeBase The below set of functions allow the user to access the information in the image database.

Definition at line 930 of file SiftTekkotsu.cc.

Referenced by trainImage_getImageBuffer(), and trainImage_getKeypoints().

void SiftTekkotsu::convertSiftMatchFromModelMatchingInfo ( SiftMatch sMatch,
KnowledgeBase::modelMatchingInfo mminfo 
) [private]

Definition at line 171 of file SiftTekkotsu.cc.

Referenced by findInImage(), train_addToObject(), and train_removefromObject().

void SiftTekkotsu::detectKeypoints ( std::string  PGMFileName,
ImageBuffer buffer,
std::vector< keypoint * > &  keys,
std::vector< std::vector< std::vector< int > > > &  gaussianSpace,
bool  imageProvided 
) [private]
void SiftTekkotsu::detectKeypoints ( ImageBuffer  buffer,
std::vector< keypoint * > &  keys,
std::vector< std::vector< std::vector< int > > > &  gaussianSpace 
)
void SiftTekkotsu::findAllObjectsInImage ( ImageBuffer  buffer,
std::vector< SiftMatch * > &  matchesFound 
)

Definition at line 660 of file SiftTekkotsu.cc.

void SiftTekkotsu::findAllObjectsInImage ( std::string  PGMFileName,
std::vector< SiftMatch * > &  matchesFound 
)

Definition at line 650 of file SiftTekkotsu.cc.

Referenced by DualCoding::MapBuilder::getCamSiftObjects(), and main().

void SiftTekkotsu::findInImage ( std::vector< keypoint * > &  keys,
std::vector< SiftMatch * > &  matchesFound,
bool  objectSpecified,
int  wantedObjectID 
)

Definition at line 105 of file SiftTekkotsu.cc.

void SiftTekkotsu::findInImage ( ImageBuffer  buffer,
std::vector< SiftMatch * > &  matchesFound,
bool  objectSpecified,
int  wantedObjectID 
)

Definition at line 95 of file SiftTekkotsu.cc.

Referenced by findAllObjectsInImage(), and findObjectInImage().

void SiftTekkotsu::findObjectInImage ( int  objectID,
ImageBuffer  buffer,
std::vector< SiftMatch * > &  matchesFound 
)

Definition at line 642 of file SiftTekkotsu.cc.

void SiftTekkotsu::findObjectInImage ( int  objectID,
std::string  PGMFileName,
std::vector< SiftMatch * > &  matchesFound 
)

Testing API calls.

Definition at line 633 of file SiftTekkotsu.cc.

Referenced by DualCoding::MapBuilder::getCamSiftObjects(), and main().

int SiftTekkotsu::getModelID ( int  objectID,
std::string  Name 
)

Definition at line 735 of file SiftTekkotsu.cc.

Referenced by setModelName().

string SiftTekkotsu::getModelName ( int  objectID,
int  modelID 
)

Definition at line 719 of file SiftTekkotsu.cc.

int SiftTekkotsu::getObjectID ( std::string  Name  ) 
string SiftTekkotsu::getObjectName ( int  objectID  ) 

Definition at line 682 of file SiftTekkotsu.cc.

Referenced by main().

double SiftTekkotsu::getParameter ( const char *  paramName  ) 

Definition at line 759 of file SiftTekkotsu.cc.

void SiftTekkotsu::loadFile ( const std::string &  filename  ) 

Definition at line 815 of file SiftTekkotsu.cc.

Referenced by DualCoding::MapBuilder::getCamSiftObjects(), and main().

bool SiftTekkotsu::loadFile1 ( const char *  filename  ) 
SiftTekkotsu& SiftTekkotsu::operator= ( const SiftTekkotsu  )  [private]
void SiftTekkotsu::saveToFile ( const std::string &  filename,
bool  saveImages 
)

List of parameters.

File input and output

Definition at line 763 of file SiftTekkotsu.cc.

Referenced by main(), and DualCoding::MapBuilder::saveSiftDatabase().

bool SiftTekkotsu::setModelName ( int  objectID,
int  modelID,
std::string  Name 
)

Definition at line 702 of file SiftTekkotsu.cc.

bool SiftTekkotsu::setObjectName ( int  objectID,
std::string  Name 
)

Naming calls.

Definition at line 669 of file SiftTekkotsu.cc.

Referenced by main(), and DualCoding::MapBuilder::trainSiftObject().

void SiftTekkotsu::setParameter ( const char *  paramName,
double  paramVal 
)

Parameter calls.

Definition at line 755 of file SiftTekkotsu.cc.

Referenced by DualCoding::MapBuilder::getCamSiftObjects(), main(), and DualCoding::MapBuilder::newSiftMatcher().

ImageBuffer SiftTekkotsu::sketchToBuffer ( const DualCoding::Sketch< DualCoding::uchar > &  sk  )  [static]
void SiftTekkotsu::testImage_getGaussianSpace ( std::vector< std::vector< std::vector< int > > > &  gaussianSpace  ) 
void SiftTekkotsu::testImage_getImageBuffer ( ImageBuffer buffer  ) 

Retrieve testing image information.

Definition at line 986 of file SiftTekkotsu.cc.

void SiftTekkotsu::testImage_getKeypoints ( std::vector< keypoint * > &  keypoints  ) 

Definition at line 1008 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addNewModel ( int  objectID,
ImageBuffer  buffer,
unsigned int &  siftImageID 
)

Definition at line 530 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addNewModel ( int  objectID,
ImageBuffer  buffer 
)

Definition at line 522 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addNewModel ( int  objectID,
std::string  PGMFileName,
unsigned int &  siftImageID 
)

Definition at line 502 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addNewModel ( int  objectID,
std::string  PGMFileName 
)

Definition at line 494 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addNewModel ( int  objectID,
std::vector< keypoint * > &  keys,
object wantedObject 
) [private]

Definition at line 562 of file SiftTekkotsu.cc.

Referenced by main(), and train_addNewModel().

int SiftTekkotsu::train_addNewObject ( ImageBuffer  buffer,
unsigned int &  siftImageID 
)

Definition at line 249 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addNewObject ( ImageBuffer  buffer  ) 

Definition at line 240 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addNewObject ( std::string  PGMFileName,
unsigned int &  siftImageID 
)

Definition at line 220 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addNewObject ( std::string  PGMFileName  ) 

Training API calls.

Definition at line 212 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addNewObject ( std::vector< keypoint * > &  keys  )  [private]
int SiftTekkotsu::train_addToObject ( int  objectID,
ImageBuffer  buffer,
unsigned int &  siftImageID,
SiftMatch matchFound 
)

Definition at line 324 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addToObject ( int  objectID,
ImageBuffer  buffer 
)

Definition at line 313 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addToObject ( int  objectID,
std::string  PGMFileName,
unsigned int &  siftImageID,
SiftMatch matchFound 
)

Definition at line 295 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addToObject ( int  objectID,
std::string  PGMFileName 
)

Definition at line 284 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_addToObject ( int  objectID,
std::vector< keypoint * > &  keys,
object wantedObject,
SiftMatch matchFound 
) [private]
int SiftTekkotsu::train_removefromObject ( int  objectID,
ImageBuffer  buffer,
unsigned int &  siftImageID,
SiftMatch matchFound 
)

Definition at line 340 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removefromObject ( int  objectID,
ImageBuffer  buffer 
)

Definition at line 318 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removefromObject ( int  objectID,
std::string  PGMFileName,
unsigned int &  siftImageID,
SiftMatch matchFound 
)

Definition at line 304 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removefromObject ( int  objectID,
std::string  PGMFileName 
)

Definition at line 289 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removefromObject ( int  objectID,
std::vector< keypoint * > &  keys,
object wantedObject,
SiftMatch matchFound 
) [private]

Definition at line 422 of file SiftTekkotsu.cc.

Referenced by train_removefromObject().

int SiftTekkotsu::train_removeModel ( int  objectID,
ImageBuffer  buffer,
unsigned int &  siftImageID,
int  mID 
)

Definition at line 546 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removeModel ( int  objectID,
ImageBuffer  buffer,
int  mID 
)

Definition at line 526 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removeModel ( int  objectID,
std::string  PGMFileName,
unsigned int &  siftImageID,
int  mID 
)

Definition at line 512 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removeModel ( int  objectID,
std::string  PGMFileName,
int  mID 
)

Definition at line 498 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removeModel ( int  objectID,
std::vector< keypoint * > &  keys,
object wantedObject,
int  mID 
) [private]

Definition at line 594 of file SiftTekkotsu.cc.

Referenced by train_removeModel().

int SiftTekkotsu::train_removeObject ( ImageBuffer  buffer,
unsigned int &  siftImageID,
int  oID 
)

Definition at line 262 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removeObject ( ImageBuffer  buffer,
int  oID 
)

Definition at line 244 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removeObject ( std::string  PGMFileName,
unsigned int &  siftImageID,
int  oID 
)

Definition at line 230 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removeObject ( std::string  PGMFileName,
int  oID 
)

Definition at line 216 of file SiftTekkotsu.cc.

int SiftTekkotsu::train_removeObject ( std::vector< keypoint * > &  keys,
int  oID 
) [private]

Definition at line 278 of file SiftTekkotsu.cc.

Referenced by train_removeObject().

bool SiftTekkotsu::trainImage_getGaussianSpace ( unsigned int  siftImageID,
std::vector< std::vector< std::vector< int > > > &  gaussianSpace 
)
bool SiftTekkotsu::trainImage_getImageBuffer ( unsigned int  siftImageID,
ImageBuffer buffer 
)

Retrieve training image information.

Advanced image database functions SiftTekkotsu maintains a database of all the training images and of the most recent testing image. The information stored for each image include: 1. the image itself (stored as ImageBuffer) 2. Gaussian space generated by SIFT++ 3. keypoints detected in the image by SIFT++, and used for matching by KnowledgeBase The below set of functions allow the user to access the information in the image database.

Definition at line 940 of file SiftTekkotsu.cc.

bool SiftTekkotsu::trainImage_getKeypoints ( unsigned int  siftImageID,
std::vector< keypoint * > &  keypoints 
)

Definition at line 972 of file SiftTekkotsu.cc.


Member Data Documentation

int SiftTekkotsu::argc [private]

Definition at line 32 of file SiftTekkotsu.h.

Referenced by ~SiftTekkotsu().

char** SiftTekkotsu::argv [private]

Definition at line 31 of file SiftTekkotsu.h.

Referenced by SiftTekkotsu(), and ~SiftTekkotsu().

char ** SiftTekkotsu::argvCopy [private]

Definition at line 31 of file SiftTekkotsu.h.

Referenced by ~SiftTekkotsu().


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

Tekkotsu v5.1CVS
Generated Mon May 9 04:59:16 2016 by Doxygen 1.6.3