|
| GCoptimizationGeneralGraph (SiteID num_sites, LabelID num_labels) |
|
virtual | ~GCoptimizationGeneralGraph () |
|
void | setNeighbors (SiteID site1, SiteID site2, EnergyTermType weight=1) |
|
void | setAllNeighbors (SiteID *numNeighbors, SiteID **neighborsIndexes, EnergyTermType **neighborsWeights) |
|
| GCoptimization (SiteID num_sites, LabelID num_labels) |
|
virtual | ~GCoptimization () |
|
EnergyType | expansion (int max_num_iterations=-1) |
|
bool | alpha_expansion (LabelID alpha_label) |
|
EnergyType | swap (int max_num_iterations=-1) |
|
void | alpha_beta_swap (LabelID alpha_label, LabelID beta_label) |
|
void | alpha_beta_swap (LabelID alpha_label, LabelID beta_label, SiteID *alphaSites, SiteID alpha_size, SiteID *betaSites, SiteID beta_size) |
|
void | setDataCost (DataCostFn fn) |
|
void | setDataCost (DataCostFnExtra fn, void *extraData) |
|
void | setDataCost (EnergyTermType *dataArray) |
|
void | setDataCost (SiteID s, LabelID l, EnergyTermType e) |
|
void | setDataCostFunctor (DataCostFunctor *f) |
|
void | setDataCost (LabelID l, SparseDataCost *costs, SiteID count) |
|
void | setSmoothCost (SmoothCostFn fn) |
|
void | setSmoothCost (SmoothCostFnExtra fn, void *extraData) |
|
void | setSmoothCost (LabelID l1, LabelID l2, EnergyTermType e) |
|
void | setSmoothCost (EnergyTermType *smoothArray) |
|
void | setSmoothCostFunctor (SmoothCostFunctor *f) |
|
void | setLabelCost (EnergyTermType cost) |
|
void | setLabelCost (EnergyTermType *costArray) |
|
void | setLabelSubsetCost (LabelID *labels, LabelID numLabels, EnergyTermType cost) |
|
LabelID | whatLabel (SiteID site) |
|
void | whatLabel (SiteID start, SiteID count, LabelID *labeling) |
|
void | setLabel (SiteID site, LabelID label) |
|
void | setLabelOrder (bool isRandom) |
|
void | setLabelOrder (const LabelID *order, LabelID size) |
|
EnergyType | compute_energy () |
|
EnergyType | giveDataEnergy () |
|
EnergyType | giveSmoothEnergy () |
|
EnergyType | giveLabelEnergy () |
|
SiteID | numSites () const |
|
LabelID | numLabels () const |
|
void | setVerbosity (int level) |
|
|
virtual void | giveNeighborInfo (SiteID site, SiteID *numSites, SiteID **neighbors, EnergyTermType **weights) |
|
virtual void | finalizeNeighbors () |
|
virtual void | giveNeighborInfo (SiteID site, SiteID *numSites, SiteID **neighbors, EnergyTermType **weights)=0 |
|
template<typename DataCostT > |
SiteID | queryActiveSitesExpansion (LabelID alpha_label, SiteID *activeSites) |
|
template<typename DataCostT > |
void | setupDataCostsExpansion (SiteID size, LabelID alpha_label, EnergyT *e, SiteID *activeSites) |
|
template<typename DataCostT > |
void | setupDataCostsSwap (SiteID size, LabelID alpha_label, LabelID beta_label, EnergyT *e, SiteID *activeSites) |
|
template<typename SmoothCostT > |
void | setupSmoothCostsExpansion (SiteID size, LabelID alpha_label, EnergyT *e, SiteID *activeSites) |
|
template<typename SmoothCostT > |
void | setupSmoothCostsSwap (SiteID size, LabelID alpha_label, LabelID beta_label, EnergyT *e, SiteID *activeSites) |
|
template<typename DataCostT > |
void | applyNewLabeling (EnergyT *e, SiteID *activeSites, SiteID size, LabelID alpha_label) |
|
template<typename DataCostT > |
void | updateLabelingDataCosts () |
|
template<typename UserFunctor > |
void | specializeDataCostFunctor (const UserFunctor f) |
|
template<typename UserFunctor > |
void | specializeSmoothCostFunctor (const UserFunctor f) |
|
EnergyType | setupLabelCostsExpansion (SiteID size, LabelID alpha_label, EnergyT *e, SiteID *activeSites) |
|
void | updateLabelingInfo (bool updateCounts=true, bool updateActive=true, bool updateCosts=true) |
|
void | addterm1_checked (EnergyT *e, VarID i, EnergyTermType e0, EnergyTermType e1) |
|
void | addterm1_checked (EnergyT *e, VarID i, EnergyTermType e0, EnergyTermType e1, EnergyTermType w) |
|
void | addterm2_checked (EnergyT *e, VarID i, VarID j, EnergyTermType e00, EnergyTermType e01, EnergyTermType e10, EnergyTermType e11, EnergyTermType w) |
|
template<typename SmoothCostT > |
EnergyType | giveSmoothEnergyInternal () |
|
|
typedef long long | EnergyType |
|
typedef int | EnergyTermType |
|
typedef Energy< EnergyTermType, EnergyTermType, EnergyType > | EnergyT |
|
typedef EnergyT::Var | VarID |
|
typedef int | LabelID |
|
typedef VarID | SiteID |
|
typedef EnergyTermType(* | SmoothCostFn) (SiteID s1, SiteID s2, LabelID l1, LabelID l2) |
|
typedef EnergyTermType(* | DataCostFn) (SiteID s, LabelID l) |
|
typedef EnergyTermType(* | SmoothCostFnExtra) (SiteID s1, SiteID s2, LabelID l1, LabelID l2, void *) |
|
typedef EnergyTermType(* | DataCostFnExtra) (SiteID s, LabelID l, void *) |
|
template<typename Functor > |
static void | deleteFunctor (void *f) |
|
static void | handleError (const char *message) |
|
static void | checkInterrupt () |
|
LabelID | m_num_labels |
|
SiteID | m_num_sites |
|
LabelID * | m_labeling |
|
SiteID * | m_lookupSiteVar |
|
LabelID * | m_labelTable |
|
int | m_stepsThisCycle |
|
int | m_stepsThisCycleTotal |
|
int | m_random_label_order |
|
EnergyTermType * | m_datacostIndividual |
|
EnergyTermType * | m_smoothcostIndividual |
|
EnergyTermType * | m_labelingDataCosts |
|
SiteID * | m_labelCounts |
|
SiteID * | m_activeLabelCounts |
|
LabelCost * | m_labelcostsAll |
|
LabelCostIter ** | m_labelcostsByLabel |
|
int | m_labelcostCount |
|
bool | m_labelingInfoDirty |
|
int | m_verbosity |
|
void * | m_datacostFn |
|
void * | m_smoothcostFn |
|
EnergyType | m_beforeExpansionEnergy |
|
SiteID * | m_numNeighbors |
|
SiteID | m_numNeighborsTotal |
|
EnergyType(GCoptimization::* | m_giveSmoothEnergyInternal )() |
|
SiteID(GCoptimization::* | m_queryActiveSitesExpansion )(LabelID, SiteID *) |
|
void(GCoptimization::* | m_setupDataCostsExpansion )(SiteID, LabelID, EnergyT *, SiteID *) |
|
void(GCoptimization::* | m_setupSmoothCostsExpansion )(SiteID, LabelID, EnergyT *, SiteID *) |
|
void(GCoptimization::* | m_setupDataCostsSwap )(SiteID, LabelID, LabelID, EnergyT *, SiteID *) |
|
void(GCoptimization::* | m_setupSmoothCostsSwap )(SiteID, LabelID, LabelID, EnergyT *, SiteID *) |
|
void(GCoptimization::* | m_applyNewLabeling )(EnergyT *, SiteID *, SiteID, LabelID) |
|
void(GCoptimization::* | m_updateLabelingDataCosts )() |
|
void(* | m_datacostFnDelete )(void *f) |
|
void(* | m_smoothcostFnDelete )(void *f) |
|
bool(GCoptimization::* | m_solveSpecialCases )(EnergyType &) |
|