ITK
4.8.0
Insight Segmentation and Registration Toolkit
|
#include <itkScaleTransform.h>
Scale transformation of a vector space (e.g. space coordinates)
The same functionality could be obtained by using the Affine transform, but with a large difference in performace since the affine transform will use a matrix multiplication using a diagonal matrix.
Definition at line 42 of file itkScaleTransform.h.
Public Types | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::FixedParametersType | FixedParametersType |
typedef CovariantVector < TParametersValueType, NDimensions > | InputCovariantVectorType |
typedef Point < TParametersValueType, NDimensions > | InputPointType |
typedef Vector < TParametersValueType, NDimensions > | InputVectorType |
typedef vnl_vector_fixed < TParametersValueType, NDimensions > | InputVnlVectorType |
typedef InverseTransformBaseType::Pointer | InverseTransformBasePointer |
typedef Superclass::InverseTransformBaseType | InverseTransformBaseType |
typedef Superclass::JacobianType | JacobianType |
typedef Superclass::MatrixType | MatrixType |
typedef CovariantVector < TParametersValueType, NDimensions > | OutputCovariantVectorType |
typedef Point < TParametersValueType, NDimensions > | OutputPointType |
typedef Vector < TParametersValueType, NDimensions > | OutputVectorType |
typedef vnl_vector_fixed < TParametersValueType, NDimensions > | OutputVnlVectorType |
typedef Superclass::ParametersType | ParametersType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::ScalarType | ScalarType |
typedef FixedArray < TParametersValueType, NDimensions > | ScaleType |
typedef ScaleTransform | Self |
typedef MatrixOffsetTransformBase < TParametersValueType, NDimensions, NDimensions > | Superclass |
Public Types inherited from itk::MatrixOffsetTransformBase< TParametersValueType, NDimensions, NDimensions > | |
typedef InputPointType | CenterType |
typedef SmartPointer< const Self > | ConstPointer |
typedef Superclass::FixedParametersType | FixedParametersType |
typedef Superclass::FixedParametersValueType | FixedParametersValueType |
typedef Superclass::InputDiffusionTensor3DType | InputDiffusionTensor3DType |
typedef Superclass::InputSymmetricSecondRankTensorType | InputSymmetricSecondRankTensorType |
typedef CovariantVector < TParametersValueType, InputDiffusionTensor3DType::Dimension > | InputTensorEigenVectorType |
typedef Superclass::InputVectorPixelType | InputVectorPixelType |
typedef Matrix < TParametersValueType, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension)> | InverseMatrixType |
typedef InverseTransformBaseType::Pointer | InverseTransformBasePointer |
typedef Superclass::InverseTransformBaseType | InverseTransformBaseType |
typedef Superclass::JacobianType | JacobianType |
typedef OutputVectorType | OffsetType |
typedef OffsetType::ValueType | OffsetValueType |
typedef Superclass::OutputDiffusionTensor3DType | OutputDiffusionTensor3DType |
typedef Superclass::OutputSymmetricSecondRankTensorType | OutputSymmetricSecondRankTensorType |
typedef Superclass::OutputVectorPixelType | OutputVectorPixelType |
typedef Superclass::ParametersType | ParametersType |
typedef Superclass::ParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef Superclass::ScalarType | ScalarType |
typedef MatrixOffsetTransformBase | Self |
typedef Transform < TParametersValueType, NInputDimensions, NOutputDimensions > | Superclass |
typedef Superclass::TransformCategoryType | TransformCategoryType |
typedef OutputVectorType | TranslationType |
typedef TranslationType::ValueType | TranslationValueType |
typedef Vector < TParametersValueType, itkGetStaticConstMacro(InputSpaceDimension)> | InputVectorType |
typedef Vector < TParametersValueType, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputVectorType |
typedef OutputVectorType::ValueType | OutputVectorValueType |
typedef CovariantVector < TParametersValueType, itkGetStaticConstMacro(InputSpaceDimension)> | InputCovariantVectorType |
typedef CovariantVector < TParametersValueType, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputCovariantVectorType |
typedef vnl_vector_fixed < TParametersValueType, itkGetStaticConstMacro(InputSpaceDimension)> | InputVnlVectorType |
typedef vnl_vector_fixed < TParametersValueType, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputVnlVectorType |
typedef Point < TParametersValueType, itkGetStaticConstMacro(InputSpaceDimension)> | InputPointType |
typedef InputPointType::ValueType | InputPointValueType |
typedef Point < TParametersValueType, itkGetStaticConstMacro(OutputSpaceDimension)> | OutputPointType |
typedef OutputPointType::ValueType | OutputPointValueType |
typedef Matrix < TParametersValueType, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | MatrixType |
typedef MatrixType::ValueType | MatrixValueType |
Public Types inherited from itk::Transform< TParametersValueType, NInputDimensions, NOutputDimensions > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef Array < ParametersValueType > | DerivativeType |
typedef Matrix< double, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | DirectionChangeMatrix |
typedef Superclass::FixedParametersType | FixedParametersType |
typedef Superclass::FixedParametersValueType | FixedParametersValueType |
typedef CovariantVector < TParametersValueType, NInputDimensions > | InputCovariantVectorType |
typedef DiffusionTensor3D < TParametersValueType > | InputDiffusionTensor3DType |
typedef Matrix< double, itkGetStaticConstMacro(InputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | InputDirectionMatrix |
typedef Point < TParametersValueType, NInputDimensions > | InputPointType |
typedef SymmetricSecondRankTensor < TParametersValueType, NInputDimensions > | InputSymmetricSecondRankTensorType |
typedef VariableLengthVector < TParametersValueType > | InputVectorPixelType |
typedef Vector < TParametersValueType, NInputDimensions > | InputVectorType |
typedef vnl_vector_fixed < TParametersValueType, NInputDimensions > | InputVnlVectorType |
typedef InverseTransformBaseType::Pointer | InverseTransformBasePointer |
typedef Transform < TParametersValueType, NOutputDimensions, NInputDimensions > | InverseTransformBaseType |
typedef Array2D < ParametersValueType > | JacobianType |
typedef Matrix < TParametersValueType, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(InputSpaceDimension)> | MatrixType |
typedef Superclass::NumberOfParametersType | NumberOfParametersType |
typedef CovariantVector < TParametersValueType, NOutputDimensions > | OutputCovariantVectorType |
typedef DiffusionTensor3D < TParametersValueType > | OutputDiffusionTensor3DType |
typedef Matrix< double, itkGetStaticConstMacro(OutputSpaceDimension), itkGetStaticConstMacro(OutputSpaceDimension)> | OutputDirectionMatrix |
typedef Point < TParametersValueType, NOutputDimensions > | OutputPointType |
typedef SymmetricSecondRankTensor < TParametersValueType, NOutputDimensions > | OutputSymmetricSecondRankTensorType |
typedef VariableLengthVector < TParametersValueType > | OutputVectorPixelType |
typedef Vector < TParametersValueType, NOutputDimensions > | OutputVectorType |
typedef vnl_vector_fixed < TParametersValueType, NOutputDimensions > | OutputVnlVectorType |
typedef Superclass::ParametersType | ParametersType |
typedef Superclass::ParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef ParametersValueType | ScalarType |
typedef Transform | Self |
typedef TransformBaseTemplate < TParametersValueType > | Superclass |
typedef Superclass::TransformCategoryType | TransformCategoryType |
Public Types inherited from itk::TransformBaseTemplate< TParametersValueType > | |
typedef SmartPointer< const Self > | ConstPointer |
typedef OptimizerParameters < FixedParametersValueType > | FixedParametersType |
typedef ParametersValueType | FixedParametersValueType |
typedef IdentifierType | NumberOfParametersType |
typedef OptimizerParameters < ParametersValueType > | ParametersType |
typedef TParametersValueType | ParametersValueType |
typedef SmartPointer< Self > | Pointer |
typedef TransformBaseTemplate | Self |
typedef Object | Superclass |
enum | TransformCategoryType { UnknownTransformCategory =0, Linear =1, BSpline =2, Spline =3, DisplacementField =4, VelocityField =5 } |
Public Types inherited from itk::Object | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef Object | Self |
typedef LightObject | Superclass |
Public Types inherited from itk::LightObject | |
typedef SmartPointer< const Self > | ConstPointer |
typedef SmartPointer< Self > | Pointer |
typedef LightObject | Self |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::MatrixOffsetTransformBase< TParametersValueType, NDimensions, NDimensions > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | SpaceDimension = NDimensions |
static const unsigned int | ParametersDimension = NDimensions |
Static Public Attributes inherited from itk::MatrixOffsetTransformBase< TParametersValueType, NDimensions, NDimensions > | |
static const unsigned int | InputSpaceDimension |
static const unsigned int | OutputSpaceDimension |
static const unsigned int | ParametersDimension |
Static Public Attributes inherited from itk::Transform< TParametersValueType, NInputDimensions, NOutputDimensions > | |
static const unsigned int | InputSpaceDimension = NInputDimensions |
static const unsigned int | OutputSpaceDimension = NOutputDimensions |
Private Member Functions | |
const Self & | operator= (const Self &) |
ScaleTransform (const Self &other) | |
Private Attributes | |
ScaleType | m_Scale |
Additional Inherited Members | |
Protected Attributes inherited from itk::Transform< TParametersValueType, NInputDimensions, NOutputDimensions > | |
DirectionChangeMatrix | m_DirectionChange |
FixedParametersType | m_FixedParameters |
ParametersType | m_Parameters |
Protected Attributes inherited from itk::LightObject | |
AtomicInt< int > | m_ReferenceCount |
typedef SmartPointer<const Self> itk::ScaleTransform< TParametersValueType, NDimensions >::ConstPointer |
Definition at line 51 of file itkScaleTransform.h.
typedef Superclass::FixedParametersType itk::ScaleTransform< TParametersValueType, NDimensions >::FixedParametersType |
Parameters type.
Definition at line 68 of file itkScaleTransform.h.
typedef CovariantVector<TParametersValueType, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::InputCovariantVectorType |
Standard covariant vector type for this class.
Definition at line 82 of file itkScaleTransform.h.
typedef Point<TParametersValueType, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::InputPointType |
Standard coordinate point type for this class.
Definition at line 90 of file itkScaleTransform.h.
typedef Vector<TParametersValueType, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::InputVectorType |
Standard vector type for this class.
Definition at line 78 of file itkScaleTransform.h.
typedef vnl_vector_fixed<TParametersValueType, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::InputVnlVectorType |
Standard vnl_vector type for this class.
Definition at line 86 of file itkScaleTransform.h.
typedef InverseTransformBaseType::Pointer itk::ScaleTransform< TParametersValueType, NDimensions >::InverseTransformBasePointer |
Definition at line 96 of file itkScaleTransform.h.
typedef Superclass::InverseTransformBaseType itk::ScaleTransform< TParametersValueType, NDimensions >::InverseTransformBaseType |
Base inverse transform type. This type should not be changed to the concrete inverse transform type or inheritance would be lost.
Definition at line 95 of file itkScaleTransform.h.
typedef Superclass::JacobianType itk::ScaleTransform< TParametersValueType, NDimensions >::JacobianType |
Jacobian type.
Definition at line 72 of file itkScaleTransform.h.
typedef Superclass::MatrixType itk::ScaleTransform< TParametersValueType, NDimensions >::MatrixType |
Definition at line 98 of file itkScaleTransform.h.
typedef CovariantVector<TParametersValueType, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::OutputCovariantVectorType |
Definition at line 83 of file itkScaleTransform.h.
typedef Point<TParametersValueType, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::OutputPointType |
Definition at line 91 of file itkScaleTransform.h.
typedef Vector<TParametersValueType, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::OutputVectorType |
Definition at line 79 of file itkScaleTransform.h.
typedef vnl_vector_fixed<TParametersValueType, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::OutputVnlVectorType |
Definition at line 87 of file itkScaleTransform.h.
typedef Superclass::ParametersType itk::ScaleTransform< TParametersValueType, NDimensions >::ParametersType |
Definition at line 69 of file itkScaleTransform.h.
typedef SmartPointer<Self> itk::ScaleTransform< TParametersValueType, NDimensions >::Pointer |
Definition at line 50 of file itkScaleTransform.h.
typedef Superclass::ScalarType itk::ScaleTransform< TParametersValueType, NDimensions >::ScalarType |
Scalar type.
Definition at line 65 of file itkScaleTransform.h.
typedef FixedArray<TParametersValueType, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::ScaleType |
Standard vector type for this class.
Definition at line 75 of file itkScaleTransform.h.
typedef ScaleTransform itk::ScaleTransform< TParametersValueType, NDimensions >::Self |
Standard class typedefs.
Definition at line 48 of file itkScaleTransform.h.
typedef MatrixOffsetTransformBase<TParametersValueType, NDimensions, NDimensions> itk::ScaleTransform< TParametersValueType, NDimensions >::Superclass |
Definition at line 49 of file itkScaleTransform.h.
|
protected |
Construct an ScaleTransform object.
|
protected |
Destroy an ScaleTransform object.
|
private |
|
inline |
Back transform by a scale transformation This method finds the point or vector that maps to a given point or vector under the scale transformation defined by self. If no such point exists, an exception is thrown.
|
inline |
|
inline |
|
inline |
void itk::ScaleTransform< TParametersValueType, NDimensions >::Compose | ( | const Self * | other, |
bool | pre = false |
||
) |
Compose with another ScaleTransform.
|
overridevirtual |
Get the Jacobian matrix.
|
overridevirtual |
Get the jacobian with respect to position, which simply is the matrix because the transform is position-invariant. jac will be resized as needed, but it will be more efficient if it is already properly sized.
|
overridevirtual |
Reimplemented from itk::MatrixOffsetTransformBase< TParametersValueType, NDimensions, NDimensions >.
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
bool itk::ScaleTransform< TParametersValueType, NDimensions >::GetInverse | ( | Self * | inverse | ) | const |
Find inverse of a scale transformation This method creates and returns a new ScaleTransform object which is the inverse of self. If self is not invertible, false is returned.
|
overridevirtual |
Return an inverse of this transform.
Reimplemented from itk::MatrixOffsetTransformBase< TParametersValueType, NDimensions, NDimensions >.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::MatrixOffsetTransformBase< TParametersValueType, NDimensions, NDimensions >.
Reimplemented in itk::ScaleLogarithmicTransform< TParametersValueType, NDimensions >.
|
overridevirtual |
Get the parameters that uniquely define the transform This is typically used by optimizers during the process of image registration. The parameters are organized as {scale X, scale Y, scale Z } = { parameter[0], parameter[1], parameter[2] } respectively
Reimplemented from itk::Transform< TParametersValueType, NInputDimensions, NOutputDimensions >.
Reimplemented in itk::ScaleLogarithmicTransform< TParametersValueType, NDimensions >.
|
virtual |
Get access to scale values
|
static |
New macro for creation of through a smart pointer.
|
private |
|
overrideprotectedvirtual |
Print contents of an ScaleTransform
Reimplemented from itk::MatrixOffsetTransformBase< TParametersValueType, NDimensions, NDimensions >.
Reimplemented in itk::ScaleLogarithmicTransform< TParametersValueType, NDimensions >.
void itk::ScaleTransform< TParametersValueType, NDimensions >::Scale | ( | const ScaleType & | scale, |
bool | pre = false |
||
) |
Compose this transform transformation with another scaling. The pre argument is irrelevant here since scale transforms are commutative, pre and postcomposition are therefore equivalent.
|
overridevirtual |
Set the transformation to an Identity
This sets all the scales to 1.0
Reimplemented from itk::MatrixOffsetTransformBase< TParametersValueType, NDimensions, NDimensions >.
|
overridevirtual |
Set parameters. This method sets the parameters for the transform value specified by the user. The parameters are organized as scale[i] = parameter[i]. That means that in 3D the scale parameters for the coordinates {x,y,z} are {parameter[0], parameter[1], parameter[2]} respectively
Reimplemented in itk::ScaleLogarithmicTransform< TParametersValueType, NDimensions >.
void itk::ScaleTransform< TParametersValueType, NDimensions >::SetScale | ( | const ScaleType & | scale | ) |
Set the factors of an Scale Transform This method sets the factors of an ScaleTransform to a value specified by the user. This method cannot be done with SetMacro because itk::Array has not an operator== defined. The array of scales correspond in order to the factors to be applied to each one of the coordinaates. For example, in 3D, scale[0] corresponds to X, scale[1] corresponds to Y and scale[2] corresponds to Z.
|
override |
|
override |
Transform by a scale transformation This method applies the scale transform given by self to a given point or vector, returning the transformed point or vector.
|
override |
|
override |
|
private |
Definition at line 216 of file itkScaleTransform.h.
|
static |
Dimension of the domain space.
Definition at line 61 of file itkScaleTransform.h.
|
static |
Dimension of the domain space.
Definition at line 60 of file itkScaleTransform.h.