OpenCV  2.4.13.3
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

§ SpinImageModel() [1/2]

cv::SpinImageModel::SpinImageModel ( )

§ SpinImageModel() [2/2]

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

§ ~SpinImageModel()

cv::SpinImageModel::~SpinImageModel ( )

Member Function Documentation

§ calcSpinMapCoo()

static Point2f cv::SpinImageModel::calcSpinMapCoo ( const Point3f point,
const Point3f vertex,
const Point3f normal 
)
static

§ compute()

void cv::SpinImageModel::compute ( )

§ defaultParams()

void cv::SpinImageModel::defaultParams ( )
protected

§ geometricConsistency()

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

§ getMesh() [1/2]

const Mesh3D& cv::SpinImageModel::getMesh ( ) const
inline

§ getMesh() [2/2]

Mesh3D& cv::SpinImageModel::getMesh ( )
inline

§ getSpinCount()

size_t cv::SpinImageModel::getSpinCount ( ) const
inline

§ getSpinImage()

Mat cv::SpinImageModel::getSpinImage ( size_t  index) const
inline

§ getSpinNormal()

const Point3f& cv::SpinImageModel::getSpinNormal ( size_t  index) const
inline

§ getSpinVertex()

const Point3f& cv::SpinImageModel::getSpinVertex ( size_t  index) const
inline

§ groupingCreteria()

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

§ match()

void cv::SpinImageModel::match ( const SpinImageModel scene,
vector< vector< Vec2i > > &  result 
)

§ matchSpinToModel()

void cv::SpinImageModel::matchSpinToModel ( const Mat spin,
vector< int > &  indeces,
vector< float > &  corrCoeffs,
bool  useExtremeOutliers = true 
) const
protected

§ packRandomScaledSpins()

Mat cv::SpinImageModel::packRandomScaledSpins ( bool  separateScale = false,
size_t  xCount = 10,
size_t  yCount = 10 
) const

§ repackSpinImages()

void cv::SpinImageModel::repackSpinImages ( const vector< uchar > &  mask,
Mat spinImages,
bool  reAlloc = true 
) const
protected

§ selectRandomSubset()

void cv::SpinImageModel::selectRandomSubset ( float  ratio)

§ setLogger()

void cv::SpinImageModel::setLogger ( std::ostream *  log)

§ setSubset()

void cv::SpinImageModel::setSubset ( const vector< int > &  subset)

§ spinCorrelation()

static bool cv::SpinImageModel::spinCorrelation ( const Mat spin1,
const Mat spin2,
float  lambda,
float &  result 
)
static

Member Data Documentation

§ binSize

float cv::SpinImageModel::binSize

§ gamma

float cv::SpinImageModel::gamma

§ imageWidth

int cv::SpinImageModel::imageWidth

§ lambda

float cv::SpinImageModel::lambda

§ mesh

Mesh3D cv::SpinImageModel::mesh
protected

§ minNeighbors

int cv::SpinImageModel::minNeighbors

§ normalRadius

float cv::SpinImageModel::normalRadius

§ out

std::ostream* cv::SpinImageModel::out
protected

§ spinImages

Mat cv::SpinImageModel::spinImages
protected

§ subset

vector<int> cv::SpinImageModel::subset
protected

§ T_GeometriccConsistency

float cv::SpinImageModel::T_GeometriccConsistency

§ T_GroupingCorespondances

float cv::SpinImageModel::T_GroupingCorespondances

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