92 float threshold,
int passes,
int subset,
int tolerance,
int optimization);
106 Result
apply(std::vector<Vec> &srcPoints, std::vector<Vec> &dstPoints,
float threshold,
107 int passes,
int subset,
int tolerance,
int optimization);
136 int desiredID,
int srcID,
float threshold, Result &result);
145 static void calculateRandomModels(std::vector<Vec> &srcPoints, std::vector<Vec> &n0, std::vector<float> &dist,
int passes);
163 std::vector<Vec> &n0, std::vector<float> &dist, std::vector<int> &cAbove, std::vector<int> &cBelow, std::vector<int> &cOn,
164 std::vector<int> &adjs, std::vector<int> &start, std::vector<int> &end);
167 float threshold,
int passes, std::vector<std::vector<Vec> > &n0Pre, std::vector<std::vector<float> > &distPre, std::vector<int> &cAbove,
168 std::vector<int> &cBelow, std::vector<int> &cOn, std::vector<int> &adjs, std::vector<int> &start, std::vector<int> &end);
170 void calculateSingleCL(std::vector<Vec> &dstPoints,
float threshold,
int passes,
int subset,
171 std::vector<Vec> &n0, std::vector<float> &dist, std::vector<int> &cAbove, std::vector<int> &cBelow, std::vector<int> &cOn);
173 void calculateSingleCPU(std::vector<Vec> &dstPoints,
float threshold,
int passes,
int subset,
174 std::vector<Vec> &n0, std::vector<float> &dist, std::vector<int> &cAbove, std::vector<int> &cBelow, std::vector<int> &cOn);
178 Result createResult(std::vector<Vec> &n0, std::vector<float> &dist, std::vector<int> &cAbove, std::vector<int> &cBelow, std::vector<int> &cOn,
179 float threshold,
int passes,
int tolerance,
int optimization,
int numPoints);
182 std::vector<int> &cAbove, std::vector<int> &cBelow, std::vector<int> &cOn, std::vector<std::vector<int> > &pointIDs,
183 std::vector<std::vector<Vec> > &n0Pre, std::vector<std::vector<float> > &distPre,
float threshold,
int passes,
int tolerance,
int optimization);
188 int desiredID,
int srcID,
float threshold,
Result &result,
int w,
int h);
191 int desiredID,
int srcID,
float threshold,
Result &result,
int w,
int h);
int numPoints
Definition: PlanarRansacEstimator.h:60
void calculateMultiCL(core::DataSegment< float, 4 > &xyzh, core::Img32s labelImage, math::DynMatrix< bool > &testMatrix, float threshold, int passes, std::vector< Vec > &n0, std::vector< float > &dist, std::vector< int > &cAbove, std::vector< int > &cBelow, std::vector< int > &cOn, std::vector< int > &adjs, std::vector< int > &start, std::vector< int > &end)
ICLIO_API void labelImage(core::ImgBase *image, const std::string &label)
draws a label into the upper left image corner
Definition: PlanarRansacEstimator.h:47
static void calculateModel(Vec &fa, Vec &fb, Vec &rPoint, Vec &n0, float &dist)
undocument this line if you encounter any issues!
Definition: Any.h:37
void relabelCL(core::DataSegment< float, 4 > &xyzh, core::Img8u &newMask, core::Img32s &oldLabel, core::Img32s &newLabel, int desiredID, int srcID, float threshold, Result &result, int w, int h)
int countAbove
Definition: PlanarRansacEstimator.h:62
Definition: PlanarRansacEstimator.h:47
float euclideanThreshold
Definition: PlanarRansacEstimator.h:64
Highly flexible and optimized matrix class implementation.
Definition: DynMatrix.h:81
int acc
Definition: PlanarRansacEstimator.h:68
Result createResult(std::vector< Vec > &n0, std::vector< float > &dist, std::vector< int > &cAbove, std::vector< int > &cBelow, std::vector< int > &cOn, float threshold, int passes, int tolerance, int optimization, int numPoints)
math::DynMatrix< Result > createResultMatrix(math::DynMatrix< bool > &testMatrix, std::vector< int > &start, std::vector< int > &end, std::vector< int > &adjs, std::vector< int > &cAbove, std::vector< int > &cBelow, std::vector< int > &cOn, std::vector< std::vector< int > > &pointIDs, std::vector< std::vector< Vec > > &n0Pre, std::vector< std::vector< float > > &distPre, float threshold, int passes, int tolerance, int optimization)
Definition: PlanarRansacEstimator.h:47
int nacc
Definition: PlanarRansacEstimator.h:69
Result apply(core::DataSegment< float, 4 > &xyzh, std::vector< int > &srcIDs, std::vector< int > &dstIDs, float threshold, int passes, int subset, int tolerance, int optimization)
Applies the planar RANSAC estimation on a destination region with a model from the src region (e....
class for planar RANSAC estimation on poincloud data (xyzh).
Definition: PlanarRansacEstimator.h:44
float dist
Definition: PlanarRansacEstimator.h:66
OptimizationCriterion
Definition: PlanarRansacEstimator.h:74
Vec n0
Definition: PlanarRansacEstimator.h:65
int countBelow
Definition: PlanarRansacEstimator.h:63
Definition: PlanarRansacEstimator.h:76
void calculateMultiCPU(core::DataSegment< float, 4 > &xyzh, std::vector< std::vector< int > > &pointIDs, math::DynMatrix< bool > &testMatrix, float threshold, int passes, std::vector< std::vector< Vec > > &n0Pre, std::vector< std::vector< float > > &distPre, std::vector< int > &cAbove, std::vector< int > &cBelow, std::vector< int > &cOn, std::vector< int > &adjs, std::vector< int > &start, std::vector< int > &end)
Mode
Definition: PlanarRansacEstimator.h:47
void relabel(core::DataSegment< float, 4 > &xyzh, core::Img8u &newMask, core::Img32s &oldLabel, core::Img32s &newLabel, int desiredID, int srcID, float threshold, Result &result)
Create a label image of all points on the planar model (incl. the original surface)
void relabelCPU(core::DataSegment< float, 4 > &xyzh, core::Img8u &newMask, core::Img32s &oldLabel, core::Img32s &newLabel, int desiredID, int srcID, float threshold, Result &result, int w, int h)
Data * m_data
internal data type
Definition: PlanarRansacEstimator.h:159
int countOn
Definition: PlanarRansacEstimator.h:61
PlanarRansacEstimator(Mode mode=BEST)
Constructor.
void calculateSingleCL(std::vector< Vec > &dstPoints, float threshold, int passes, int subset, std::vector< Vec > &n0, std::vector< float > &dist, std::vector< int > &cAbove, std::vector< int > &cBelow, std::vector< int > &cOn)
static void calculateRandomModels(std::vector< Vec > &srcPoints, std::vector< Vec > &n0, std::vector< float > &dist, int passes)
Creates random models (n and distance) for RANSAC.
~PlanarRansacEstimator()
Destructor.
Definition: PlanarRansacEstimator.h:59
void calculateSingleCPU(std::vector< Vec > &dstPoints, float threshold, int passes, int subset, std::vector< Vec > &n0, std::vector< float > &dist, std::vector< int > &cAbove, std::vector< int > &cBelow, std::vector< int > &cOn)
Definition: PlanarRansacEstimator.h:75
The Img class implements the ImgBase Image interface with type specific functionalities .
Definition: Img.h:49
int tolerance
Definition: PlanarRansacEstimator.h:67