@ALDAOperator(genericExecutionMode=ALL) @ALDDerivedClass public class SnakeOptimizerSingleGreedy extends SnakeOptimizerSingle
Image contour segmentation using parametric snakes with greedy optimization. This class provides methods to segment contours in an image based on parametric active contour models, i.e. snakes. The snake optimization is done based on a greedy algorithm. Its main intention is for comparison and demontration purposes. You should always keep in mind that greedy snake algorithms are slow - particularly since for each point movement excessive local energy calculations have to be done.
SnakeOptimizerSingle.EnergyNormalizationMode, SnakeOptimizerSingle.IntensityNormalizationMode
SnakeOptimizer.Snake_status
de.unihalle.informatik.Alida.operator.ALDOperatorControllable.OperatorControlStatus, de.unihalle.informatik.Alida.operator.ALDOperatorControllable.OperatorControlStatusHandle, de.unihalle.informatik.Alida.operator.ALDOperatorControllable.OperatorExecutionStatus
Modifier and Type | Field and Description |
---|---|
protected MTBSet_SnakeEnergyComputable |
energies |
protected double[] |
energyWeightsNormed
List of normalized energy weights.
|
dispImg, doResampling, energy, energyCalculationRequested, intNormMode, normMode, previousEnergy, previousSnake, resampleSegLength, scaleFactor, snake, timer, workingImage
counterClockwiseSnakePointOrderRequested, energyData, excludeMask, iChannels, iHeight, inImg, initialSnakes, intermediateResults, itCounter, iWidth, outIntermediateResultsStack, outIntermediateResultsStackInterval, outIntermediateResultsStackWanted, outSnakes, outSnakesImg, sampleEnergyData, saveIntermediateResults, saveIntermediateResultsPath, showIntermediateResults, snakeNum
Constructor and Description |
---|
SnakeOptimizerSingleGreedy() |
Modifier and Type | Method and Description |
---|---|
protected double |
calcSnakeEnergy()
Calculates total snake energy.
|
SnakeOptimizerSingle |
clone() |
protected SnakeOptimizer.Snake_status |
doIteration()
Performs one single optimization step, i.e. iterates once over all points.
|
MTBSet_SnakeEnergyComputable |
getEnergySet()
Returns a reference to the set of energies.
|
protected boolean |
hasEnergies()
Check if energies are given.
|
protected void |
initOptimizer()
Initializes the optimizer.
|
void |
printParams()
Print important parameters to standard output stream.
|
void |
setEnergySet(MTBSet_ActiveContourEnergy eSet)
Specify set of energies.
|
protected void |
setupEnergyTable()
Inits the table for sampled energy values.
|
closeWindows, disableEnergyCalculation, doResampleSnake, enableEnergyCalculation, getCurrentSnake, getCurrentSnakes, getEnergyValue, getIntensityNormalizationMode, getNormalizationMode, getPreviousEnergyValue, getPreviousSnake, getSegmentLength, getWorkingImage, normalizeInputImage, readResolve, resampleSnake, saveSnake, setNormalizationMode, showSnake, toString, validateCustom
disableSaveIntermediateResults, disableShowIntermediateResults, enableSaveIntermediateResults, enableShowIntermediateResults, getExcludeMask, getInitialSnakes, getInputImage, getIterationCount, getResultSnakeImage, getResultSnakes, getSnakeNumber, getStackWithIntermediateResults, operate, setExcludeMask, setInitialSnakes, setInputImage, setIntermediateResultPath, supportsStepWiseExecution, wantStackWithIntermediateResults
addALDConfigurationEventListener, addALDControlEventListener, fireALDConfigurationEvent, fireALDControlEvent, getControlStatus, getControlStatusHandle, getExecutionStatus, handleALDConfigurationEvent, handleALDControlEvent, removeALDConfigurationEventListener, removeALDControlEventListener, setControlStatus, setNotifyRecursiveFlag
addOperatorExecutionProgressEventListener, addParameter, addParameter, addParameterUnconditioned, fieldContained, fireOperatorExecutionProgressEvent, getALDPortHashAccessKey, getConstructionMode, getDocumentation, getHidingMode, getInactiveParameterNames, getInInoutNames, getInInoutNames, getInNames, getInOutNames, getMissingRequiredInputs, getName, getNumParameters, getOutInoutNames, getOutNames, getParameter, getParameterDescriptor, getParameterDescriptorUnconditioned, getParameterNames, getParameterUnconditioned, getSupplementalNames, getVerbose, getVersion, handleOperatorExecutionProgressEvent, hasInOutParameters, hasParameter, isAnnotatedParameter, isConfigured, print, print, print, printInterface, printInterface, readHistory, reinitializeParameterDescriptors, removeOperatorExecutionProgressEventListener, removeParameter, runOp, runOp, runOp, setConstructionMode, setConstructionMode, setConstructionMode, setHidingMode, setName, setParameter, setParameterUnconditioned, setVerbose, toStringVerbose, unconfiguredItems, validate, validateGeneric, writeHistory, writeHistory, writeHistory
@Parameter(label="List of Energies", direction=IN, required=true, dataIOOrder=3, description="List of snake energies.") protected MTBSet_SnakeEnergyComputable energies
protected transient double[] energyWeightsNormed
public SnakeOptimizerSingleGreedy() throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
protected void initOptimizer() throws MTBSnakeException, IllegalArgumentException
Here internal member variables are initialized according to the given parameters, and memory for intermediate results and debug data is allocated.
initOptimizer
in class SnakeOptimizerSingle
{@link
- IllegalArgumentException}{@link
- MTBSnakeException}MTBSnakeException
IllegalArgumentException
protected SnakeOptimizer.Snake_status doIteration() throws MTBSnakeException
doIteration
in class SnakeOptimizer
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
MTBSnakeException
public SnakeOptimizerSingle clone()
clone
in class SnakeOptimizer
protected boolean hasEnergies()
SnakeOptimizerSingle
hasEnergies
in class SnakeOptimizerSingle
public void setEnergySet(MTBSet_ActiveContourEnergy eSet)
SnakeOptimizerSingle
setEnergySet
in class SnakeOptimizerSingle
eSet
- Set of energies.public MTBSet_SnakeEnergyComputable getEnergySet()
SnakeOptimizerSingle
getEnergySet
in class SnakeOptimizerSingle
public void printParams()
printParams
in class SnakeOptimizerSingle
protected double calcSnakeEnergy()
protected void setupEnergyTable()
Copyright © 2010–2020 Martin Luther University Halle-Wittenberg, Institute of Computer Science, Pattern Recognition and Bioinformatics. All rights reserved.