#include <ransac_transformation.h>
Public Member Functions | |
void | computeInliersAndError (const std::vector< cv::DMatch > &matches, const Eigen::Matrix4f &transformation, const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > &origins, const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > &earlier, std::vector< cv::DMatch > &inliers, double &mean_error, std::vector< double > &errors, double squaredMaxInlierDistInM) |
bool | getRelativeTransformationTo (const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > &source_feature_locations_3d, const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > &target_feature_locations_3d, std::vector< cv::DMatch > *initial_matches, Eigen::Matrix4f &resulting_transformation, float &rmse, std::vector< cv::DMatch > &matches, uint min_matches) |
template<class InputIterator > | |
Eigen::Matrix4f | getTransformFromMatches (const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > &source_feature_locations_3d, const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > &target_feature_locations_3d, InputIterator iter_begin, InputIterator iter_end, bool &valid, float max_dist_m) |
RansacTransformation () | |
virtual | ~RansacTransformation () |
Definition at line 16 of file ransac_transformation.h.
Definition at line 18 of file ransac_transformation.cpp.
RansacTransformation::~RansacTransformation | ( | ) | [virtual] |
Definition at line 24 of file ransac_transformation.cpp.
void RansacTransformation::computeInliersAndError | ( | const std::vector< cv::DMatch > & | matches, |
const Eigen::Matrix4f & | transformation, | ||
const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > & | origins, | ||
const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > & | earlier, | ||
std::vector< cv::DMatch > & | inliers, | ||
double & | mean_error, | ||
std::vector< double > & | errors, | ||
double | squaredMaxInlierDistInM | ||
) |
Definition at line 29 of file ransac_transformation.cpp.
bool RansacTransformation::getRelativeTransformationTo | ( | const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > & | source_feature_locations_3d, |
const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > & | target_feature_locations_3d, | ||
std::vector< cv::DMatch > * | initial_matches, | ||
Eigen::Matrix4f & | resulting_transformation, | ||
float & | rmse, | ||
std::vector< cv::DMatch > & | matches, | ||
uint | min_matches | ||
) |
Find transformation with largest support, RANSAC style. Return false if no transformation can be found
Iterations with more than half of the initial_matches inlying, count twice
Iterations with more than 80% of the initial_matches inlying, count threefold
Definition at line 154 of file ransac_transformation.cpp.
Eigen::Matrix4f RansacTransformation::getTransformFromMatches | ( | const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > & | source_feature_locations_3d, |
const std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > & | target_feature_locations_3d, | ||
InputIterator | iter_begin, | ||
InputIterator | iter_end, | ||
bool & | valid, | ||
float | max_dist_m | ||
) |
Definition at line 98 of file ransac_transformation.cpp.