Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Transformation.hxx File Reference

#include <ImLib3D/Interpolator3D.hpp>
#include <ImLib3D/SplineInterpolation.hpp>
#include <ImLib3D/TestPatterns.hpp>
#include <ImLib3D/Interpolator3D.hxx>

Include dependency graph for Transformation.hxx:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  IP3D

Functions

template<>
void TransformWithInverseField< Mask3D > (const Mask3D &imOrig, const Field3Df &field, Mask3D &_imRes)
 Transforming a mask is more complex than for a normal image.
template<class ImageType>
void IP3D::TransformWithInverseField (const ImageType &src, const Field3Df &field, ImageType &_res)
 Use this function to resample an image (backward transform).
template<class ImageType>
void IP3D::TransformAffine (const ImageType &src, const Affine3DTransform &transfo, ImageType &_res, const Size3D *resSize)
 Perform an affine transformation on an image.


Detailed Description

Definition in file Transformation.hxx.


Function Documentation

template<>
void IP3D::TransformWithInverseField< Mask3D > const Mask3D src,
const Field3Df field,
Mask3D res0
 

Transforming a mask is more complex than for a normal image.

Each value has to be considered as a distinct labe, and normal interpolation is meaningless (it would mix labels!). Here we solve the problem by independently transforming each label value, and then recomposing a final result mask by voting

use label=0 as default

template<class ImageType>
void IP3D::TransformWithInverseField const ImageType &  src,
const Field3Df field,
ImageType &  _res
 

Use this function to resample an image (backward transform).

Use this function to resample an image imOrig at new positions as defined by field. WARNING: the field defines a backward transform ie.: res(P)=src(P+field(P)) this might seem unatural at first, but is the best method for using a field transform. for int images, use temporrary float images (otherwise interpolation sucks)

Definition at line 42 of file Transformation.hxx.

References ImageProcessorArgs< ImageType >::GetDest(), Image3D::Mask(), ImageProcessorArgs< ImageType >::SetDestSize(), Image3D::Size(), IP3D::TransformWithInverseField(), Vect3D< Value, Real >::x, Vect3D< Value, Real >::y, and Vect3D< Value, Real >::z.


Generated on Fri Jun 17 13:36:17 2005 for ImLib3D by  doxygen 1.4.2