de.unihalle.informatik.MiToBo.segmentation.levelset.core.energies.derivable
Class MTBLevelEnergyDerivable_CVRegionFit

java.lang.Object
  extended by de.unihalle.informatik.MiToBo.segmentation.activecontours.energies.MTBActiveContourEnergy_CVRegionFit
      extended by de.unihalle.informatik.MiToBo.segmentation.levelset.core.energies.derivable.MTBLevelEnergyDerivable_CVRegionFit
All Implemented Interfaces:
MTBActiveContourEnergy, MTBActiveContourEnergyDerivable, MTBLevelsetEnergyDerivable

@ALDDerivedClass
@ALDParametrizedClass
public class MTBLevelEnergyDerivable_CVRegionFit
extends MTBActiveContourEnergy_CVRegionFit
implements MTBLevelsetEnergyDerivable

Implementation of Chan-Vese energy for level set functions.

Author:
Martin Scharm, Birgit Moeller

Field Summary
 
Fields inherited from class de.unihalle.informatik.MiToBo.segmentation.activecontours.energies.MTBActiveContourEnergy_CVRegionFit
areas, inImg, lambda_in, lambda_out, means, means_compl
 
Constructor Summary
MTBLevelEnergyDerivable_CVRegionFit()
          Default constructor.
MTBLevelEnergyDerivable_CVRegionFit(MTBImage img)
          Constructor with given image.
 
Method Summary
 double getDerivative(MTBLevelsetFunctionDerivable phi, int x, int y, int z)
          Get the energy derivative value, i.e. velocity, for position (x,y,z).
 double getDerivativeWithoutDelta(MTBLevelsetFunctionDerivable phi, int x, int y, int z)
          Get the energy derivative value, i.e. velocity, for position (x,y,z).
 boolean initEnergy(LevelsetSolverDerivatives solver)
          Initializes the energy object according to given solver settings.
 String toString()
           
 void updateStatus(MTBLevelsetFunctionDerivable phi)
          Function which updates the internal status of the energy.
 void useHeavideApproximation(boolean flag)
          Enable or disable approximation of Heaviside function.
 String validate()
          Function to validate configuration of energy object.
 
Methods inherited from class de.unihalle.informatik.MiToBo.segmentation.activecontours.energies.MTBActiveContourEnergy_CVRegionFit
calcEnergy, calcInteriorEnergy, getDerivative, getEnergyDerivativeMaxVal, getEnergyDerivativeMinVal, getMeans, init, updateParameters
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MTBLevelEnergyDerivable_CVRegionFit

public MTBLevelEnergyDerivable_CVRegionFit()
Default constructor.


MTBLevelEnergyDerivable_CVRegionFit

public MTBLevelEnergyDerivable_CVRegionFit(MTBImage img)
Constructor with given image.

Other paramters are set to lambda_in = lambda_out = mu = 1 nu = 0.

Parameters:
img - Image to process.
Method Detail

toString

public String toString()
Overrides:
toString in class MTBActiveContourEnergy_CVRegionFit

getDerivative

public double getDerivative(MTBLevelsetFunctionDerivable phi,
                            int x,
                            int y,
                            int z)
Description copied from interface: MTBLevelsetEnergyDerivable
Get the energy derivative value, i.e. velocity, for position (x,y,z).

Specified by:
getDerivative in interface MTBLevelsetEnergyDerivable
Parameters:
phi - Level set function.
x - x coordinate of requested position.
y - y coordinate of requested position.
z - z coordinate of requested position.
Returns:
Derivative value at given location.

getDerivativeWithoutDelta

public double getDerivativeWithoutDelta(MTBLevelsetFunctionDerivable phi,
                                        int x,
                                        int y,
                                        int z)
Description copied from interface: MTBLevelsetEnergyDerivable
Get the energy derivative value, i.e. velocity, for position (x,y,z).

Here the value of the Dirac impulse function is ignored (if present).

Specified by:
getDerivativeWithoutDelta in interface MTBLevelsetEnergyDerivable
Parameters:
phi - Level set function.
x - x coordinate of requested position.
y - y coordinate of requested position.
z - z coordinate of requested position.
Returns:
Derivative value without Dirac factor at given location.

updateStatus

public void updateStatus(MTBLevelsetFunctionDerivable phi)
                  throws MTBLevelsetException
Description copied from interface: MTBLevelsetEnergyDerivable
Function which updates the internal status of the energy.

Specified by:
updateStatus in interface MTBLevelsetEnergyDerivable
Parameters:
phi - Current level set function.
Throws:
MTBLevelsetException

initEnergy

public boolean initEnergy(LevelsetSolverDerivatives solver)
Description copied from interface: MTBLevelsetEnergyDerivable
Initializes the energy object according to given solver settings.

Specified by:
initEnergy in interface MTBLevelsetEnergyDerivable
Parameters:
solver - Reference to solver which uses this energy.
Returns:
True, if initialization was successful.

validate

public String validate()
Description copied from interface: MTBLevelsetEnergyDerivable
Function to validate configuration of energy object.

Specified by:
validate in interface MTBLevelsetEnergyDerivable
Returns:
If null, everything is ok, otherwise an error message.

useHeavideApproximation

public void useHeavideApproximation(boolean flag)
Description copied from interface: MTBLevelsetEnergyDerivable
Enable or disable approximation of Heaviside function.

Specified by:
useHeavideApproximation in interface MTBLevelsetEnergyDerivable
Parameters:
flag - If true, approximation is enabled, otherwise disabled.


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