DGtal 2.1.0
Loading...
Searching...
No Matches
BenchInfo Struct Reference

Public Member Functions

 BenchInfo ()

Static Public Attributes

static std::vector< std::vector< Z3i::Point > > shapes
static std::vector< Z3i::Domaindomains
static std::vector< std::string > names

Detailed Description

Definition at line 20 of file benchmarkDigitalSetByOctree.cpp.

Constructor & Destructor Documentation

◆ BenchInfo()

BenchInfo::BenchInfo ( )
inline

Definition at line 26 of file benchmarkDigitalSetByOctree.cpp.

26 {
27 if (shapes.size() != 0) return;
28
29 const auto polys = SH3::getPolynomialList();
30 const double steps[] = { 1.00, 0.50, 0.25 };
31 const double noises[] = { 0.00, 0.10 };
32
33 for (const auto& poly : polys) {
34 for (const auto& step : steps) {
35 for (const auto& noise : noises) {
36
37 auto params = SH3::defaultParameters();
38 params( "polynomial", poly.second )
39 ( "gridstep", step)
40 ( "noise", noise);
41
42 auto ishape = SH3::makeImplicitShape3D(params);
43 auto dshape = SH3::makeDigitizedImplicitShape3D(ishape, params);
44 auto nshape = SH3::makeBinaryImage(dshape, params);
45
46 const std::string name = poly.first + "_" + std::to_string(step) + "_" + std::to_string(noise);
47 const auto domain = nshape->domain();
48
49 names.push_back(name);
50 domains.push_back(nshape->domain());
51 shapes.push_back({});
52
53 for (auto it = domain.begin(); it != domain.end(); ++it) {
54 if (nshape->operator()(*it) != 0) {
55 shapes.back().push_back(*it);
56 }
57 }
58 }
59 }
60 }
61
62 std::cout << "Shapes: " << std::endl;
63 for (const auto& n : names) {
64 std::cout << "\t -" << n << std::endl;
65 }
66 }
static std::map< std::string, std::string > getPolynomialList()
Definition Shortcuts.h:233
static CountedPtr< DigitizedImplicitShape3D > makeDigitizedImplicitShape3D(CountedPtr< ImplicitShape3D > shape, Parameters params=parametersDigitizedImplicitShape3D())
Definition Shortcuts.h:520
static Parameters defaultParameters()
Definition Shortcuts.h:200
static CountedPtr< BinaryImage > makeBinaryImage(Domain shapeDomain)
Definition Shortcuts.h:558
static CountedPtr< ImplicitShape3D > makeImplicitShape3D(const Parameters &params=parametersImplicitShape3D())
Definition Shortcuts.h:279
const Domain & domain() const
Definition VoronoiMap.h:265
static std::vector< std::vector< Z3i::Point > > shapes
static std::vector< Z3i::Domain > domains
static std::vector< std::string > names
Domain domain

References DGtal::Shortcuts< Z3i::KSpace >::defaultParameters(), domain, domains, DGtal::Shortcuts< Z3i::KSpace >::getPolynomialList(), DGtal::Shortcuts< Z3i::KSpace >::makeBinaryImage(), DGtal::Shortcuts< Z3i::KSpace >::makeDigitizedImplicitShape3D(), DGtal::Shortcuts< Z3i::KSpace >::makeImplicitShape3D(), names, and shapes.

Field Documentation

◆ domains

std::vector<Z3i::Domain> BenchInfo::domains
inlinestatic

Definition at line 23 of file benchmarkDigitalSetByOctree.cpp.

Referenced by BenchInfo().

◆ names

std::vector<std::string> BenchInfo::names
inlinestatic

Definition at line 24 of file benchmarkDigitalSetByOctree.cpp.

Referenced by BenchInfo().

◆ shapes

std::vector<std::vector<Z3i::Point> > BenchInfo::shapes
inlinestatic

Definition at line 22 of file benchmarkDigitalSetByOctree.cpp.

Referenced by BenchInfo().


The documentation for this struct was generated from the following file: