The time step class for time-marching registration algorithms. More...
#include <mia/2d/timestep.hh>
Public Types | |
typedef C2DImage | plugin_data |
plugin search path data component helper More... | |
typedef timestep_type | plugin_type |
plugin search path plugin type component helper More... | |
Public Types inherited from CPropertyFlagHolder | |
typedef std::set< const char * > | Set |
define the type of the set of flags More... | |
Public Member Functions | |
C2DRegTimeStep (float min, float max) | |
float | calculate_pertuberation (C2DFVectorfield &io, const C2DTransformation &shift) const |
bool | decrease () |
float | get_delta (float maxshift) const |
bool | has_regrid () const |
void | increase () |
increase thetime step by multiplying with 1.5 More... | |
bool | regrid_requested (const C2DTransformation &b, const C2DFVectorfield &v, float delta) const |
virtual | ~C2DRegTimeStep () |
Public Member Functions inherited from CProductBase | |
const char * | get_init_string () const |
void | set_init_string (const char *init) |
void | set_module (PPluginModule module) |
Public Member Functions inherited from CPropertyFlagHolder | |
void | add (const char *property) |
Set | get_missing_properties (const CPropertyFlagHolder &testset) const |
bool | has (const char *property) const |
bool | has_all_in (const CPropertyFlagHolder &testset) const |
virtual | ~CPropertyFlagHolder () |
The time step class for time-marching registration algorithms.
Registration time step for a time-marching registration algorithm like those based on a variational model. Generally the time marhcing model consists of two parts, a PDE describing the regularization model of the registration and the time step that advances the registration transformation towards a minimum.
Definition at line 42 of file 2d/timestep.hh.
typedef C2DImage C2DRegTimeStep::plugin_data |
plugin search path data component helper
Definition at line 45 of file 2d/timestep.hh.
typedef timestep_type C2DRegTimeStep::plugin_type |
plugin search path plugin type component helper
Definition at line 48 of file 2d/timestep.hh.
C2DRegTimeStep::C2DRegTimeStep | ( | float | min, |
float | max | ||
) |
Constructor
min | minimum time step |
max | maximum time step |
|
virtual |
float C2DRegTimeStep::calculate_pertuberation | ( | C2DFVectorfield & | io, |
const C2DTransformation & | shift | ||
) | const |
Evaluate the pertuberation of the vector field in combination with the next transformation to be applied. What actually happens here depends on the time step model.
[in,out] | io | vector field resulting from the solution of the PDE, may be overwritted by its pertuberated version |
shift | current transformation |
bool C2DRegTimeStep::decrease | ( | ) |
Decrease the time step by dividing by 2.0. - if the time step falls below the appointed minimum it will be adjusted accordingly
float C2DRegTimeStep::get_delta | ( | float | maxshift | ) | const |
evaluate the time step based on the maximum shift resulting from calculate_pertuberation
maxshift | maximum shift allowed for all pixles |
bool C2DRegTimeStep::has_regrid | ( | ) | const |
void C2DRegTimeStep::increase | ( | ) |
increase thetime step by multiplying with 1.5
bool C2DRegTimeStep::regrid_requested | ( | const C2DTransformation & | b, |
const C2DFVectorfield & | v, | ||
float | delta | ||
) | const |
Depending on the time step model, a regridding may be used - specifically this is the case for the fluid dynamic model
b | current transformation |
v | velocity field in case of a fluid dynamic model |
delta | time step |