#include <contrib.hpp>
Public Member Functions | |
| void | compute () |
| const Mesh3D & | getMesh () const |
| Mesh3D & | getMesh () |
| size_t | getSpinCount () const |
| Mat | getSpinImage (size_t index) const |
| const Point3f & | getSpinNormal (size_t index) const |
| const Point3f & | getSpinVertex (size_t index) const |
| void | match (const SpinImageModel &scene, vector< vector< Vec2i > > &result) |
| Mat | packRandomScaledSpins (bool separateScale=false, size_t xCount=10, size_t yCount=10) const |
| void | selectRandomSubset (float ratio) |
| void | setLogger (std::ostream *log) |
| void | setSubset (const vector< int > &subset) |
| SpinImageModel () | |
| SpinImageModel (const Mesh3D &mesh) | |
| ~SpinImageModel () | |
Static Public Member Functions | |
| 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) |
| static bool | spinCorrelation (const Mat &spin1, const Mat &spin2, float lambda, float &result) |
Public Attributes | |
| float | binSize |
| float | gamma |
| int | imageWidth |
| float | lambda |
| int | minNeighbors |
| float | normalRadius |
| 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 | |
| Mesh3D | mesh |
| std::ostream * | out |
| Mat | spinImages |
| vector< int > | subset |
| cv::SpinImageModel::SpinImageModel | ( | ) |
| cv::SpinImageModel::SpinImageModel | ( | const Mesh3D & | mesh ) | [explicit] |
| cv::SpinImageModel::~SpinImageModel | ( | ) |
| 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] |
Mesh3D cv::SpinImageModel::mesh [protected] |
std::ostream* cv::SpinImageModel::out [protected] |
Mat cv::SpinImageModel::spinImages [protected] |
vector<int> cv::SpinImageModel::subset [protected] |
1.7.2