de.unihalle.informatik.MiToBo.segmentation.levelset.nonPDE
Class MTBEnergySumNonPDE

java.lang.Object
  extended by de.unihalle.informatik.MiToBo.segmentation.levelset.nonPDE.MTBGenericEnergyNonPDE
      extended by de.unihalle.informatik.MiToBo.segmentation.levelset.nonPDE.MTBEnergySumNonPDE

@ALDDerivedClass
@ALDParametrizedClass
public class MTBEnergySumNonPDE
extends MTBGenericEnergyNonPDE


Field Summary
 
Fields inherited from class de.unihalle.informatik.MiToBo.segmentation.levelset.nonPDE.MTBGenericEnergyNonPDE
debug, name
 
Constructor Summary
MTBEnergySumNonPDE()
          Construct an energy object for a level set function realizing the sum of energies.
MTBEnergySumNonPDE(String name, Vector<MTBGenericEnergyNonPDE> energies)
          Construct an energy object for a level set function realizing the sum of energies in the vector energies.
 
Method Summary
 double deltaE(int x, int y, int z, byte newPhase, MTBLevelsetMembership phi)
          Calculate differences of energy if the pixel/voxel (x,y,z) is changed from its current phase in the level set function phi supplied from current phase to newPhase.
 double deltaE(int x, int y, int z, MTBLevelsetMembership phi)
          Calculate differences of energy if the pixel/voxel (x,y,z) changes its phase in the levelest function phi supplied as argument and assumed to be associated with this energy object.
 double E(MTBLevelsetMembership phi)
          Return the complete energy for the level set function phi.
 void estimateParams(MTBLevelsetMembership phi)
          Estimate internal parameters (if any) for the level set function phi assumed to be associated with this energy object.
 MTBGenericEnergyNonPDE init(MTBImage img, MTBLevelsetMembership phi)
          Initialization routine which is called once before the energy is actually used.
 void print(MTBLevelsetMembership phi, PrintStream out, String indent)
          Print this energy object - including the value of the energy for phi assumed to be associated with this energy object.
 void setDebug(int debug)
          Set debug bit mask
 String toString()
          Return an ascii representation identifying the energy and internal parameters, but not the state.
 void updateParams(int x, int y, int z, byte newPhase, MTBLevelsetMembership phi)
          Update parameters (if any) of the energy object which depend on the associated level set function.
 void updateParams(int x, int y, int z, MTBLevelsetMembership phi)
          Update parameters (if any) of the energy object which depend on the associated level set function.
 
Methods inherited from class de.unihalle.informatik.MiToBo.segmentation.levelset.nonPDE.MTBGenericEnergyNonPDE
getNewIndent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MTBEnergySumNonPDE

public MTBEnergySumNonPDE(String name,
                          Vector<MTBGenericEnergyNonPDE> energies)
Construct an energy object for a level set function realizing the sum of energies in the vector energies. The name of the energy is as supplied as parameter-

Parameters:
name - The name of this compound energy
energies - A vector comprising the energies to be summed in this energy

MTBEnergySumNonPDE

public MTBEnergySumNonPDE()
Construct an energy object for a level set function realizing the sum of energies. This constructor is mainly intended for use within generic operator execution. The name should be set properly after instantiation.

Method Detail

init

public MTBGenericEnergyNonPDE init(MTBImage img,
                                   MTBLevelsetMembership phi)
Description copied from class: MTBGenericEnergyNonPDE
Initialization routine which is called once before the energy is actually used.

This method assumes, that all class parameters of the energy are already set and takes care of initializations which depend on the image to be segmented and/or the initial level set function supplied as argument. It may also be the case that depending on the image and/or the initial level set function a new energy object is created, e.g. if a specialized energy according to dimensionality of the image of the type of the level set function (multi phase) is required.

If no initialization is required the routine should just return the unmodified energy object.

Overrides:
init in class MTBGenericEnergyNonPDE
Parameters:
img - the image to be segmented
phi - the level set function associated with this energy object in its initial state
Returns:
The modified or a new energy if initialization was successful, otherwise null.

deltaE

public double deltaE(int x,
                     int y,
                     int z,
                     MTBLevelsetMembership phi)
Description copied from class: MTBGenericEnergyNonPDE
Calculate differences of energy if the pixel/voxel (x,y,z) changes its phase in the levelest function phi supplied as argument and assumed to be associated with this energy object.

This version makes sense only for two phase level set function. In the multi phase case any object phase is changed to the background, while a background pixel/voxel is changed to the first object phase.

Overrides:
deltaE in class MTBGenericEnergyNonPDE
phi - level set function assumed to be associated with this energy object
Returns:
difference of energy

deltaE

public double deltaE(int x,
                     int y,
                     int z,
                     byte newPhase,
                     MTBLevelsetMembership phi)
Description copied from class: MTBGenericEnergyNonPDE
Calculate differences of energy if the pixel/voxel (x,y,z) is changed from its current phase in the level set function phi supplied from current phase to newPhase.

Specified by:
deltaE in class MTBGenericEnergyNonPDE
newPhase - new phase to change the pixel/voxel to
phi - level set function assumed to be associated with this energy object
Returns:
difference of energy

E

public double E(MTBLevelsetMembership phi)
Description copied from class: MTBGenericEnergyNonPDE
Return the complete energy for the level set function phi.
Note: this may be an expensive operation.

Specified by:
E in class MTBGenericEnergyNonPDE
Parameters:
phi - level set function assumed to be associated with this energy object
Returns:
energy

updateParams

public void updateParams(int x,
                         int y,
                         int z,
                         MTBLevelsetMembership phi)
Description copied from class: MTBGenericEnergyNonPDE
Update parameters (if any) of the energy object which depend on the associated level set function.

This method is called to update the parameters if is is intended to change a pixel/voxel to the other state, assuming a two phase level set function. For a multi phase level set function flipping of phases is realized in MTBGenericEnergyNonPDE.deltaE(int, int, int, byte, de.unihalle.informatik.MiToBo.segmentation.levelset.nonPDE.MTBLevelsetMembership).

Note: The level set function phi is still in the old state and is assumed to be to updated subsequently.

Overrides:
updateParams in class MTBGenericEnergyNonPDE
phi - assumed to be associated with this energy object

updateParams

public void updateParams(int x,
                         int y,
                         int z,
                         byte newPhase,
                         MTBLevelsetMembership phi)
Description copied from class: MTBGenericEnergyNonPDE
Update parameters (if any) of the energy object which depend on the associated level set function.

This method is called to update the parameters if is is intended to change the phase of a pixel/voxel to newPhase.

Note: The level set function phi is still in the old state and is assumed to be to updated subsequently.

Overrides:
updateParams in class MTBGenericEnergyNonPDE
newPhase - new phase to change pixel/voxel to
phi - assumed to be associated with this energy object

estimateParams

public void estimateParams(MTBLevelsetMembership phi)
Description copied from class: MTBGenericEnergyNonPDE
Estimate internal parameters (if any) for the level set function phi assumed to be associated with this energy object.

Overrides:
estimateParams in class MTBGenericEnergyNonPDE

setDebug

public void setDebug(int debug)
Description copied from class: MTBGenericEnergyNonPDE
Set debug bit mask

Overrides:
setDebug in class MTBGenericEnergyNonPDE
Parameters:
debug - bit mask

toString

public String toString()
Description copied from class: MTBGenericEnergyNonPDE
Return an ascii representation identifying the energy and internal parameters, but not the state.

Specified by:
toString in class MTBGenericEnergyNonPDE

print

public void print(MTBLevelsetMembership phi,
                  PrintStream out,
                  String indent)
Description copied from class: MTBGenericEnergyNonPDE
Print this energy object - including the value of the energy for phi assumed to be associated with this energy object. Each line output is prefixed with the string indent. Note: this may be an expensive operation.

Overrides:
print in class MTBGenericEnergyNonPDE
Parameters:
phi - level set function assumed to be associated with this energy object
out - stream to print to
indent - indentation string


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