|
TTK
|
#include <PDBarycenter.h>
Public Types | |
| using | KDT = PersistenceDiagramAuction::KDT |
| using | KDTreePair = std::pair<typename KDT::KDTreeRoot, typename KDT::KDTreeMap> |
Public Member Functions | |
| PDBarycenter () | |
| ~PDBarycenter () override=default | |
| std::vector< std::vector< MatchingType > > | execute (DiagramType &barycenter) |
| std::vector< std::vector< MatchingType > > | executeMunkresBarycenter (DiagramType &barycenter) |
| std::vector< std::vector< MatchingType > > | executeAuctionBarycenter (DiagramType &barycenter) |
| std::vector< std::vector< MatchingType > > | executePartialBiddingBarycenter (DiagramType &barycenter) |
| void | setBidderDiagrams () |
| double | enrichCurrentBidderDiagrams (double previous_min_persistence, double min_persistence, std::vector< double > &initial_diagonal_prices, std::vector< double > &initial_off_diagonal_prices, int min_points_to_add, bool add_points_to_barycenter=true) |
| void | setInitialBarycenter (double min_persistence) |
| double | getMaxPersistence () |
| double | getLowestPersistence () |
| double | getMinimalPrice (int i) |
| KDTreePair | getKDTree () const |
| void | runMatching (double *total_cost, double epsilon, std::vector< int > &sizes, KDT &kdt, std::vector< KDT * > &correspondence_kdt_map, std::vector< double > *min_diag_price, std::vector< double > *min_price, std::vector< std::vector< MatchingType > > *all_matchings, bool use_kdt, bool actual_distance) |
| void | runMatchingAuction (double *total_cost, std::vector< int > &sizes, KDT &kdt, std::vector< KDT * > &correspondence_kdt_map, std::vector< double > *min_diag_price, std::vector< std::vector< MatchingType > > *all_matchings, bool use_kdt, bool actual_distance) |
| double | updateBarycenter (std::vector< std::vector< MatchingType > > &matchings) |
| double | computeRealCost () |
| bool | isPrecisionObjectiveMet (double, int) |
| bool | hasBarycenterConverged (std::vector< std::vector< MatchingType > > &matchings, std::vector< std::vector< MatchingType > > &previous_matchings) |
| std::vector< std::vector< MatchingType > > | correctMatchings (std::vector< std::vector< MatchingType > > &previous_matchings) |
| bool | is_matching_stable () |
| double | getEpsilon (double rho) |
| double | getRho (double epsilon) |
| void | setDeterministic (const bool deterministic) |
| void | setMethod (const int &method) |
| int | setDiagrams (std::vector< DiagramType > *data) |
| int | setNumberOfInputs (int numberOfInputs) |
| void | setWasserstein (const int &wasserstein) |
| void | setUseProgressive (const bool use_progressive) |
| void | setGeometricalFactor (const double geometrical_factor) |
| void | setLambda (const double lambda) |
| void | setCurrentBidders (std::vector< BidderDiagram > &diagrams) |
| void | setCurrentBarycenter (std::vector< GoodDiagram > &barycenters) |
| std::vector< BidderDiagram > & | getCurrentBidders () |
| std::vector< GoodDiagram > & | getCurrentBarycenter () |
| void | setReinitPrices (const bool reinit_prices) |
| void | setEpsilonDecreases (const bool epsilon_decreases) |
| void | setEarlyStoppage (const bool early_stoppage) |
| void | setDiagramType (const int &diagramType) |
| void | setNonMatchingWeight (double nonMatchingWeight) |
| double | getCost () |
| void | setDeltaLim (double delta_lim) |
Public Member Functions inherited from ttk::Debug | |
| Debug () | |
| ~Debug () override | |
| virtual int | setDebugLevel (const int &debugLevel) |
| int | setWrapper (const Wrapper *wrapper) override |
| int | printMsg (const std::string &msg, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| int | printMsg (const std::vector< std::string > &msgs, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| int | printErr (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const |
| int | printWrn (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const |
| int | printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const double &memory, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
| int | printMsg (const std::string &msg, const double &progress, const double &time, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
| int | printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
| int | printMsg (const std::string &msg, const double &progress, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
| int | printMsg (const std::string &msg, const double &progress, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| int | printMsg (const std::vector< std::vector< std::string > > &rows, const debug::Priority &priority=debug::Priority::INFO, const bool hasHeader=true, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| int | printMsg (const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const |
| int | printMsg (const debug::Separator &separator, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| int | printMsg (const std::string &msg, const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const |
| void | setDebugMsgPrefix (const std::string &prefix) |
Public Member Functions inherited from ttk::BaseClass | |
| BaseClass () | |
| virtual | ~BaseClass ()=default |
| int | getThreadNumber () const |
| virtual int | setThreadNumber (const int threadNumber) |
Additional Inherited Members | |
Protected Member Functions inherited from ttk::Debug | |
| int | printMsgInternal (const std::string &msg, const std::string &right, const std::string &filler, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| int | printMsgInternal (const std::string &msg, const debug::Priority &priority, const debug::LineMode &lineMode, std::ostream &stream=std::cout) const |
| int | welcomeMsg (std::ostream &stream) |
Static Protected Attributes inherited from ttk::Debug | |
| static COMMON_EXPORTS debug::LineMode | lastLineMode = ttk::debug::LineMode::NEW |
Related publication
"Progressive Wasserstein Barycenters of Persistence Diagrams"
Jules Vidal, Joseph Budin and Julien Tierny
Proc. of IEEE VIS 2019.
IEEE Transactions on Visualization and Computer Graphics, 2019.
Definition at line 25 of file PDBarycenter.h.
Definition at line 56 of file PDBarycenter.h.
| using ttk::PDBarycenter::KDTreePair = std::pair<typename KDT::KDTreeRoot, typename KDT::KDTreeMap> |
Definition at line 57 of file PDBarycenter.h.
|
inline |
Definition at line 28 of file PDBarycenter.h.
|
overridedefault |
| double ttk::PDBarycenter::computeRealCost | ( | ) |
Definition at line 720 of file PDBarycenter.cpp.
| std::vector< std::vector< ttk::MatchingType > > ttk::PDBarycenter::correctMatchings | ( | std::vector< std::vector< MatchingType > > & | previous_matchings | ) |
Definition at line 137 of file PDBarycenter.cpp.
| double ttk::PDBarycenter::enrichCurrentBidderDiagrams | ( | double | previous_min_persistence, |
| double | min_persistence, | ||
| std::vector< double > & | initial_diagonal_prices, | ||
| std::vector< double > & | initial_off_diagonal_prices, | ||
| int | min_points_to_add, | ||
| bool | add_points_to_barycenter = true ) |
Definition at line 397 of file PDBarycenter.cpp.
| std::vector< std::vector< ttk::MatchingType > > ttk::PDBarycenter::execute | ( | DiagramType & | barycenter | ) |
Definition at line 22 of file PDBarycenter.cpp.
| std::vector< std::vector< ttk::MatchingType > > ttk::PDBarycenter::executeAuctionBarycenter | ( | DiagramType & | barycenter | ) |
Definition at line 610 of file PDBarycenter.cpp.
| std::vector< std::vector< MatchingType > > ttk::PDBarycenter::executeMunkresBarycenter | ( | DiagramType & | barycenter | ) |
| std::vector< std::vector< MatchingType > > ttk::PDBarycenter::executePartialBiddingBarycenter | ( | DiagramType & | barycenter | ) |
|
inline |
Definition at line 185 of file PDBarycenter.h.
|
inline |
Definition at line 151 of file PDBarycenter.h.
|
inline |
Definition at line 147 of file PDBarycenter.h.
| double ttk::PDBarycenter::getEpsilon | ( | double | rho | ) |
Definition at line 366 of file PDBarycenter.cpp.
| ttk::PDBarycenter::KDTreePair ttk::PDBarycenter::getKDTree | ( | ) | const |
Definition at line 571 of file PDBarycenter.cpp.
| double ttk::PDBarycenter::getLowestPersistence | ( | ) |
Definition at line 521 of file PDBarycenter.cpp.
| double ttk::PDBarycenter::getMaxPersistence | ( | ) |
Definition at line 485 of file PDBarycenter.cpp.
| double ttk::PDBarycenter::getMinimalPrice | ( | int | i | ) |
Definition at line 501 of file PDBarycenter.cpp.
| double ttk::PDBarycenter::getRho | ( | double | epsilon | ) |
Definition at line 370 of file PDBarycenter.cpp.
| bool ttk::PDBarycenter::hasBarycenterConverged | ( | std::vector< std::vector< MatchingType > > & | matchings, |
| std::vector< std::vector< MatchingType > > & | previous_matchings ) |
Definition at line 116 of file PDBarycenter.cpp.
| bool ttk::PDBarycenter::is_matching_stable | ( | ) |
| bool ttk::PDBarycenter::isPrecisionObjectiveMet | ( | double | precision_objective, |
| int | mode ) |
Definition at line 735 of file PDBarycenter.cpp.
| void ttk::PDBarycenter::runMatching | ( | double * | total_cost, |
| double | epsilon, | ||
| std::vector< int > & | sizes, | ||
| KDT & | kdt, | ||
| std::vector< KDT * > & | correspondence_kdt_map, | ||
| std::vector< double > * | min_diag_price, | ||
| std::vector< double > * | min_price, | ||
| std::vector< std::vector< MatchingType > > * | all_matchings, | ||
| bool | use_kdt, | ||
| bool | actual_distance ) |
Definition at line 26 of file PDBarycenter.cpp.
| void ttk::PDBarycenter::runMatchingAuction | ( | double * | total_cost, |
| std::vector< int > & | sizes, | ||
| KDT & | kdt, | ||
| std::vector< KDT * > & | correspondence_kdt_map, | ||
| std::vector< double > * | min_diag_price, | ||
| std::vector< std::vector< MatchingType > > * | all_matchings, | ||
| bool | use_kdt, | ||
| bool | actual_distance ) |
Definition at line 80 of file PDBarycenter.cpp.
| void ttk::PDBarycenter::setBidderDiagrams | ( | ) |
Definition at line 374 of file PDBarycenter.cpp.
|
inline |
Definition at line 143 of file PDBarycenter.h.
|
inline |
Definition at line 139 of file PDBarycenter.h.
|
inline |
Definition at line 189 of file PDBarycenter.h.
|
inline |
Definition at line 96 of file PDBarycenter.h.
|
inline |
Definition at line 111 of file PDBarycenter.h.
|
inline |
Definition at line 167 of file PDBarycenter.h.
|
inline |
Definition at line 163 of file PDBarycenter.h.
|
inline |
Definition at line 159 of file PDBarycenter.h.
|
inline |
Definition at line 131 of file PDBarycenter.h.
| void ttk::PDBarycenter::setInitialBarycenter | ( | double | min_persistence | ) |
Definition at line 540 of file PDBarycenter.cpp.
|
inline |
Definition at line 135 of file PDBarycenter.h.
|
inline |
Definition at line 100 of file PDBarycenter.h.
|
inline |
Definition at line 181 of file PDBarycenter.h.
|
inline |
Definition at line 116 of file PDBarycenter.h.
|
inline |
Definition at line 155 of file PDBarycenter.h.
|
inline |
Definition at line 127 of file PDBarycenter.h.
|
inline |
Definition at line 123 of file PDBarycenter.h.
| double ttk::PDBarycenter::updateBarycenter | ( | std::vector< std::vector< MatchingType > > & | matchings | ) |
Definition at line 165 of file PDBarycenter.cpp.
|
protected |
Definition at line 227 of file PDBarycenter.h.
|
protected |
Definition at line 228 of file PDBarycenter.h.
|
protected |
Definition at line 232 of file PDBarycenter.h.
|
protected |
Definition at line 229 of file PDBarycenter.h.
|
protected |
Definition at line 218 of file PDBarycenter.h.
|
protected |
Definition at line 230 of file PDBarycenter.h.
|
protected |
Definition at line 231 of file PDBarycenter.h.
|
protected |
Definition at line 197 of file PDBarycenter.h.
|
protected |
Definition at line 200 of file PDBarycenter.h.
|
protected |
Definition at line 215 of file PDBarycenter.h.
|
protected |
Definition at line 236 of file PDBarycenter.h.
|
protected |
Definition at line 235 of file PDBarycenter.h.
|
protected |
Definition at line 221 of file PDBarycenter.h.
|
protected |
Definition at line 206 of file PDBarycenter.h.
|
protected |
Definition at line 222 of file PDBarycenter.h.
|
protected |
Definition at line 213 of file PDBarycenter.h.
|
protected |
Definition at line 202 of file PDBarycenter.h.
|
protected |
Definition at line 204 of file PDBarycenter.h.
|
protected |
Definition at line 216 of file PDBarycenter.h.
|
protected |
Definition at line 217 of file PDBarycenter.h.
|
protected |
Definition at line 219 of file PDBarycenter.h.
|
protected |
Definition at line 224 of file PDBarycenter.h.
|
protected |
Definition at line 225 of file PDBarycenter.h.
|
protected |
Definition at line 195 of file PDBarycenter.h.
|
protected |
Definition at line 234 of file PDBarycenter.h.
|
protected |
Definition at line 220 of file PDBarycenter.h.
|
protected |
Definition at line 203 of file PDBarycenter.h.