Darwin  1.10(beta)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Member Functions | List of all members
drwnPixelSegCRFInference Class Reference

Alpha-expansion inference for a pixel-level CRF model with unary, contrast-dependent pairwise, and custom higher-order terms. More...

Inheritance diagram for drwnPixelSegCRFInference:
drwnRobustPottsCRFInference drwnWeightedRobustPottsCRFInference

Public Member Functions

 drwnPixelSegCRFInference ()
 default constructor
 
virtual ~drwnPixelSegCRFInference ()
 destructor
 
void alphaExpansion (drwnSegImageInstance *instance, double contrastStrength=0.0, double higherOrderStrength=0.0, double longRangeStrength=0.0) const
 Alpha-expansion inference given instance unary terms, pairwise strength and higher-order strength (modifies instance). When constructing graphs the S set (nomially 1) takes value and the T set (nominally 0) takes each variable's previous value.
 
double energy (const drwnSegImageInstance *instance, double contrastStrength=0.0, double higherOrderStrength=0.0, double longRangeStrength=0.0) const
 Return the energy of a given instance labeling.
 

Protected Member Functions

virtual void addAuxiliaryVariables (drwnMaxFlow *g, const drwnSegImageInstance *instance) const
 adds node to the graph for any auxiliary variables (e.g., as required for higher-order terms)
 
double addUnaryTerms (drwnMaxFlow *g, const drwnSegImageInstance *instance, int alpha, int varOffset=0) const
 add unary potentials to max-flow graph for a given alpha-expansion move and return constant energy component
 
double addPairwiseContrastTerms (drwnMaxFlow *g, double contrastStrength, const drwnSegImageInstance *instance, int alpha, int varOffset=0) const
 add pairwise contrast potentials to max-flow graph for a given alpha-expansion move and return constant energy component
 
double addLongRangePairwiseTerms (drwnMaxFlow *g, double longRangeStrength, const drwnSegImageInstance *instance, int alpha, int varOffset=0) const
 add long-range pairwise potentials to max-flow graph for a given alpha-expansion move and return constant energy component
 
virtual double addHigherOrderTerms (drwnMaxFlow *g, double higherOrderStrength, const drwnSegImageInstance *instance, int alpha, int varOffset=0) const
 add higher-order potentials to max-flow graph for a given alpha-expansion move and return constant energy component
 
double computeUnaryEnergy (const drwnSegImageInstance *instance) const
 compute energy contribution from unary potentials
 
double computePairwiseContrastEnergy (const drwnSegImageInstance *instance, double contrastStrength) const
 compute energy contribution from pairwise contrast potentials
 
double computeLongRangePairwiseEnergy (const drwnSegImageInstance *instance, double longRangeStrength) const
 compute energy contribution from long-range pairwise potentials
 
virtual double computeHigherOrderEnergy (const drwnSegImageInstance *instance, double higherOrderStrength) const
 compute energy contribution from higher-order potentials
 

Detailed Description

Alpha-expansion inference for a pixel-level CRF model with unary, contrast-dependent pairwise, and custom higher-order terms.

See Also
drwnSegImageInstance, drwnPixelSegModel
Multi-class Image Segmentation
Todo:
add custom addAuxiliaryTerms function

The documentation for this class was generated from the following files: