![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
#include <CutPursuit.h>


Public Member Functions | |
| CutPursuit (uint32_t nbVertex=1) | |
| std::pair< std::vector< T >, std::vector< T > > | run () |
| virtual size_t | split () |
| virtual std::pair< T, T > | compute_energy () |
| virtual std::pair< std::vector< T >, T > | compute_value (const uint32_t &ind_com) |
| virtual std::pair< std::vector< T >, T > | compute_merge_gain (const VertexDescriptor< T > &comp1, const VertexDescriptor< T > &comp2) |
| void | initialize () |
| void | compute_reduced_value () |
| size_t | activate_edges (bool allows_saturation=true) |
| void | reduce () |
| void | compute_connected_components () |
| std::vector< VertexDescriptor< T > > | connected_comp_from_root (const VertexDescriptor< T > &root, const size_t &size_comp, std::vector< bool > &vertices_seen, std::vector< bool > &edges_seen) |
| void | compute_reduced_graph () |
| uint32_t | merge (bool is_cutoff) |
| void | cutoff () |
| void | saturateComponent (const uint32_t &ind_com) |
Public Attributes | |
| Graph< T > | main_graph |
| Graph< T > | reduced_graph |
| std::vector< std::vector< VertexDescriptor< T > > > | components |
| std::vector< VertexDescriptor< T > > | root_vertex |
| std::vector< bool > | saturated_components |
| std::vector< std::vector< EdgeDescriptor > > | borders |
| VertexDescriptor< T > | source |
| VertexDescriptor< T > | sink |
| uint32_t | dim |
| uint32_t | nVertex |
| uint32_t | nEdge |
| CP::VertexIterator< T > | lastIterator |
| CPparameter< T > | parameter |
Definition at line 44 of file CutPursuit.h.
|
inline |
Definition at line 67 of file CutPursuit.h.
References CP::CPparameter< T >::backward_step, CP::CutPursuit< T >::components, CP::CPparameter< T >::cutoff, CP::CPparameter< T >::fidelity, CP::CPparameter< T >::flow_steps, CP::CPparameter< T >::kmeans_ite, CP::CPparameter< T >::kmeans_resampling, L2, CP::CPparameter< T >::max_ite_main, CP::CPparameter< T >::parallel, CP::CPparameter< T >::reg_strenth, CP::CutPursuit< T >::root_vertex, CP::CutPursuit< T >::saturated_components, CP::CPparameter< T >::smoothing, CP::CPparameter< T >::stopping_ratio, CP::CPparameter< T >::verbose, and CP::CPparameter< T >::weight_decay.
|
inline |
Definition at line 298 of file CutPursuit.h.
References CP::CutPursuit< T >::components, CP::CutPursuit< T >::saturateComponent(), and CP::CutPursuit< T >::saturated_components.
Referenced by CP::CutPursuit_KL< T >::split(), CP::CutPursuit_L2< T >::split(), CP::CutPursuit_Linear< T >::split(), and CP::CutPursuit_SPG< T >::split().
|
inline |
Definition at line 405 of file CutPursuit.h.
References CP::CutPursuit< T >::components, CP::CutPursuit< T >::connected_comp_from_root(), CP::CutPursuit< T >::lastIterator, CP::CutPursuit< T >::root_vertex, CP::CutPursuit< T >::saturated_components, and vertex_index.
Referenced by CP::CutPursuit< T >::reduce().
|
inlinevirtual |
Reimplemented in CP::CutPursuit_SPG< T >, CP::CutPursuit_Linear< T >, CP::CutPursuit_L2< T >, and CP::CutPursuit_KL< T >.
Definition at line 204 of file CutPursuit.h.
Referenced by CP::CutPursuit< T >::run().
|
inlinevirtual |
Reimplemented in CP::CutPursuit_SPG< T >, CP::CutPursuit_Linear< T >, CP::CutPursuit_L2< T >, and CP::CutPursuit_KL< T >.
Definition at line 223 of file CutPursuit.h.
Referenced by CP::CutPursuit< T >::merge().
|
inline |
Definition at line 541 of file CutPursuit.h.
References CP::CutPursuit< T >::borders, CP::CutPursuit< T >::components, CP::CutPursuit< T >::compute_value(), CP::CutPursuit< T >::dim, max(), and min().
Referenced by CP::cut_pursuit(), CP::CutPursuit< T >::cutoff(), and CP::CutPursuit< T >::reduce().
|
inline |
Definition at line 287 of file CutPursuit.h.
References CP::CutPursuit< T >::components, and CP::CutPursuit< T >::compute_value().
Referenced by CP::CutPursuit< T >::reduce().
|
inlinevirtual |
Reimplemented in CP::CutPursuit_SPG< T >, CP::CutPursuit_L2< T >, CP::CutPursuit_Linear< T >, and CP::CutPursuit_KL< T >.
Definition at line 213 of file CutPursuit.h.
Referenced by CP::CutPursuit< T >::compute_reduced_graph(), CP::CutPursuit< T >::compute_reduced_value(), and CP::CutPursuit< T >::initialize().
|
inline |
Definition at line 468 of file CutPursuit.h.
References vertex_index.
Referenced by CP::CutPursuit< T >::compute_connected_components().
|
inline |
Definition at line 817 of file CutPursuit.h.
References CP::CutPursuit< T >::compute_reduced_graph(), and CP::CutPursuit< T >::merge().
Referenced by CP::CutPursuit< T >::run().
|
inline |
Definition at line 239 of file CutPursuit.h.
References CP::CutPursuit< T >::components, CP::CutPursuit< T >::compute_value(), CP::CutPursuit< T >::nVertex, and CP::CutPursuit< T >::root_vertex.
Referenced by CP::CutPursuit< T >::run().
|
inline |
Definition at line 646 of file CutPursuit.h.
References ComponentsFusion< T >::border_index, CP::CutPursuit< T >::borders, ComponentsFusion< T >::comp1, ComponentsFusion< T >::comp2, CP::CutPursuit< T >::components, CP::CutPursuit< T >::compute_merge_gain(), CP::CPparameter< T >::cutoff, ComponentsFusion< T >::merge_gain, ComponentsFusion< T >::merged_value, CP::CPparameter< T >::reg_strenth, CP::CutPursuit< T >::root_vertex, CP::CutPursuit< T >::saturated_components, and vertex_index.
Referenced by CP::CutPursuit< T >::cutoff(), and CP::CutPursuit< T >::reduce().
|
inline |
Definition at line 387 of file CutPursuit.h.
References CP::CPparameter< T >::backward_step, CP::CutPursuit< T >::compute_connected_components(), CP::CutPursuit< T >::compute_reduced_graph(), CP::CutPursuit< T >::compute_reduced_value(), and CP::CutPursuit< T >::merge().
Referenced by CP::CutPursuit< T >::run().
|
inline |
Definition at line 94 of file CutPursuit.h.
References CP::CutPursuit< T >::components, CP::CutPursuit< T >::compute_energy(), CP::CPparameter< T >::cutoff, CP::CutPursuit< T >::cutoff(), QtCompat::endl(), CP::CPparameter< T >::fidelity, CP::CutPursuit< T >::initialize(), KL, L2, linear, CP::CPparameter< T >::max_ite_main, CP::CutPursuit< T >::reduce(), SPG, CP::CutPursuit< T >::split(), TimeStack::tic(), TimeStack::toc(), TimeStack::tocDouble(), and CP::CPparameter< T >::verbose.
Referenced by CP::cut_pursuit().
|
inline |
Definition at line 835 of file CutPursuit.h.
References CP::CutPursuit< T >::components, and CP::CutPursuit< T >::saturated_components.
Referenced by CP::CutPursuit< T >::activate_edges(), CP::CutPursuit_L2< T >::compute_center(), and CP::CutPursuit_KL< T >::compute_centers().
|
inlinevirtual |
Reimplemented in CP::CutPursuit_SPG< T >, CP::CutPursuit_Linear< T >, CP::CutPursuit_L2< T >, and CP::CutPursuit_KL< T >.
Definition at line 195 of file CutPursuit.h.
Referenced by CP::CutPursuit< T >::run().
| std::vector<std::vector<EdgeDescriptor> > CP::CutPursuit< T >::borders |
Definition at line 55 of file CutPursuit.h.
Referenced by CP::CutPursuit< T >::compute_reduced_graph(), and CP::CutPursuit< T >::merge().
| std::vector<std::vector<VertexDescriptor<T> > > CP::CutPursuit< T >::components |
Definition at line 49 of file CutPursuit.h.
Referenced by CP::CutPursuit< T >::activate_edges(), CP::CutPursuit_L2< T >::compute_center(), CP::CutPursuit_SPG< T >::compute_center(), CP::CutPursuit_KL< T >::compute_centers(), CP::CutPursuit< T >::compute_connected_components(), CP::CutPursuit_Linear< T >::compute_corners(), CP::CutPursuit< T >::compute_reduced_graph(), CP::CutPursuit< T >::compute_reduced_value(), CP::CutPursuit_KL< T >::compute_value(), CP::CutPursuit_Linear< T >::compute_value(), CP::CutPursuit_L2< T >::compute_value(), CP::CutPursuit_SPG< T >::compute_value(), CP::cut_pursuit(), CP::CutPursuit< T >::CutPursuit(), CP::CutPursuit_Linear< T >::find_corner(), CP::CutPursuit_KL< T >::init_labels(), CP::CutPursuit_L2< T >::init_labels(), CP::CutPursuit_SPG< T >::init_labels(), CP::CutPursuit< T >::initialize(), CP::CutPursuit< T >::merge(), CP::CutPursuit< T >::run(), CP::CutPursuit< T >::saturateComponent(), CP::CutPursuit_Linear< T >::set_capacities(), CP::CutPursuit_KL< T >::set_capacities(), CP::CutPursuit_L2< T >::set_capacities(), CP::CutPursuit_SPG< T >::set_capacities(), CP::CutPursuit_KL< T >::split(), CP::CutPursuit_L2< T >::split(), CP::CutPursuit_Linear< T >::split(), and CP::CutPursuit_SPG< T >::split().
| uint32_t CP::CutPursuit< T >::dim |
Definition at line 59 of file CutPursuit.h.
Referenced by CP::CutPursuit_L2< T >::compute_center(), CP::CutPursuit_SPG< T >::compute_center(), CP::CutPursuit_KL< T >::compute_centers(), CP::CutPursuit_KL< T >::compute_energy(), CP::CutPursuit_L2< T >::compute_energy(), CP::CutPursuit_Linear< T >::compute_energy(), CP::CutPursuit_SPG< T >::compute_energy(), CP::CutPursuit_KL< T >::compute_merge_gain(), CP::CutPursuit_L2< T >::compute_merge_gain(), CP::CutPursuit_Linear< T >::compute_merge_gain(), CP::CutPursuit_SPG< T >::compute_merge_gain(), CP::CutPursuit< T >::compute_reduced_graph(), CP::CutPursuit_KL< T >::compute_value(), CP::CutPursuit_Linear< T >::compute_value(), CP::CutPursuit_L2< T >::compute_value(), CP::CutPursuit_SPG< T >::compute_value(), CP::CutPursuit_Linear< T >::find_corner(), CP::CutPursuit_KL< T >::init_labels(), CP::CutPursuit_L2< T >::init_labels(), CP::CutPursuit_SPG< T >::init_labels(), CP::CutPursuit_KL< T >::set_capacities(), CP::CutPursuit_L2< T >::set_capacities(), CP::CutPursuit_SPG< T >::set_capacities(), CP::set_up_CP(), CP::CutPursuit_KL< T >::split(), CP::CutPursuit_L2< T >::split(), and CP::CutPursuit_SPG< T >::split().
| CP::VertexIterator<T> CP::CutPursuit< T >::lastIterator |
Definition at line 63 of file CutPursuit.h.
Referenced by CP::CutPursuit< T >::compute_connected_components(), CP::CutPursuit_KL< T >::compute_energy(), and CP::CutPursuit_Linear< T >::compute_energy().
| Graph<T> CP::CutPursuit< T >::main_graph |
Definition at line 45 of file CutPursuit.h.
Referenced by CP::CutPursuit_L2< T >::compute_center(), CP::CutPursuit_SPG< T >::compute_center(), CP::CutPursuit_KL< T >::compute_centers(), CP::CutPursuit_KL< T >::compute_energy(), CP::CutPursuit_L2< T >::compute_energy(), CP::CutPursuit_Linear< T >::compute_energy(), CP::CutPursuit_SPG< T >::compute_energy(), CP::CutPursuit_KL< T >::compute_value(), CP::CutPursuit_Linear< T >::compute_value(), CP::CutPursuit_L2< T >::compute_value(), CP::CutPursuit_SPG< T >::compute_value(), CP::cut_pursuit(), CP::CutPursuit_Linear< T >::find_corner(), CP::CutPursuit_KL< T >::init_labels(), CP::CutPursuit_L2< T >::init_labels(), CP::CutPursuit_SPG< T >::init_labels(), CP::CutPursuit_Linear< T >::set_capacities(), CP::CutPursuit_KL< T >::set_capacities(), CP::CutPursuit_L2< T >::set_capacities(), CP::CutPursuit_SPG< T >::set_capacities(), CP::set_up_CP(), CP::CutPursuit_KL< T >::split(), CP::CutPursuit_L2< T >::split(), CP::CutPursuit_Linear< T >::split(), and CP::CutPursuit_SPG< T >::split().
| uint32_t CP::CutPursuit< T >::nEdge |
Definition at line 61 of file CutPursuit.h.
| uint32_t CP::CutPursuit< T >::nVertex |
Definition at line 60 of file CutPursuit.h.
Referenced by CP::CutPursuit_L2< T >::compute_energy(), CP::CutPursuit_SPG< T >::compute_energy(), CP::CutPursuit< T >::initialize(), CP::CutPursuit_KL< T >::split(), CP::CutPursuit_L2< T >::split(), and CP::CutPursuit_SPG< T >::split().
| CPparameter<T> CP::CutPursuit< T >::parameter |
Definition at line 65 of file CutPursuit.h.
Referenced by CP::CutPursuit_KL< T >::compute_energy(), CP::CutPursuit_KL< T >::compute_merge_gain(), CP::create_CP(), CP::cut_pursuit(), CP::CutPursuit_KL< T >::init_labels(), CP::CutPursuit_L2< T >::init_labels(), CP::CutPursuit_SPG< T >::init_labels(), CP::CutPursuit_KL< T >::set_capacities(), CP::set_speed(), CP::CutPursuit_KL< T >::split(), CP::CutPursuit_L2< T >::split(), and CP::CutPursuit_SPG< T >::split().
| Graph<T> CP::CutPursuit< T >::reduced_graph |
Definition at line 46 of file CutPursuit.h.
Referenced by CP::CutPursuit_KL< T >::compute_merge_gain(), CP::CutPursuit_L2< T >::compute_merge_gain(), CP::CutPursuit_Linear< T >::compute_merge_gain(), CP::CutPursuit_SPG< T >::compute_merge_gain(), and CP::cut_pursuit().
| std::vector<VertexDescriptor<T> > CP::CutPursuit< T >::root_vertex |
Definition at line 51 of file CutPursuit.h.
Referenced by CP::CutPursuit< T >::compute_connected_components(), CP::CutPursuit< T >::CutPursuit(), CP::CutPursuit< T >::initialize(), and CP::CutPursuit< T >::merge().
| std::vector<bool> CP::CutPursuit< T >::saturated_components |
Definition at line 53 of file CutPursuit.h.
Referenced by CP::CutPursuit< T >::activate_edges(), CP::CutPursuit_KL< T >::compute_centers(), CP::CutPursuit_L2< T >::compute_centers(), CP::CutPursuit_SPG< T >::compute_centers(), CP::CutPursuit< T >::compute_connected_components(), CP::CutPursuit_Linear< T >::compute_corners(), CP::CutPursuit< T >::CutPursuit(), CP::CutPursuit_KL< T >::init_labels(), CP::CutPursuit_L2< T >::init_labels(), CP::CutPursuit_SPG< T >::init_labels(), CP::CutPursuit< T >::merge(), CP::CutPursuit< T >::saturateComponent(), CP::CutPursuit_Linear< T >::set_capacities(), CP::CutPursuit_KL< T >::set_capacities(), CP::CutPursuit_L2< T >::set_capacities(), CP::CutPursuit_SPG< T >::set_capacities(), CP::CutPursuit_KL< T >::split(), CP::CutPursuit_L2< T >::split(), and CP::CutPursuit_SPG< T >::split().
| VertexDescriptor<T> CP::CutPursuit< T >::sink |
Definition at line 58 of file CutPursuit.h.
Referenced by CP::CutPursuit_Linear< T >::set_capacities(), CP::CutPursuit_KL< T >::set_capacities(), CP::CutPursuit_L2< T >::set_capacities(), CP::CutPursuit_SPG< T >::set_capacities(), CP::CutPursuit_KL< T >::split(), CP::CutPursuit_L2< T >::split(), CP::CutPursuit_Linear< T >::split(), and CP::CutPursuit_SPG< T >::split().
| VertexDescriptor<T> CP::CutPursuit< T >::source |
Definition at line 57 of file CutPursuit.h.
Referenced by CP::CutPursuit_Linear< T >::set_capacities(), CP::CutPursuit_KL< T >::set_capacities(), CP::CutPursuit_L2< T >::set_capacities(), CP::CutPursuit_SPG< T >::set_capacities(), CP::CutPursuit_KL< T >::split(), CP::CutPursuit_L2< T >::split(), CP::CutPursuit_Linear< T >::split(), and CP::CutPursuit_SPG< T >::split().