Image Component Library (ICL)
Classes | Typedefs | Functions | Variables
icl::cv::opensurf Namespace Reference

Classes

class  Kmeans
 Kmeans clustering. More...
 
class  ResponseLayer
 Response Layer class. More...
 
class  Surf
 Surf Feation class. More...
 

Typedefs

typedef SurfFeature Ipoint
 
typedef std::vector< SurfFeatureIpVec
 
typedef std::vector< SurfMatchIpPairVec
 

Functions

ICLCV_API void getMatches (IpVec &ipts1, IpVec &ipts2, IpPairVec &matches)
 
ICLCV_API int translateCorners (IpPairVec &matches, const CvPoint src_corners[4], CvPoint dst_corners[4])
 
ICLCV_API IplImage * Integral (IplImage *img)
 Computes the integral image of image img. Assumes source image to be a. More...
 
ICLCV_API float BoxIntegral (IplImage *img, int row, int col, int rows, int cols)
 Computes the sum of pixels within the rectangle. More...
 
ICLCV_API void surfDetDes (IplImage *img, std::vector< Ipoint > &ipts, bool upright=false, int octaves=OCTAVES, int intervals=INTERVALS, int init_sample=INIT_SAMPLE, float thres=THRES)
 Library function builds vector of described interest points. More...
 
ICLCV_API void surfDet (IplImage *img, std::vector< Ipoint > &ipts, int octaves=OCTAVES, int intervals=INTERVALS, int init_sample=INIT_SAMPLE, float thres=THRES)
 Library function builds vector of interest points. More...
 
ICLCV_API void surfDes (IplImage *img, std::vector< Ipoint > &ipts, bool upright=false)
 Library function describes interest points in vector. More...
 
ICLCV_API void error (const char *msg)
 Display error message and terminate program. More...
 
ICLCV_API void showImage (const IplImage *img)
 Show the provided image and wait for keypress. More...
 
ICLCV_API void showImage (char *title, const IplImage *img)
 Show the provided image in titled window and wait for keypress. More...
 
ICLCV_API IplImage * getGray (const IplImage *img)
 
ICLCV_API void drawIpoint (IplImage *img, Ipoint &ipt, int tailSize=0)
 Draw a single feature on the image. More...
 
ICLCV_API void drawIpoints (IplImage *img, std::vector< Ipoint > &ipts, int tailSize=0)
 Draw all the Ipoints in the provided vector. More...
 
ICLCV_API void drawWindows (IplImage *img, std::vector< Ipoint > &ipts)
 Draw descriptor windows around Ipoints in the provided vector. More...
 
ICLCV_API void drawFPS (IplImage *img)
 
ICLCV_API void drawPoint (IplImage *img, Ipoint &ipt)
 Draw a Point at feature location. More...
 
ICLCV_API void drawPoints (IplImage *img, std::vector< Ipoint > &ipts)
 Draw a Point at all features. More...
 
ICLCV_API void saveSurf (char *filename, std::vector< Ipoint > &ipts)
 Save the SURF features to file. More...
 
ICLCV_API void loadSurf (char *filename, std::vector< Ipoint > &ipts)
 Load the SURF features from file. More...
 
int fRound (float flt)
 Round float to nearest integer. More...
 

Variables

static const int OCTAVES = 5
 
static const int INTERVALS = 4
 
static const float THRES = 0.0004f
 
static const int INIT_SAMPLE = 2
 

Typedef Documentation

◆ Ipoint

◆ IpPairVec

◆ IpVec

typedef std::vector<SurfFeature> icl::cv::opensurf::IpVec

Function Documentation

◆ BoxIntegral()

ICLCV_API float icl::cv::opensurf::BoxIntegral ( IplImage *  img,
int  row,
int  col,
int  rows,
int  cols 
)

Computes the sum of pixels within the rectangle.

specified by the top-left start co-ordinate and size

◆ drawFPS()

ICLCV_API void icl::cv::opensurf::drawFPS ( IplImage *  img)

◆ drawIpoint()

ICLCV_API void icl::cv::opensurf::drawIpoint ( IplImage *  img,
Ipoint ipt,
int  tailSize = 0 
)

Draw a single feature on the image.

◆ drawIpoints()

ICLCV_API void icl::cv::opensurf::drawIpoints ( IplImage *  img,
std::vector< Ipoint > &  ipts,
int  tailSize = 0 
)

Draw all the Ipoints in the provided vector.

◆ drawPoint()

ICLCV_API void icl::cv::opensurf::drawPoint ( IplImage *  img,
Ipoint ipt 
)

Draw a Point at feature location.

◆ drawPoints()

ICLCV_API void icl::cv::opensurf::drawPoints ( IplImage *  img,
std::vector< Ipoint > &  ipts 
)

Draw a Point at all features.

◆ drawWindows()

ICLCV_API void icl::cv::opensurf::drawWindows ( IplImage *  img,
std::vector< Ipoint > &  ipts 
)

Draw descriptor windows around Ipoints in the provided vector.

◆ error()

ICLCV_API void icl::cv::opensurf::error ( const char *  msg)

Display error message and terminate program.

◆ fRound()

int icl::cv::opensurf::fRound ( float  flt)
inline

Round float to nearest integer.

◆ getGray()

ICLCV_API IplImage* icl::cv::opensurf::getGray ( const IplImage *  img)

◆ getMatches()

ICLCV_API void icl::cv::opensurf::getMatches ( IpVec ipts1,
IpVec ipts2,
IpPairVec matches 
)

◆ Integral()

ICLCV_API IplImage* icl::cv::opensurf::Integral ( IplImage *  img)

Computes the integral image of image img. Assumes source image to be a.

32-bit floating point. Returns IplImage in 32-bit float form.

◆ loadSurf()

ICLCV_API void icl::cv::opensurf::loadSurf ( char *  filename,
std::vector< Ipoint > &  ipts 
)

Load the SURF features from file.

◆ saveSurf()

ICLCV_API void icl::cv::opensurf::saveSurf ( char *  filename,
std::vector< Ipoint > &  ipts 
)

Save the SURF features to file.

◆ showImage() [1/2]

ICLCV_API void icl::cv::opensurf::showImage ( const IplImage *  img)

Show the provided image and wait for keypress.

◆ showImage() [2/2]

ICLCV_API void icl::cv::opensurf::showImage ( char *  title,
const IplImage *  img 
)

Show the provided image in titled window and wait for keypress.

◆ surfDes()

ICLCV_API void icl::cv::opensurf::surfDes ( IplImage *  img,
std::vector< Ipoint > &  ipts,
bool  upright = false 
)

Library function describes interest points in vector.

◆ surfDet()

ICLCV_API void icl::cv::opensurf::surfDet ( IplImage *  img,
std::vector< Ipoint > &  ipts,
int  octaves = OCTAVES,
int  intervals = INTERVALS,
int  init_sample = INIT_SAMPLE,
float  thres = THRES 
)

Library function builds vector of interest points.

◆ surfDetDes()

ICLCV_API void icl::cv::opensurf::surfDetDes ( IplImage *  img,
std::vector< Ipoint > &  ipts,
bool  upright = false,
int  octaves = OCTAVES,
int  intervals = INTERVALS,
int  init_sample = INIT_SAMPLE,
float  thres = THRES 
)

Library function builds vector of described interest points.

◆ translateCorners()

ICLCV_API int icl::cv::opensurf::translateCorners ( IpPairVec matches,
const CvPoint  src_corners[4],
CvPoint  dst_corners[4] 
)

Variable Documentation

◆ INIT_SAMPLE

const int icl::cv::opensurf::INIT_SAMPLE = 2
static

◆ INTERVALS

const int icl::cv::opensurf::INTERVALS = 4
static

◆ OCTAVES

const int icl::cv::opensurf::OCTAVES = 5
static

◆ THRES

const float icl::cv::opensurf::THRES = 0.0004f
static