OpenCV  2.4.13
Open Source Computer Vision
cv::SpinImageModel Class Reference

#include <contrib.hpp>

Public Member Functions

 SpinImageModel ()
 
 SpinImageModel (const Mesh3D &mesh)
 
 ~SpinImageModel ()
 
void setLogger (std::ostream *log)
 
void selectRandomSubset (float ratio)
 
void setSubset (const vector< int > &subset)
 
void compute ()
 
void match (const SpinImageModel &scene, vector< vector< Vec2i > > &result)
 
Mat packRandomScaledSpins (bool separateScale=false, size_t xCount=10, size_t yCount=10) const
 
size_t getSpinCount () const
 
Mat getSpinImage (size_t index) const
 
const Point3fgetSpinVertex (size_t index) const
 
const Point3fgetSpinNormal (size_t index) const
 
const Mesh3DgetMesh () const
 
Mesh3DgetMesh ()
 

Static Public Member Functions

static bool spinCorrelation (const Mat &spin1, const Mat &spin2, float lambda, float &result)
 
static Point2f calcSpinMapCoo (const Point3f &point, const Point3f &vertex, const Point3f &normal)
 
static float geometricConsistency (const Point3f &pointScene1, const Point3f &normalScene1, const Point3f &pointModel1, const Point3f &normalModel1, const Point3f &pointScene2, const Point3f &normalScene2, const Point3f &pointModel2, const Point3f &normalModel2)
 
static float groupingCreteria (const Point3f &pointScene1, const Point3f &normalScene1, const Point3f &pointModel1, const Point3f &normalModel1, const Point3f &pointScene2, const Point3f &normalScene2, const Point3f &pointModel2, const Point3f &normalModel2, float gamma)
 

Public Attributes

float normalRadius
 
int minNeighbors
 
float binSize
 
int imageWidth
 
float lambda
 
float gamma
 
float T_GeometriccConsistency
 
float T_GroupingCorespondances
 

Protected Member Functions

void defaultParams ()
 
void matchSpinToModel (const Mat &spin, vector< int > &indeces, vector< float > &corrCoeffs, bool useExtremeOutliers=true) const
 
void repackSpinImages (const vector< uchar > &mask, Mat &spinImages, bool reAlloc=true) const
 

Protected Attributes

vector< intsubset
 
Mesh3D mesh
 
Mat spinImages
 
std::ostream * out
 

Constructor & Destructor Documentation

cv::SpinImageModel::SpinImageModel ( )
cv::SpinImageModel::SpinImageModel ( const Mesh3D mesh)
explicit
cv::SpinImageModel::~SpinImageModel ( )

Member Function Documentation

static Point2f cv::SpinImageModel::calcSpinMapCoo ( const Point3f point,
const Point3f vertex,
const Point3f normal 
)
static
void cv::SpinImageModel::compute ( )
void cv::SpinImageModel::defaultParams ( )
protected
static float cv::SpinImageModel::geometricConsistency ( const Point3f pointScene1,
const Point3f normalScene1,
const Point3f pointModel1,
const Point3f normalModel1,
const Point3f pointScene2,
const Point3f normalScene2,
const Point3f pointModel2,
const Point3f normalModel2 
)
static
const Mesh3D& cv::SpinImageModel::getMesh ( ) const
inline
Mesh3D& cv::SpinImageModel::getMesh ( )
inline
size_t cv::SpinImageModel::getSpinCount ( ) const
inline
Mat cv::SpinImageModel::getSpinImage ( size_t  index) const
inline
const Point3f& cv::SpinImageModel::getSpinNormal ( size_t  index) const
inline
const Point3f& cv::SpinImageModel::getSpinVertex ( size_t  index) const
inline
static float cv::SpinImageModel::groupingCreteria ( const Point3f pointScene1,
const Point3f normalScene1,
const Point3f pointModel1,
const Point3f normalModel1,
const Point3f pointScene2,
const Point3f normalScene2,
const Point3f pointModel2,
const Point3f normalModel2,
float  gamma 
)
static
void cv::SpinImageModel::match ( const SpinImageModel scene,
vector< vector< Vec2i > > &  result 
)
void cv::SpinImageModel::matchSpinToModel ( const Mat spin,
vector< int > &  indeces,
vector< float > &  corrCoeffs,
bool  useExtremeOutliers = true 
) const
protected
Mat cv::SpinImageModel::packRandomScaledSpins ( bool  separateScale = false,
size_t  xCount = 10,
size_t  yCount = 10 
) const
void cv::SpinImageModel::repackSpinImages ( const vector< uchar > &  mask,
Mat spinImages,
bool  reAlloc = true 
) const
protected
void cv::SpinImageModel::selectRandomSubset ( float  ratio)
void cv::SpinImageModel::setLogger ( std::ostream *  log)
void cv::SpinImageModel::setSubset ( const vector< int > &  subset)
static bool cv::SpinImageModel::spinCorrelation ( const Mat spin1,
const Mat spin2,
float  lambda,
float &  result 
)
static

Member Data Documentation

float cv::SpinImageModel::binSize
float cv::SpinImageModel::gamma
int cv::SpinImageModel::imageWidth
float cv::SpinImageModel::lambda
Mesh3D cv::SpinImageModel::mesh
protected
int cv::SpinImageModel::minNeighbors
float cv::SpinImageModel::normalRadius
std::ostream* cv::SpinImageModel::out
protected
Mat cv::SpinImageModel::spinImages
protected
vector<int> cv::SpinImageModel::subset
protected
float cv::SpinImageModel::T_GeometriccConsistency
float cv::SpinImageModel::T_GroupingCorespondances

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