de.unihalle.informatik.MiToBo.segmentation.snakes.energies
Interface MTBSnakeEnergyComputable

All Superinterfaces:
MTBActiveContourEnergy
All Known Implementing Classes:
MTBSnakeEnergyCD_CVRegionFit, MTBSnakeEnergyCD_KassCurvature, MTBSnakeEnergyCD_KassLength, MTBSnakeEnergyCD_OverlapPenalty, MTBSnakeEnergyCDIB_Distance, MTBSnakeEnergyCDIB_Gradient, MTBSnakeEnergyCDIB_GVF2D, MTBSnakeEnergyCDIB_Intensity, MTBSnakeEnergyCDImageBased

@ALDParametrizedClass
public interface MTBSnakeEnergyComputable
extends MTBActiveContourEnergy

Super class for all energies to be used with greedy snakes in MiToBo.

Author:
moeller

Method Summary
 double calcEnergy(SnakeOptimizerSingle o)
          Calculates the energy of the current snake.
 double getScaleFactor()
          Get scaling factor.
 boolean initEnergy(SnakeOptimizerSingle o)
          Init routine which is called once before the energy is actually used.
 boolean requiresCounterClockwiseContourSorting()
          Ask energy if contour points need to sorted counter-clockwise.
 boolean requiresOverlapMask()
          Ask energy if an overlap mask for all snakes jointly optimized is required.
 void setScaleFactor(double s)
          Set the scaling factor.
 String toString()
          Get an identifier string for the energy object.
 void updateStatus(SnakeOptimizerSingle o)
          Update internal state of energy object prior to querying derivatives and so on.
 

Method Detail

initEnergy

boolean initEnergy(SnakeOptimizerSingle o)
                   throws MTBSnakeException
Init routine which is called once before the energy is actually used.

In this routine global parameter settings can be handled or other initialization stuff be done. The SnakeOptimizer will call this routine once before the actual use of the energy. If no stuff needs to be done in advance the routine should at least return true.

Parameters:
o - Calling snake optimizer.
Returns:
true if init was successful
Throws:
MTBSnakeException

updateStatus

void updateStatus(SnakeOptimizerSingle o)
                  throws MTBSnakeException
Update internal state of energy object prior to querying derivatives and so on.

Throws:
MTBSnakeException

calcEnergy

double calcEnergy(SnakeOptimizerSingle o)
Calculates the energy of the current snake.

Parameters:
o - Calling snake optimizer.
Returns:
Energy of complete snake.

setScaleFactor

void setScaleFactor(double s)
Set the scaling factor.

Parameters:
s - new scaling factor.

getScaleFactor

double getScaleFactor()
Get scaling factor.

Returns:
Scaling factor.

requiresCounterClockwiseContourSorting

boolean requiresCounterClockwiseContourSorting()
Ask energy if contour points need to sorted counter-clockwise.

Returns:
If true, the energy expects a counter-clockwise sorting.

requiresOverlapMask

boolean requiresOverlapMask()
Ask energy if an overlap mask for all snakes jointly optimized is required.

Returns:
If true, the energy expects an overlap mask to be available.

toString

String toString()
Get an identifier string for the energy object.

When meta parameters are saved to a file, configuration objects need to be converted to strings. Consequently, each snake energy should be associated with a unique and descriptive string for later reference.

Overrides:
toString in class Object
Returns:
Identifier string.


Copyright © 2010–2015 Martin Luther University Halle-Wittenberg. All rights reserved.