2D Geometric transformation tie-points filter (outliers remotion). More...
#include <GTFilter.h>
Classes | |
class | ApplyRansacThreadEntryThreadParams |
Parameters used by the GTFilter::applyRansacThreadEntry method. More... | |
class | RansacSetData |
Parameters used by the GTFilter::applyRansacThreadEntry method. More... | |
Public Types | |
enum | RANSACAreaRestrictionType { RANSAC_NO_AREA_REST = 0 , RANSAC_BBOX_AREA_REST = 1 , RANSAC_CHULL_AREA_REST = 2 } |
typedef long double | RansacFloatCounterT |
RANSAC floating point counter type. More... | |
typedef unsigned long int | RansacIntegerCounterT |
RANSAC integer counter type. More... | |
Public Member Functions | |
bool | applyRansac (const std::string &transfName, const GTParameters &inputParams, const double allowedMaxDirectMapError, const double allowedMaxInverseMapError, const RansacIntegerCounterT &maxIterations, const bool enableMultiThread, const RANSACAreaRestrictionType areaRestT, const std::vector< double > &tiePointsWeights, std::vector< te::gm::GTParameters::TiePoint > &outTiePoints, std::unique_ptr< GeometricTransformation > &outTransf) |
Apply a RANSAC based outliers remotion strategy. More... | |
GTFilter () | |
Default constructor. More... | |
~GTFilter () | |
Destructor. More... | |
Static Protected Member Functions | |
static void | applyRansacThreadEntry (te::gm::GTFilter::ApplyRansacThreadEntryThreadParams *paramsPtr) |
Surf locator thread entry. More... | |
static RansacIntegerCounterT | getExcpectedIterationsNumber (const unsigned int goodTPNumber, const unsigned int totalTPNumber, const unsigned int modelRequiredTPNumber) |
Returns the number of expected iterations to be performed. More... | |
static void | getTPsConvexHullArea (const std::vector< GTParameters::TiePoint > &tiePoints, double &area1, double &area2) |
Returns the tie-points convex hull area. More... | |
2D Geometric transformation tie-points filter (outliers remotion).
Definition at line 50 of file GTFilter.h.
typedef long double te::gm::GTFilter::RansacFloatCounterT |
RANSAC floating point counter type.
Definition at line 58 of file GTFilter.h.
typedef unsigned long int te::gm::GTFilter::RansacIntegerCounterT |
RANSAC integer counter type.
Definition at line 55 of file GTFilter.h.
Definition at line 64 of file GTFilter.h.
te::gm::GTFilter::GTFilter | ( | ) |
Default constructor.
te::gm::GTFilter::~GTFilter | ( | ) |
Destructor.
bool te::gm::GTFilter::applyRansac | ( | const std::string & | transfName, |
const GTParameters & | inputParams, | ||
const double | allowedMaxDirectMapError, | ||
const double | allowedMaxInverseMapError, | ||
const RansacIntegerCounterT & | maxIterations, | ||
const bool | enableMultiThread, | ||
const RANSACAreaRestrictionType | areaRestT, | ||
const std::vector< double > & | tiePointsWeights, | ||
std::vector< te::gm::GTParameters::TiePoint > & | outTiePoints, | ||
std::unique_ptr< GeometricTransformation > & | outTransf | ||
) |
Apply a RANSAC based outliers remotion strategy.
transfName | Transformation name (see te::gm::GTFactory dictionary for reference). |
inputParams | Input transformation parameters. |
allowedMaxDirectMapError | The maximum allowed direct mapping error. |
allowedMaxInverseMapError | The maximum allowed inverse mapping error. |
maxIterations | The maximum number of iterations (Use 0-zero to let this number be automatically found). |
enableMultiThread | Enable multi-threaded processing (good for multi-processor or multi-core systems). |
outTransf | The generated output transformation (with the base mininum required tie-points set). |
tiePointsWeights | Optional tie-points weights (only positive values) or an empty vector if no weights must be used. |
outTiePoints | The filtered output tie-points (non-outliers) in agreenment with the generated transformation. |
areaRestT | RANSAC area restriction type. |
|
staticprotected |
Surf locator thread entry.
paramsPtr | A pointer to the thread parameters. |
|
staticprotected |
Returns the number of expected iterations to be performed.
goodTPNumber | Number of good tie-points. |
totalTPNumber | Total number of tie-points. |
modelRequiredTPNumber | Model minimum required tie-points. |
|
staticprotected |
Returns the tie-points convex hull area.
area1 | GTParameters::TiePoint::first area. |
area2 | GTParameters::TiePoint::second area. |
tiePoints | Tie points. |