Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

sift-driver.cc File Reference

#include "sift.hpp"
#include "sift-driver.hpp"
#include <vector>
#include <string>
#include <iostream>
#include <iomanip>
#include <fstream>
#include <sstream>
#include <algorithm>
#include <memory>
#include <stdint.h>
#include <getopt.h>
#include <string.h>
#include <assert.h>
#include "libgen_emu.h"
Include dependency graph for sift-driver.cc:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define no_argument   NO_ARG
#define required_argument   REQUIRED_ARG
#define RAW_CONST_PT(x)   reinterpret_cast<char const*>(x)
#define RAW_PT(x)   reinterpret_cast<char*>(x)

Typedefs

typedef vector< pair
< VL::Sift::Keypoint,
VL::float_t > > 
Keypoints

Functions

bool ciIsEqual (char a, char b)
 Case insensitive character comparison.
string removeExtension (string name, string ext)
 Case insensitive extension removal.
std::ostream & insertDescriptor (std::ostream &os, VL::float_t const *descr_pt, bool binary, bool fp, int *numKeypoints, vector< double > *keyValues, bool outGood)
 Insert descriptor into stream.
std::ostream & insertDescriptor (std::ostream &os, VL::float_t const *descr_pt, bool binary, bool fp, int *numKeypoints, vector< double > *keyValues)
bool cmpKeypoints (Keypoints::value_type const &a, Keypoints::value_type const &b)
VL::Siftsiftdriver (int argc, char **argv, int *numKeypoints, vector< double > *keyValues, vector< vector< vector< int > > > &gaussianSpace)
VL::Siftsiftdriver (int argc, char **argv, int *numKeypoints, vector< double > *keyValues, vector< vector< vector< int > > > &gaussianSpace, VL::pixel_t *data, int width, int height)
VL::Siftsiftdriver (int argc, char **argv, int *numKeypoints, vector< double > *keyvals)
VL::Siftsiftdriver (int argc, char **argv, int *numKeypoints)

Variables

size_t const not_found = numeric_limits<size_t>::max() - 1

Define Documentation

#define no_argument   NO_ARG

Definition at line 32 of file sift-driver.cc.

Referenced by siftdriver().

#define RAW_CONST_PT (  )     reinterpret_cast<char const*>(x)

Referenced by insertDescriptor().

#define RAW_PT (  )     reinterpret_cast<char*>(x)

Referenced by insertDescriptor().

#define required_argument   REQUIRED_ARG

Definition at line 35 of file sift-driver.cc.

Referenced by siftdriver().


Typedef Documentation

typedef vector<pair<VL::Sift::Keypoint,VL::float_t> > Keypoints

Definition at line 180 of file sift-driver.cc.


Function Documentation

bool ciIsEqual ( char  a,
char  b 
)

Case insensitive character comparison.

This predicate returns true if a and b are equal up to case.

Returns:
predicate value.

Definition at line 50 of file sift-driver.cc.

Referenced by removeExtension().

bool cmpKeypoints ( Keypoints::value_type const &  a,
Keypoints::value_type const &  b 
)

Definition at line 183 of file sift-driver.cc.

Referenced by siftdriver().

std::ostream& insertDescriptor ( std::ostream &  os,
VL::float_t const *  descr_pt,
bool  binary,
bool  fp,
int *  numKeypoints,
vector< double > *  keyValues 
)

Definition at line 169 of file sift-driver.cc.

std::ostream& insertDescriptor ( std::ostream &  os,
VL::float_t const *  descr_pt,
bool  binary,
bool  fp,
int *  numKeypoints,
vector< double > *  keyValues,
bool  outGood 
)

Insert descriptor into stream.

The function writes a descriptor in ASCII/binary format and in integer/floating point format into the stream.

Parameters:
os output stream.
descr_pt descriptor (floating point)
binary write binary descriptor?
fp write floating point data?

Definition at line 90 of file sift-driver.cc.

Referenced by insertDescriptor(), and siftdriver().

string removeExtension ( string  name,
string  ext 
)

Case insensitive extension removal.

The function returns name with the suffix $a ext removed. The suffix is matched case-insensitve.

Returns:
name without ext.

Definition at line 65 of file sift-driver.cc.

Referenced by siftdriver().

VL::Sift* siftdriver ( int  argc,
char **  argv,
int *  numKeypoints 
)

Definition at line 895 of file sift-driver.cc.

VL::Sift* siftdriver ( int  argc,
char **  argv,
int *  numKeypoints,
vector< double > *  keyvals 
)

Definition at line 888 of file sift-driver.cc.

VL::Sift* siftdriver ( int  argc,
char **  argv,
int *  numKeypoints,
vector< double > *  keyValues,
vector< vector< vector< int > > > &  gaussianSpace,
VL::pixel_t data,
int  width,
int  height 
)

Added new variable and argument flag to indicate to read from pixel_t array instead of file By Xinghao Pan on 14 Aug 08

Start of code modified by Xinghao Pan on 14 Apr 2008 to support the passing of pixel_t arrays directly instead of using files

End of code modified by Xinghao Pan on 14 Apr 2008 to support the passing of pixel_t arrays directly instead of using files

Start of code added by Xinghao Pan on 20 Feb 2008 Facilitate record of gaussian space

End of code added by Xinghao Pan on 20 Feb 2008 Facilitate record of gaussian space

Code change by Xinghao Pan on 17 Jul 08, 0121h Original version throws exception when unable to write to file Causes problem when user has no write permissions to outputfilename path Instead, simply print error code and do not write output

Definition at line 198 of file sift-driver.cc.

VL::Sift* siftdriver ( int  argc,
char **  argv,
int *  numKeypoints,
vector< double > *  keyValues,
vector< vector< vector< int > > > &  gaussianSpace 
)

Definition at line 192 of file sift-driver.cc.

Referenced by siftdriver().


Variable Documentation

size_t const not_found = numeric_limits<size_t>::max() - 1

Definition at line 40 of file sift-driver.cc.


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