DGtal
1.4.2
|
Part of the Geometry package.
This part of the manual describes the normal estimation algorithm based on the computation of maximal segment on slices of a digital surface (see [72] and [84]).
The following programs are related to this documentation: geometry/surfaces/exampleMaximalSegmentSliceEstimation.cpp, testArithmeticalDSSComputerOnSurfels.cpp.
Most of the estimators need some kind of parameters to control the neighborhood in which some averaging process is done. On the contrary, this estimator is interesting since it has no parameter. It is also fast and can be used as an input to other estimators (see PlaneProbingDigitalSurfaceLocalEstimator for instance). The idea is the following (for a surfel \( s \)):
The estimation is implemented in the class MaximalSegmentSliceEstimation. It is a model of concepts::CSurfelLocalEstimator and concepts::CDigitalSurfaceLocalEstimator, so it has the following methods:
It can be instantiated and used as follows:
The class is essentially a wrapper of the class ArithmeticalDSSComputerOnSurfels which is an adaptation of ArithmeticalDSSComputer to recognize 2D digital segments on projections of 3D surfels. It can be instantiated as follows:
See the page Digital straight lines and segments
for more details on how to use it.