-
-
Notifications
You must be signed in to change notification settings - Fork 112
DGtal dev meeting (June 25th, 2014)
Jacques-Olivier Lachaud edited this page Jun 25, 2014
·
28 revisions
-
namespace policy
- create functors::, gathers all functors/functions into this namespace
- remove detail::, keep details::
- put all standalone functions into functors:: or details::
- question: namespace concepts:: ?
-
cpp11 policy
- Action (S1) check cpp11 features we need and check which compilers/version have them.
-
feedback from students
- lack of documentation
- backward compatibility
- Action (S1) Beginner's guide to DGtal
- look at ITK guide
- elementary programs
- thematic index pages
-
Iterators
- some iterators are well standardized (STL/boost + DGtal): GridCurve, DSL, perhaps some image containers)
- but most DGtal iterators are not standardized
- Action (M1): standardize Image, Domain, DigitalSurface
-
"smart" pointers and parameter passing
- use ConstAlias, Alias, Clone at most
- Action (S2): unify some smart pointers
- Action (M1): check other packages (DigitalSurface, etc)
-
Functors:
- Action (S1) doc on basic functors and functors of other packages.
-
Exceptions ?
- Action (M2) check some assertions and replace them by exception
-
basic linear algebra: for now it is mess
- Point and Vector same class
- SimpleMatrix (standalone)
- EigenDecomposition (package math)
- no usual linear transformation
- but package dec is coming with a linalg package (based on Eigen library)
- Action (S0) : wait for David
-
sets, domains
- characteristic set concept
- no mult and division for continued fractions
- patterns are defined only in the first quadrant (StandardDSLQ0). Keep that ?
- what about nD lattice polytope ?
- link with ArithmeticalDSL, same primitive ? same package ?
-
primitive / recognition algorithms
- Action (S1) : philosophy of primitive / recognition algorithms, concepts, models
- Action () : upgrade some recognition algorithms to return primitives: StabbingLineComputer, StabbingCircleComputer,StandardDSS6Computer,OneBalancedWordComputer
- Action (M) : general 3D straight segment primitive (for now only standard DSS 3D)
-
geometric estimators
- Action () : documentation for length estimators
- upgrade CCurveLocalGeometricEstimator, CGlobalCurveGeometricEstimator, CSegmentComputerEstimator concepts.
- Action (S1) : documentation page for estimators, listing them, explaining global philosophy and concepts, with pointers to specialized pages
- Action () : upgrade of estimators
- 3d curve ? arbitrary set of points ?
-
user tools => DGtalTools
-
package divided into directory according to input. Add digitalset (volume for now), pointcloud ?
- Linear algebra (nD) => Matrix, Vector, EigenDecomposition + package dec (linalg)
- doc missing
- polytopes (Rn, Qn) => few things, LatticePolytope2D
- affine transformations => only matrices
- bindings with morpho math packages => ?
- image processing packages => binding ITK, DICOM reader, ImageMagick reader/writer
- geometric primitives (fuzzy, higher degree) => Plane recognition (fuzzy in the Hausdorff sense)
- graph algorithms => visitors (depth-first, breadth-first, euclidean distance first), watershed, binding boost::graph (DGtal graphs can be wrapped as boost graphs)
- chamfer or graph-based distances => LUT morpho math tool (not in library)
- medial axis => DT, Voronoi by separable algos + ?
- partition models => LabelledMap (K different characteristic functions stored compactly),
- video => nothing