![]() |
AliceVision
Photogrammetric Computer Vision Framework
|
A generic kernel used for the ACRANSAC / LORANSAC framework. More...
#include <IRansacKernel.hpp>
Public Member Functions | |
| virtual std::size_t | getMinimumNbRequiredSamples () const =0 |
| Return the minimum number of required samples for the solver. More... | |
| virtual std::size_t | getMinimumNbRequiredSamplesLS () const =0 |
| Return the minimum number of required samples for the solver Ls. More... | |
| virtual std::size_t | getMaximumNbModels () const =0 |
| Return the maximum number of models for the solver. More... | |
| virtual void | fit (const std::vector< std::size_t > &samples, std::vector< ModelT > &models) const =0 |
This function is called to estimate the model from the minimum number of sample minSample (i.e. minimal problem solver). More... | |
| virtual void | fitLS (const std::vector< std::size_t > &inliers, std::vector< ModelT > &models, const std::vector< double > *weights=nullptr) const =0 |
This function is called to estimate the model using a least squared algorithm from a minimum of minSampleLS. More... | |
| virtual void | computeWeights (const ModelT &model, const std::vector< std::size_t > &inliers, std::vector< double > &weights, const double eps=0.001) const =0 |
| Function used to estimate the weights, typically used by the least square algorithm. More... | |
| virtual double | error (std::size_t sample, const ModelT &model) const =0 |
| Function that computes the estimation error for a given model and a given element. More... | |
| virtual void | errors (const ModelT &model, std::vector< double > &errors) const =0 |
| Function that computes the estimation error for a given model and all the elements. More... | |
| virtual void | unnormalize (ModelT &model) const =0 |
| Function used to unnormalize the model. More... | |
| virtual std::size_t | nbSamples () const =0 |
| The number of elements in the data. More... | |
| virtual double | logalpha0 () const =0 |
| Get logalpha0, Alpha0 is used to make the error adaptive to the image size. More... | |
| virtual double | errorVectorDimension () const =0 |
| virtual double | unormalizeError (double val) const =0 |
| virtual Mat3 | normalizer1 () const =0 |
| virtual double | thresholdNormalizer () const =0 |
A generic kernel used for the ACRANSAC / LORANSAC framework.
| ModelT | The class representing the model to estimate. |
|
pure virtual |
Function used to estimate the weights, typically used by the least square algorithm.
| [in] | model | The model against which the weights are computed. |
| [in] | inliers | The array of the indices of the data to be used. |
| [out] | vec_weights | The array of weight of the same size as inliers. |
| [in] | eps | An optional threshold to max out the value of the threshold (typically to avoid division by zero or too small numbers). |
Implemented in aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, ModelT_, SolverLsT_ >, and aliceVision::sfm::TranslationTripletKernelACRansac< SolverT_, ErrorT_, ModelT_ >.
|
pure virtual |
Function that computes the estimation error for a given model and a given element.
| [in] | sample | The index of the element for which the error is computed. |
| [in] | model | The model to consider. |
Implemented in aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, ModelT_, SolverLsT_ >, and aliceVision::sfm::TranslationTripletKernelACRansac< SolverT_, ErrorT_, ModelT_ >.
|
pure virtual |
Function that computes the estimation error for a given model and all the elements.
| [in] | model | The model to consider. |
| [out] | vec_errors | The vector containing all the estimation errors for every element. |
Implemented in aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, ModelT_, SolverLsT_ >, and aliceVision::sfm::TranslationTripletKernelACRansac< SolverT_, ErrorT_, ModelT_ >.
|
pure virtual |
This function is called to estimate the model from the minimum number of sample minSample (i.e. minimal problem solver).
| [in] | samples | A vector containing the indices of the data to be used for the minimal estimation. |
| [out] | models | The model(s) estimated by the minimal solver. |
Implemented in aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, aliceVision::sfm::TranslationTripletKernelACRansac< SolverT_, ErrorT_, ModelT_ >, and aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, ModelT_, SolverLsT_ >.
|
pure virtual |
This function is called to estimate the model using a least squared algorithm from a minimum of minSampleLS.
| [in] | inliers | An array containing the indices of the data to use. |
| [out] | models | The model(s) estimated using the least squared algorithm. |
| [in] | weights | An optional array of weights, one for each sample |
Implemented in aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, ModelT_, SolverLsT_ >, and aliceVision::sfm::TranslationTripletKernelACRansac< SolverT_, ErrorT_, ModelT_ >.
|
pure virtual |
Return the maximum number of models for the solver.
Implemented in aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, and aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >.
|
pure virtual |
Return the minimum number of required samples for the solver.
Implemented in aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, and aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >.
|
pure virtual |
Return the minimum number of required samples for the solver Ls.
|
pure virtual |
Get logalpha0, Alpha0 is used to make the error adaptive to the image size.
Implemented in aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, and aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >.
|
pure virtual |
The number of elements in the data.
Implemented in aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, and aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >.
|
pure virtual |
Function used to unnormalize the model.
| [in,out] | model | The model to unnormalize. |
Implemented in aliceVision::multiview::TriangulationSphericalKernel, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat3Model, robustEstimation::UndefinedSolver< robustEstimation::Mat3Model > >, aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, robustEstimation::Mat34Model, robustEstimation::UndefinedSolver< robustEstimation::Mat34Model > >, aliceVision::sfm::TranslationTripletKernelACRansac< SolverT_, ErrorT_, ModelT_ >, and aliceVision::robustEstimation::PointFittingRansacKernel< SolverT_, ErrorT_, ModelT_, SolverLsT_ >.
1.8.17