This is the generic base class for 2D transformations. More...
#include <mia/2d/transform.hh>
Data Structures | |
| class | const_iterator | 
| class | iterator_impl | 
| Base of the implementation of an iterator over the transformation domain This iterator takes care of iterating over the transformation range. X is the fastest changing index. Some methods are abstract and must be defined in derived classes by using the specific transformation model.  More... | |
Public Types | |
| typedef C2DImage | Data | 
| generic name for the data used by this transformation  More... | |
| typedef C2DInterpolatorFactory | InterpolatorFactory | 
| generic name for the interpolation factory used by this transformation  More... | |
| typedef std::shared_ptr< C2DTransformation > | Pointer | 
| pointer type of this transformation  More... | |
| typedef C2DBounds | Size | 
| generic name for the size type used by this transformation  More... | |
| typedef C2DTransformation | type | 
| generic name for this transformation type  More... | |
| typedef C2DFVector | Vector | 
| generic name for the vector type used by this transformation  More... | |
  Public Types inherited from Transformation< C2DImage, C2DInterpolatorFactory > | |
| typedef C2DImage | Data | 
| typedef for the data type to be transformed by this transformation  More... | |
| typedef C2DInterpolatorFactory | InterpolatorFactory | 
| type of the interpolator used by this transformation  More... | |
Public Member Functions | |
| virtual C2DFVector | apply (const C2DFVector &x) const __attribute__((deprecated)) | 
| virtual const_iterator | begin () const =0 | 
| C2DTransformation (const C2DInterpolatorFactory &ipf) | |
| virtual C2DTransformation * | clone () const __attribute__((warn_unused_result)) | 
| virtual size_t | degrees_of_freedom () const =0 | 
| virtual C2DFMatrix | derivative_at (const C2DFVector &x) const =0 | 
| virtual C2DFMatrix | derivative_at (int x, int y) const =0 | 
| virtual const_iterator | end () const =0 | 
| const std::string & | get_creator_string () const | 
| virtual C2DFVector | get_displacement_at (const C2DFVector &x) const =0 | 
| virtual float | get_jacobian (const C2DFVectorfield &v, float delta) const =0 | 
| virtual float | get_max_transform () const =0 | 
| virtual C2DBounds | get_minimal_supported_image_size () const | 
| virtual CDoubleVector | get_parameters () const =0 | 
| virtual const C2DBounds & | get_size () const =0 | 
| virtual C2DTransformation * | invert () const __attribute__((warn_unused_result))=0 | 
| virtual C2DFVector | operator() (const C2DFVector &x) const =0 | 
| virtual float | pertuberate (C2DFVectorfield &v) const =0 | 
| virtual bool | refine () | 
| void | set_creator_string (const std::string &s) | 
| virtual void | set_identity ()=0 | 
| virtual void | set_parameters (const CDoubleVector ¶ms)=0 | 
| virtual void | translate (const C2DFVectorfield &gradient, CDoubleVector ¶ms) const =0 | 
| virtual void | update (float step, const C2DFVectorfield &a)=0 | 
| Pointer | upscale (const C2DBounds &size) const | 
  Public Member Functions inherited from Transformation< C2DImage, C2DInterpolatorFactory > | |
| double | get_energy_penalty () const | 
| double | get_energy_penalty_and_gradient (CDoubleVector &gradient) const | 
| bool | has_energy_penalty () const | 
| std::shared_ptr< C2DImage > | operator() (const C2DImage &input) const | 
| std::shared_ptr< C2DImage > | operator() (const C2DImage &input, const C2DInterpolatorFactory &ipf_override) const | 
| void | set_interpolator_factory (const C2DInterpolatorFactory &ipf) | 
| Transformation (const C2DInterpolatorFactory &ipf) | |
| virtual | ~Transformation () | 
  Public Member Functions inherited from CIOData | |
| const std::string & | get_source_format () const | 
| void | set_source_format (const std::string &format) | 
  Public Member Functions inherited from CAttributedData | |
| CAttributeMap::const_iterator | begin_attributes () const | 
| void | delete_attribute (const std::string &key) | 
| CAttributeMap::const_iterator | end_attributes () const | 
| const PAttribute | get_attribute (const std::string &key) const | 
| template<typename T > | |
| const T | get_attribute_as (const std::string &key) const | 
| template<typename T > | |
| const T | get_attribute_as (const std::string &key, T default_value) const | 
| const std::string | get_attribute_as_string (const std::string &key) const | 
| returns the requested attribute as string, returns an empty string if attribute doesn't exist  More... | |
| bool | has_attribute (const std::string &key) const | 
| CAttributedData & | operator= (const CAttributedData &org) | 
| Assignemt operator.  More... | |
| void | print (std::ostream &os) const | 
| void | set_attribute (const std::string &key, PAttribute attr) | 
| void | set_attribute (const std::string &key, const std::string &value) | 
| template<typename T > | |
| void | set_attribute (const std::string &key, const T &value) | 
| void | set_attribute (const std::string &key, const char *value) | 
| void | set_attributes (CAttributeMap::const_iterator begin, CAttributeMap::const_iterator end) | 
| CAttributedData () | |
| CAttributedData (const CAttributedData &org) | |
| CAttributedData (PAttributeMap attr) | |
Static Public Attributes | |
| static const char * | data_descr | 
| plug-in search path element "type"  More... | |
| static const char * | dim_descr | 
| plug-in search path element "data"  More... | |
| static constexpr const char * | input_spacing_attr = "in-pixel-spacing" | 
| static constexpr const char * | output_spacing_attr = "out-pixel-spacing" | 
  Static Public Attributes inherited from Transformation< C2DImage, C2DInterpolatorFactory > | |
| static const char * | type_descr | 
| interface type for plugin implementation and search  More... | |
Additional Inherited Members | |
  Protected Member Functions inherited from Transformation< C2DImage, C2DInterpolatorFactory > | |
| const C2DInterpolatorFactory & | get_interpolator_factory () const | 
This is the generic base class for 2D transformations.
This class defines the generic interface for a 2D transformation. Most methods are pure abstract and need to be implemented by a "real" transformation. Actual implementations are provided as plug-ins.
Definition at line 45 of file 2d/transform.hh.
| typedef C2DImage C2DTransformation::Data | 
generic name for the data used by this transformation
Definition at line 48 of file 2d/transform.hh.
generic name for the interpolation factory used by this transformation
Definition at line 57 of file 2d/transform.hh.
| typedef std::shared_ptr<C2DTransformation > C2DTransformation::Pointer | 
pointer type of this transformation
Definition at line 63 of file 2d/transform.hh.
| typedef C2DBounds C2DTransformation::Size | 
generic name for the size type used by this transformation
Definition at line 51 of file 2d/transform.hh.
generic name for this transformation type
Definition at line 60 of file 2d/transform.hh.
| typedef C2DFVector C2DTransformation::Vector | 
generic name for the vector type used by this transformation
Definition at line 54 of file 2d/transform.hh.
| C2DTransformation::C2DTransformation | ( | const C2DInterpolatorFactory & | ipf | ) | 
Standard constructor place holder
      
  | 
  inlinevirtual | 
Definition at line 341 of file 2d/transform.hh.
      
  | 
  pure virtual | 
      
  | 
  virtual | 
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
evaluate the derivative (Jacobian matrix) of the transformation at the given coordinate
| x | 
      
  | 
  pure virtual | 
evaluate the derivative (Jacobian matrix) of the transformation at the given grid coordinates
| x | |
| y | 
      
  | 
  pure virtual | 
| const std::string& C2DTransformation::get_creator_string | ( | ) | const | 
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
Evaluate the Jacobian of the transformation when updated with vector field v by factor delta
      
  | 
  pure virtual | 
      
  | 
  virtual | 
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
A transformation is defined on [0,X-1]x[0.Y-1].
      
  | 
  pure virtual | 
      
  | 
  pure virtual | 
apply the actual transformation to point x
      
  | 
  pure virtual | 
evaluate the pertuberation of a vectorfield combined with this transformation
| [in,out] | v | vectorfield to be pertuberated | 
      
  | 
  virtual | 
If applicaple the transformation model is refined (e.g. splines are converted to a denser coefficient distribution.
| void C2DTransformation::set_creator_string | ( | const std::string & | s | ) | 
Set the descrition string that was used to create this transformstion
| s | 
      
  | 
  pure virtual | 
set the transformation to be the identity transform
      
  | 
  pure virtual | 
sets the transformation parameters from a flat value array
      
  | 
  pure virtual | 
Translate the input gradient to a vector field in the space of the transformation field
      
  | 
  pure virtual | 
update a transformation by using a vector field
Transforation upscaling to new image size
| size | new size of the transformation | 
      
  | 
  static | 
plug-in search path element "type"
Definition at line 66 of file 2d/transform.hh.
      
  | 
  static | 
plug-in search path element "data"
Definition at line 69 of file 2d/transform.hh.
      
  | 
  static | 
This attribute defines the voxel spacing of the input data of this transform.
Definition at line 374 of file 2d/transform.hh.
      
  | 
  static | 
This attribute defines the output voxel spacing of this transform.
Definition at line 379 of file 2d/transform.hh.