Read@CVL
|
#include <GCoptimization.h>
Classes | |
struct | DataCostFnFromArray |
struct | DataCostFnFromFunction |
struct | DataCostFnFromFunctionExtra |
class | DataCostFnSparse |
struct | DataCostFunctor |
class | GreedyIter< GCoptimization::DataCostFnSparse > |
struct | LabelCost |
struct | LabelCostIter |
struct | SmoothCostFnFromArray |
struct | SmoothCostFnFromFunction |
struct | SmoothCostFnFromFunctionExtra |
struct | SmoothCostFnPotts |
struct | SmoothCostFunctor |
struct | SparseDataCost |
Public Types | |
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 *) |
Protected Member Functions | |
virtual void | giveNeighborInfo (SiteID site, SiteID *numSites, SiteID **neighbors, EnergyTermType **weights)=0 |
virtual void | finalizeNeighbors ()=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 () |
Static Protected Member Functions | |
template<typename Functor > | |
static void | deleteFunctor (void *f) |
static void | handleError (const char *message) |
static void | checkInterrupt () |
typedef EnergyTermType(* GCoptimization::DataCostFn) (SiteID s, LabelID l) |
typedef EnergyTermType(* GCoptimization::DataCostFnExtra) (SiteID s, LabelID l, void *) |
typedef int GCoptimization::EnergyTermType |
typedef long long GCoptimization::EnergyType |
typedef int GCoptimization::LabelID |
typedef VarID GCoptimization::SiteID |
typedef EnergyTermType(* GCoptimization::SmoothCostFn) (SiteID s1, SiteID s2, LabelID l1, LabelID l2) |
typedef EnergyTermType(* GCoptimization::SmoothCostFnExtra) (SiteID s1, SiteID s2, LabelID l1, LabelID l2, void *) |
typedef EnergyT::Var GCoptimization::VarID |
|
virtual |
|
protected |
|
protected |
|
protected |
void GCoptimization::alpha_beta_swap | ( | LabelID | alpha_label, |
LabelID | beta_label, | ||
SiteID * | alphaSites, | ||
SiteID | alpha_size, | ||
SiteID * | betaSites, | ||
SiteID | beta_size | ||
) |
bool GCoptimization::alpha_expansion | ( | LabelID | alpha_label | ) |
|
protected |
|
staticprotected |
GCoptimization::EnergyType GCoptimization::compute_energy | ( | ) |
|
inlinestaticprotected |
GCoptimization::EnergyType GCoptimization::expansion | ( | int | max_num_iterations = -1 | ) |
|
protectedpure virtual |
Implemented in GCoptimizationGeneralGraph, and GCoptimizationGridGraph.
GCoptimization::EnergyType GCoptimization::giveDataEnergy | ( | ) |
GCoptimization::EnergyType GCoptimization::giveLabelEnergy | ( | ) |
|
protectedpure virtual |
Implemented in GCoptimizationGridGraph.
GCoptimization::EnergyType GCoptimization::giveSmoothEnergy | ( | ) |
|
protected |
|
staticprotected |
OLGA_INLINE GCoptimization::LabelID GCoptimization::numLabels | ( | ) | const |
OLGA_INLINE GCoptimization::SiteID GCoptimization::numSites | ( | ) | const |
|
protected |
void GCoptimization::setDataCost | ( | DataCostFn | fn | ) |
void GCoptimization::setDataCost | ( | DataCostFnExtra | fn, |
void * | extraData | ||
) |
void GCoptimization::setDataCost | ( | EnergyTermType * | dataArray | ) |
void GCoptimization::setDataCost | ( | SiteID | s, |
LabelID | l, | ||
EnergyTermType | e | ||
) |
void GCoptimization::setDataCost | ( | LabelID | l, |
SparseDataCost * | costs, | ||
SiteID | count | ||
) |
void GCoptimization::setDataCostFunctor | ( | DataCostFunctor * | f | ) |
OLGA_INLINE void GCoptimization::setLabel | ( | SiteID | site, |
LabelID | label | ||
) |
void GCoptimization::setLabelCost | ( | EnergyTermType | cost | ) |
void GCoptimization::setLabelCost | ( | EnergyTermType * | costArray | ) |
void GCoptimization::setLabelOrder | ( | bool | isRandom | ) |
void GCoptimization::setLabelSubsetCost | ( | LabelID * | labels, |
LabelID | numLabels, | ||
EnergyTermType | cost | ||
) |
void GCoptimization::setSmoothCost | ( | SmoothCostFn | fn | ) |
void GCoptimization::setSmoothCost | ( | SmoothCostFnExtra | fn, |
void * | extraData | ||
) |
void GCoptimization::setSmoothCost | ( | LabelID | l1, |
LabelID | l2, | ||
EnergyTermType | e | ||
) |
void GCoptimization::setSmoothCost | ( | EnergyTermType * | smoothArray | ) |
void GCoptimization::setSmoothCostFunctor | ( | SmoothCostFunctor * | f | ) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
inline |
|
protected |
|
protected |
GCoptimization::EnergyType GCoptimization::swap | ( | int | max_num_iterations = -1 | ) |
|
protected |
|
protected |
OLGA_INLINE GCoptimization::LabelID GCoptimization::whatLabel | ( | SiteID | site | ) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |