#include <matcher.h>
Classes | |
| struct | delta | 
| struct | maximum | 
| struct | p_match | 
| struct | parameters | 
| struct | range | 
Public Member Functions | |
| void | bucketFeatures (int32_t max_features, float bucket_width, float bucket_height) | 
| float | getGain (std::vector< int32_t > inliers) | 
| std::vector< Matcher::p_match > | getMatches () | 
| Matcher (parameters param) | |
| void | matchFeatures (int32_t method) | 
| void | pushBack (uint8_t *I1, uint8_t *I2, int32_t *dims, const bool replace) | 
| void | pushBack (uint8_t *I1, int32_t *dims, const bool replace) | 
| ~Matcher () | |
Private Member Functions | |
| void | computeDescriptor (const uint8_t *I_du, const uint8_t *I_dv, const int32_t &bpl, const int32_t &u, const int32_t &v, uint8_t *desc_addr) | 
| void | computeDescriptors (uint8_t *I_du, uint8_t *I_dv, const int32_t bpl, std::vector< Matcher::maximum > &maxima) | 
| void | computeFeatures (uint8_t *I, const int32_t *dims, int32_t *&max1, int32_t &num1, int32_t *&max2, int32_t &num2, uint8_t *&I_du, uint8_t *&I_dv, uint8_t *&I_du_full, uint8_t *&I_dv_full) | 
| void | computePriorStatistics (std::vector< Matcher::p_match > &p_matched, int32_t method) | 
| void | computeSmallDescriptor (const uint8_t *I_du, const uint8_t *I_dv, const int32_t &bpl, const int32_t &u, const int32_t &v, uint8_t *desc_addr) | 
| uint8_t * | createHalfResolutionImage (uint8_t *I, const int32_t *dims) | 
| void | createIndexVector (int32_t *m, int32_t n, std::vector< int32_t > *k, const int32_t &u_bin_num, const int32_t &v_bin_num) | 
| void | filterImageAll (uint8_t *I, uint8_t *I_du, uint8_t *I_dv, int16_t *I_f1, int16_t *I_f2, const int *dims) | 
| void | filterImageSobel (uint8_t *I, uint8_t *I_du, uint8_t *I_dv, const int *dims) | 
| void | findMatch (int32_t *m1, const int32_t &i1, int32_t *m2, const int32_t &step_size, std::vector< int32_t > *k2, const int32_t &u_bin_num, const int32_t &v_bin_num, const int32_t &stat_bin, int32_t &min_ind, int32_t stage, bool flow, bool use_prior) | 
| int32_t | getAddressOffsetImage (const int32_t &u, const int32_t &v, const int32_t &width) | 
| void | getHalfResolutionDimensions (const int32_t *dims, int32_t *dims_half) | 
| void | matching (int32_t *m1p, int32_t *m2p, int32_t *m1c, int32_t *m2c, int32_t n1p, int32_t n2p, int32_t n1c, int32_t n2c, std::vector< Matcher::p_match > &p_matched, int32_t method, bool use_prior) | 
| float | mean (const uint8_t *I, const int32_t &bpl, const int32_t &u_min, const int32_t &u_max, const int32_t &v_min, const int32_t &v_max) | 
| void | nonMaximumSuppression (int16_t *I_f1, int16_t *I_f2, const int32_t *dims, std::vector< Matcher::maximum > &maxima, int32_t nms_n) | 
| bool | parabolicFitting (const uint8_t *I1_du, const uint8_t *I1_dv, const int32_t *dims1, const uint8_t *I2_du, const uint8_t *I2_dv, const int32_t *dims2, const float &u1, const float &v1, float &u2, float &v2, Matrix At, Matrix AtA, uint8_t *desc_buffer) | 
| void | refinement (std::vector< Matcher::p_match > &p_matched, int32_t method) | 
| void | relocateMinimum (const uint8_t *I1_du, const uint8_t *I1_dv, const int32_t *dims1, const uint8_t *I2_du, const uint8_t *I2_dv, const int32_t *dims2, const float &u1, const float &v1, float &u2, float &v2, uint8_t *desc_buffer) | 
| void | removeOutliers (std::vector< Matcher::p_match > &p_matched, int32_t method) | 
| uint8_t | saturate (int16_t in) | 
Private Attributes | |
| int32_t | dims_c [3] | 
| int32_t | dims_p [3] | 
| uint8_t * | I1c | 
| uint8_t * | I1c_du | 
| uint8_t * | I1c_du_full | 
| uint8_t * | I1c_dv | 
| uint8_t * | I1c_dv_full | 
| uint8_t * | I1p | 
| uint8_t * | I1p_du | 
| uint8_t * | I1p_du_full | 
| uint8_t * | I1p_dv | 
| uint8_t * | I1p_dv_full | 
| uint8_t * | I2c | 
| uint8_t * | I2c_du | 
| uint8_t * | I2c_du_full | 
| uint8_t * | I2c_dv | 
| uint8_t * | I2c_dv_full | 
| uint8_t * | I2p | 
| uint8_t * | I2p_du | 
| uint8_t * | I2p_du_full | 
| uint8_t * | I2p_dv | 
| uint8_t * | I2p_dv_full | 
| int32_t * | m1c1 | 
| int32_t * | m1c2 | 
| int32_t * | m1p1 | 
| int32_t * | m1p2 | 
| int32_t * | m2c1 | 
| int32_t * | m2c2 | 
| int32_t * | m2p1 | 
| int32_t * | m2p2 | 
| int32_t | margin | 
| int32_t | n1c1 | 
| int32_t | n1c2 | 
| int32_t | n1p1 | 
| int32_t | n1p2 | 
| int32_t | n2c1 | 
| int32_t | n2c2 | 
| int32_t | n2p1 | 
| int32_t | n2p2 | 
| std::vector< Matcher::p_match > | p_matched_1 | 
| std::vector< Matcher::p_match > | p_matched_2 | 
| parameters | param | 
| std::vector< Matcher::range > | ranges | 
| Matcher::Matcher | ( | parameters | param | ) | 
Definition at line 33 of file matcher.cpp.
Definition at line 64 of file matcher.cpp.
| void Matcher::bucketFeatures | ( | int32_t | max_features, | 
| float | bucket_width, | ||
| float | bucket_height | ||
| ) | 
Definition at line 243 of file matcher.cpp.
| void Matcher::computeDescriptor | ( | const uint8_t * | I_du, | 
| const uint8_t * | I_dv, | ||
| const int32_t & | bpl, | ||
| const int32_t & | u, | ||
| const int32_t & | v, | ||
| uint8_t * | desc_addr | ||
| ) |  [inline, private] | 
        
Definition at line 433 of file matcher.cpp.
| void Matcher::computeDescriptors | ( | uint8_t * | I_du, | 
| uint8_t * | I_dv, | ||
| const int32_t | bpl, | ||
| std::vector< Matcher::maximum > & | maxima | ||
| ) |  [private] | 
        
Definition at line 508 of file matcher.cpp.
| void Matcher::computeFeatures | ( | uint8_t * | I, | 
| const int32_t * | dims, | ||
| int32_t *& | max1, | ||
| int32_t & | num1, | ||
| int32_t *& | max2, | ||
| int32_t & | num2, | ||
| uint8_t *& | I_du, | ||
| uint8_t *& | I_dv, | ||
| uint8_t *& | I_du_full, | ||
| uint8_t *& | I_dv_full | ||
| ) |  [private] | 
        
Definition at line 649 of file matcher.cpp.
| void Matcher::computePriorStatistics | ( | std::vector< Matcher::p_match > & | p_matched, | 
| int32_t | method | ||
| ) |  [private] | 
        
Definition at line 734 of file matcher.cpp.
| void Matcher::computeSmallDescriptor | ( | const uint8_t * | I_du, | 
| const uint8_t * | I_dv, | ||
| const int32_t & | bpl, | ||
| const int32_t & | u, | ||
| const int32_t & | v, | ||
| uint8_t * | desc_addr | ||
| ) |  [inline, private] | 
        
Definition at line 479 of file matcher.cpp.
| uint8_t * Matcher::createHalfResolutionImage | ( | uint8_t * | I, | 
| const int32_t * | dims | ||
| ) |  [private] | 
        
Definition at line 636 of file matcher.cpp.
| void Matcher::createIndexVector | ( | int32_t * | m, | 
| int32_t | n, | ||
| std::vector< int32_t > * | k, | ||
| const int32_t & | u_bin_num, | ||
| const int32_t & | v_bin_num | ||
| ) |  [private] | 
        
Definition at line 849 of file matcher.cpp.
| void Matcher::filterImageAll | ( | uint8_t * | I, | 
| uint8_t * | I_du, | ||
| uint8_t * | I_dv, | ||
| int16_t * | I_f1, | ||
| int16_t * | I_f2, | ||
| const int * | dims | ||
| ) |  [private] | 
        
Definition at line 529 of file matcher.cpp.
| void Matcher::filterImageSobel | ( | uint8_t * | I, | 
| uint8_t * | I_du, | ||
| uint8_t * | I_dv, | ||
| const int * | dims | ||
| ) |  [private] | 
        
Definition at line 594 of file matcher.cpp.
| void Matcher::findMatch | ( | int32_t * | m1, | 
| const int32_t & | i1, | ||
| int32_t * | m2, | ||
| const int32_t & | step_size, | ||
| std::vector< int32_t > * | k2, | ||
| const int32_t & | u_bin_num, | ||
| const int32_t & | v_bin_num, | ||
| const int32_t & | stat_bin, | ||
| int32_t & | min_ind, | ||
| int32_t | stage, | ||
| bool | flow, | ||
| bool | use_prior | ||
| ) |  [inline, private] | 
        
Definition at line 871 of file matcher.cpp.
| int32_t Matcher::getAddressOffsetImage | ( | const int32_t & | u, | 
| const int32_t & | v, | ||
| const int32_t & | width | ||
| ) |  [inline, private] | 
        
| float Matcher::getGain | ( | std::vector< int32_t > | inliers | ) | 
Definition at line 286 of file matcher.cpp.
| void Matcher::getHalfResolutionDimensions | ( | const int32_t * | dims, | 
| int32_t * | dims_half | ||
| ) |  [private] | 
        
Definition at line 630 of file matcher.cpp.
| std::vector<Matcher::p_match> Matcher::getMatches | ( | ) |  [inline] | 
        
| void Matcher::matchFeatures | ( | int32_t | method | ) | 
Definition at line 183 of file matcher.cpp.
| void Matcher::matching | ( | int32_t * | m1p, | 
| int32_t * | m2p, | ||
| int32_t * | m1c, | ||
| int32_t * | m2c, | ||
| int32_t | n1p, | ||
| int32_t | n2p, | ||
| int32_t | n1c, | ||
| int32_t | n2c, | ||
| std::vector< Matcher::p_match > & | p_matched, | ||
| int32_t | method, | ||
| bool | use_prior | ||
| ) |  [private] | 
        
Definition at line 937 of file matcher.cpp.
| float Matcher::mean | ( | const uint8_t * | I, | 
| const int32_t & | bpl, | ||
| const int32_t & | u_min, | ||
| const int32_t & | u_max, | ||
| const int32_t & | v_min, | ||
| const int32_t & | v_max | ||
| ) |  [inline, private] | 
        
Definition at line 1474 of file matcher.cpp.
| void Matcher::nonMaximumSuppression | ( | int16_t * | I_f1, | 
| int16_t * | I_f2, | ||
| const int32_t * | dims, | ||
| std::vector< Matcher::maximum > & | maxima, | ||
| int32_t | nms_n | ||
| ) |  [private] | 
        
Definition at line 330 of file matcher.cpp.
| bool Matcher::parabolicFitting | ( | const uint8_t * | I1_du, | 
| const uint8_t * | I1_dv, | ||
| const int32_t * | dims1, | ||
| const uint8_t * | I2_du, | ||
| const uint8_t * | I2_dv, | ||
| const int32_t * | dims2, | ||
| const float & | u1, | ||
| const float & | v1, | ||
| float & | u2, | ||
| float & | v2, | ||
| Matrix | At, | ||
| Matrix | AtA, | ||
| uint8_t * | desc_buffer | ||
| ) |  [private] | 
        
Definition at line 1273 of file matcher.cpp.
| void Matcher::pushBack | ( | uint8_t * | I1, | 
| uint8_t * | I2, | ||
| int32_t * | dims, | ||
| const bool | replace | ||
| ) | 
Definition at line 95 of file matcher.cpp.
| void Matcher::pushBack | ( | uint8_t * | I1, | 
| int32_t * | dims, | ||
| const bool | replace | ||
| ) |  [inline] | 
        
| void Matcher::refinement | ( | std::vector< Matcher::p_match > & | p_matched, | 
| int32_t | method | ||
| ) |  [private] | 
        
Definition at line 1385 of file matcher.cpp.
| void Matcher::relocateMinimum | ( | const uint8_t * | I1_du, | 
| const uint8_t * | I1_dv, | ||
| const int32_t * | dims1, | ||
| const uint8_t * | I2_du, | ||
| const uint8_t * | I2_dv, | ||
| const int32_t * | dims2, | ||
| const float & | u1, | ||
| const float & | v1, | ||
| float & | u2, | ||
| float & | v2, | ||
| uint8_t * | desc_buffer | ||
| ) |  [private] | 
        
Definition at line 1344 of file matcher.cpp.
| void Matcher::removeOutliers | ( | std::vector< Matcher::p_match > & | p_matched, | 
| int32_t | method | ||
| ) |  [private] | 
        
Definition at line 1101 of file matcher.cpp.
| uint8_t Matcher::saturate | ( | int16_t | in | ) |  [inline, private] | 
        
Definition at line 523 of file matcher.cpp.
int32_t Matcher::dims_c[3] [private] | 
        
int32_t Matcher::dims_p[3] [private] | 
        
uint8_t * Matcher::I1c [private] | 
        
uint8_t * Matcher::I1c_du [private] | 
        
uint8_t * Matcher::I1c_du_full [private] | 
        
uint8_t * Matcher::I1c_dv [private] | 
        
uint8_t * Matcher::I1c_dv_full [private] | 
        
uint8_t* Matcher::I1p [private] | 
        
uint8_t* Matcher::I1p_du [private] | 
        
uint8_t* Matcher::I1p_du_full [private] | 
        
uint8_t* Matcher::I1p_dv [private] | 
        
uint8_t* Matcher::I1p_dv_full [private] | 
        
uint8_t * Matcher::I2c [private] | 
        
uint8_t * Matcher::I2c_du [private] | 
        
uint8_t * Matcher::I2c_du_full [private] | 
        
uint8_t * Matcher::I2c_dv [private] | 
        
uint8_t * Matcher::I2c_dv_full [private] | 
        
uint8_t * Matcher::I2p [private] | 
        
uint8_t * Matcher::I2p_du [private] | 
        
uint8_t * Matcher::I2p_du_full [private] | 
        
uint8_t * Matcher::I2p_dv [private] | 
        
uint8_t * Matcher::I2p_dv_full [private] | 
        
int32_t * Matcher::m1c1 [private] | 
        
int32_t * Matcher::m1c2 [private] | 
        
int32_t* Matcher::m1p1 [private] | 
        
int32_t* Matcher::m1p2 [private] | 
        
int32_t * Matcher::m2c1 [private] | 
        
int32_t * Matcher::m2c2 [private] | 
        
int32_t * Matcher::m2p1 [private] | 
        
int32_t * Matcher::m2p2 [private] | 
        
int32_t Matcher::margin [private] | 
        
int32_t Matcher::n1c1 [private] | 
        
int32_t Matcher::n1c2 [private] | 
        
int32_t Matcher::n1p1 [private] | 
        
int32_t Matcher::n1p2 [private] | 
        
int32_t Matcher::n2c1 [private] | 
        
int32_t Matcher::n2c2 [private] | 
        
int32_t Matcher::n2p1 [private] | 
        
int32_t Matcher::n2p2 [private] | 
        
std::vector<Matcher::p_match> Matcher::p_matched_1 [private] | 
        
std::vector<Matcher::p_match> Matcher::p_matched_2 [private] | 
        
parameters Matcher::param [private] | 
        
std::vector<Matcher::range> Matcher::ranges [private] |