template<typename TParametersValueType = double>
class itk::ScaleVersor3DTransform< TParametersValueType >
This transform applies a Versor rotation, translation and anisotropic scale to the space.
The transform can be described as: \( (\textbf{R}_v + \textbf{S})\textbf{x} \) where \(\textbf{R}_v\) is the rotation matrix given the versor, and \(S=\left( \begin{array}{ccc}s_0-1 & 0 & 0 \\ 0 & s_1-1 & 0 \\ 0 & 0 & s_2-1 \end{array} \right)\ \)
- Note
- This transform's scale parameters are not related to the uniform scaling parameter of the Similarity3DTransform.
- Author
- Johnson H.J., Harris G., Williams K. University of Iowa Carver College of Medicine, Department of Psychiatry NeuroImaging Center
This implementation was taken from the Insight Journal paper: https://doi.org/10.54294/hmb052
Definition at line 48 of file itkScaleVersor3DTransform.h.
|
using | ConstPointer = SmartPointer< const Self > |
|
using | Pointer = SmartPointer< Self > |
|
using | ScaleVectorType = Vector< TParametersValueType, 3 > |
|
using | Self = ScaleVersor3DTransform |
|
using | Superclass = VersorRigid3DTransform< TParametersValueType > |
|
using | AngleType = typename VersorType::ValueType |
|
using | AxisType = typename VersorType::VectorType |
|
using | AxisValueType = typename AxisType::ValueType |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | DerivativeType = Array< ParametersValueType > |
|
using | ParametersValueType = typename ParametersType::ValueType |
|
using | Pointer = SmartPointer< Self > |
|
using | Self = VersorRigid3DTransform |
|
using | Superclass = VersorTransform< double > |
|
using | VectorType = typename VersorType::VectorType |
|
using | VersorType = Versor< double > |
|
using | AngleType = typename VersorType::ValueType |
|
using | AxisType = typename VersorType::VectorType |
|
using | AxisValueType = typename AxisType::ValueType |
|
using | CenterType = InputPointType |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | InputCovariantVectorType = CovariantVector< double, Self::InputSpaceDimension > |
|
using | InputPointType = Point< double, Self::InputSpaceDimension > |
|
using | InputVectorType = Vector< double, Self::InputSpaceDimension > |
|
using | InputVnlVectorType = vnl_vector_fixed< double, Self::InputSpaceDimension > |
|
using | InverseJacobianPositionType = vnl_matrix_fixed< ParametersValueType, VInputDimension, VOutputDimension > |
|
using | InverseMatrixType = Matrix< double, Self::InputSpaceDimension, Self::OutputSpaceDimension > |
|
using | JacobianPositionType = vnl_matrix_fixed< ParametersValueType, VOutputDimension, VInputDimension > |
|
using | JacobianType = Array2D< ParametersValueType > |
|
using | MatrixType = Matrix< double, Self::OutputSpaceDimension, Self::InputSpaceDimension > |
|
using | OffsetType = OutputVectorType |
|
using | OutputCovariantVectorType = CovariantVector< double, Self::OutputSpaceDimension > |
|
using | OutputPointType = Point< double, Self::OutputSpaceDimension > |
|
using | OutputVectorType = Vector< double, Self::OutputSpaceDimension > |
|
using | OutputVnlVectorType = vnl_vector_fixed< double, Self::OutputSpaceDimension > |
|
using | ParametersValueType = typename ParametersType::ValueType |
|
using | Pointer = SmartPointer< Self > |
|
using | ScalarType = ParametersValueType |
|
using | Self = VersorTransform |
|
using | Superclass = Rigid3DTransform< double > |
|
using | VersorType = Versor< double > |
|
using | VnlQuaternionType = vnl_quaternion< double > |
|
using | CenterType = InputPointType |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | InputCovariantVectorType = CovariantVector< double, Self::InputSpaceDimension > |
|
using | InputPointType = Point< double, Self::InputSpaceDimension > |
|
using | InputVectorType = Vector< double, Self::InputSpaceDimension > |
|
using | InputVnlVectorType = vnl_vector_fixed< double, Self::InputSpaceDimension > |
|
using | InverseJacobianPositionType = vnl_matrix_fixed< ParametersValueType, VInputDimension, VOutputDimension > |
|
using | InverseMatrixType = Matrix< double, Self::InputSpaceDimension, Self::OutputSpaceDimension > |
|
using | InverseTransformBasePointer = typename InverseTransformBaseType::Pointer |
|
using | InverseTransformBaseType = typename Superclass::InverseTransformBaseType |
|
using | JacobianPositionType = vnl_matrix_fixed< ParametersValueType, VOutputDimension, VInputDimension > |
|
using | JacobianType = Array2D< ParametersValueType > |
|
using | MatrixType = Matrix< double, Self::OutputSpaceDimension, Self::InputSpaceDimension > |
|
using | MatrixValueType = typename MatrixType::ValueType |
|
using | OffsetType = OutputVectorType |
|
using | OutputCovariantVectorType = CovariantVector< double, Self::OutputSpaceDimension > |
|
using | OutputPointType = Point< double, Self::OutputSpaceDimension > |
|
using | OutputVectorType = Vector< double, Self::OutputSpaceDimension > |
|
using | OutputVectorValueType = typename OutputVectorType::ValueType |
|
using | OutputVnlVectorType = vnl_vector_fixed< double, Self::OutputSpaceDimension > |
|
using | Pointer = SmartPointer< Self > |
|
using | ScalarType = ParametersValueType |
|
using | Self = Rigid3DTransform |
|
using | Superclass = MatrixOffsetTransformBase< double, 3, 3 > |
|
using | TranslationType = OutputVectorType |
|
using | CenterType = InputPointType |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | InputCovariantVectorType = CovariantVector< double, Self::InputSpaceDimension > |
|
using | InputDiffusionTensor3DType = DiffusionTensor3D< double > |
|
using | InputPointType = Point< double, Self::InputSpaceDimension > |
|
using | InputPointValueType = typename InputPointType::ValueType |
|
using | InputSymmetricSecondRankTensorType = SymmetricSecondRankTensor< double, VInputDimension > |
|
using | InputTensorEigenVectorType = CovariantVector< double, InputDiffusionTensor3DType::Dimension > |
|
using | InputVectorPixelType = VariableLengthVector< double > |
|
using | InputVectorType = Vector< double, Self::InputSpaceDimension > |
|
using | InputVnlVectorType = vnl_vector_fixed< double, Self::InputSpaceDimension > |
|
using | InverseJacobianPositionType = vnl_matrix_fixed< ParametersValueType, VInputDimension, VOutputDimension > |
|
using | InverseMatrixType = Matrix< double, Self::InputSpaceDimension, Self::OutputSpaceDimension > |
|
using | InverseTransformBasePointer = typename InverseTransformBaseType::Pointer |
|
using | InverseTransformBaseType = typename Superclass::InverseTransformBaseType |
|
using | InverseTransformType = MatrixOffsetTransformBase< double, VOutputDimension, VInputDimension > |
|
using | JacobianPositionType = vnl_matrix_fixed< ParametersValueType, VOutputDimension, VInputDimension > |
|
using | JacobianType = Array2D< ParametersValueType > |
|
using | MatrixType = Matrix< double, Self::OutputSpaceDimension, Self::InputSpaceDimension > |
|
using | MatrixValueType = typename MatrixType::ValueType |
|
using | OffsetType = OutputVectorType |
|
using | OffsetValueType = typename OffsetType::ValueType |
|
using | OutputCovariantVectorType = CovariantVector< double, Self::OutputSpaceDimension > |
|
using | OutputDiffusionTensor3DType = DiffusionTensor3D< double > |
|
using | OutputPointType = Point< double, Self::OutputSpaceDimension > |
|
using | OutputPointValueType = typename OutputPointType::ValueType |
|
using | OutputSymmetricSecondRankTensorType = SymmetricSecondRankTensor< double, VOutputDimension > |
|
using | OutputVectorPixelType = VariableLengthVector< double > |
|
using | OutputVectorType = Vector< double, Self::OutputSpaceDimension > |
|
using | OutputVectorValueType = typename OutputVectorType::ValueType |
|
using | OutputVnlVectorType = vnl_vector_fixed< double, Self::OutputSpaceDimension > |
|
using | Pointer = SmartPointer< Self > |
|
using | ScalarType = ParametersValueType |
|
using | Self = MatrixOffsetTransformBase |
|
using | Superclass = Transform< double, VInputDimension, VOutputDimension > |
|
using | TranslationType = OutputVectorType |
|
using | TranslationValueType = typename TranslationType::ValueType |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | DerivativeType = Array< ParametersValueType > |
|
using | DirectionChangeMatrix = Matrix< double, Self::OutputSpaceDimension, Self::InputSpaceDimension > |
|
using | FixedParametersType = OptimizerParameters< FixedParametersValueType > |
|
using | FixedParametersValueType = double |
|
using | InputCovariantVectorType = CovariantVector< double, VInputDimension > |
|
using | InputDiffusionTensor3DType = DiffusionTensor3D< double > |
|
using | InputDirectionMatrix = Matrix< double, Self::InputSpaceDimension, Self::InputSpaceDimension > |
|
using | InputPointType = Point< double, VInputDimension > |
|
using | InputSymmetricSecondRankTensorType = SymmetricSecondRankTensor< double, VInputDimension > |
|
using | InputVectorPixelType = VariableLengthVector< double > |
|
using | InputVectorType = Vector< double, VInputDimension > |
|
using | InputVnlVectorType = vnl_vector_fixed< double, VInputDimension > |
|
using | InverseJacobianPositionType = vnl_matrix_fixed< ParametersValueType, VInputDimension, VOutputDimension > |
|
using | InverseTransformBasePointer = typename InverseTransformBaseType::Pointer |
|
using | InverseTransformBaseType = Transform< double, VOutputDimension, VInputDimension > |
|
using | JacobianPositionType = vnl_matrix_fixed< ParametersValueType, VOutputDimension, VInputDimension > |
|
using | JacobianType = Array2D< ParametersValueType > |
|
using | MatrixType = Matrix< double, Self::OutputSpaceDimension, Self::InputSpaceDimension > |
|
using | NumberOfParametersType = IdentifierType |
|
using | OutputCovariantVectorType = CovariantVector< double, VOutputDimension > |
|
using | OutputDiffusionTensor3DType = DiffusionTensor3D< double > |
|
using | OutputDirectionMatrix = Matrix< double, Self::OutputSpaceDimension, Self::OutputSpaceDimension > |
|
using | OutputPointType = Point< double, VOutputDimension > |
|
using | OutputSymmetricSecondRankTensorType = SymmetricSecondRankTensor< double, VOutputDimension > |
|
using | OutputVectorPixelType = VariableLengthVector< double > |
|
using | OutputVectorType = Vector< double, VOutputDimension > |
|
using | OutputVnlVectorType = vnl_vector_fixed< double, VOutputDimension > |
|
using | ParametersType = OptimizerParameters< ParametersValueType > |
|
using | ParametersValueType = double |
|
using | Pointer = SmartPointer< Self > |
|
using | ScalarType = ParametersValueType |
|
using | Self = Transform |
|
using | Superclass = TransformBaseTemplate< double > |
|
using | TransformCategoryEnum = TransformBaseTemplateEnums::TransformCategory |
|
using | ConstPointer = SmartPointer< const Self > |
|
using | FixedParametersType = OptimizerParameters< FixedParametersValueType > |
|
using | FixedParametersValueType = double |
|
using | NumberOfParametersType = IdentifierType |
|
using | ParametersType = OptimizerParameters< ParametersValueType > |
|
using | ParametersValueType = double |
|
using | Pointer = SmartPointer< Self > |
|
using | Self = TransformBaseTemplate |
|
using | Superclass = Object |
|
using | TransformCategoryEnum = TransformBaseTemplateEnums::TransformCategory |
|
using | TransformCategoryType = TransformCategoryEnum |
|
|
void | ComputeJacobianWithRespectToParameters (const InputPointType &p, JacobianType &jacobian) const override |
|
const char * | GetNameOfClass () const override |
|
const ParametersType & | GetParameters () const override |
|
virtual const ScaleVectorType & | GetScale () const |
|
void | SetIdentity () override |
|
void | SetParameters (const ParametersType ¶meters) override |
|
void | SetScale (const ScaleVectorType &scale) |
|
|
void | SetMatrix (const MatrixType &matrix) override |
|
void | SetMatrix (const MatrixType &matrix, const TParametersValueType tolerance) override |
|
void | ComputeJacobianWithRespectToParameters (const InputPointType &p, JacobianType &jacobian) const override |
|
const char * | GetNameOfClass () const override |
|
const ParametersType & | GetParameters () const override |
|
void | SetParameters (const ParametersType ¶meters) override |
|
void | UpdateTransformParameters (const DerivativeType &update, double factor=1.0) override |
|
void | ComputeJacobianWithRespectToParameters (const InputPointType &p, JacobianType &jacobian) const override |
|
const char * | GetNameOfClass () const override |
|
const ParametersType & | GetParameters () const override |
|
virtual const VersorType & | GetVersor () const |
|
void | SetIdentity () override |
|
void | SetParameters (const ParametersType ¶meters) override |
|
void | SetRotation (const AxisType &axis, AngleType angle) |
|
void | SetRotation (const VersorType &versor) |
|
const char * | GetNameOfClass () const override |
|
bool | MatrixIsOrthogonal (const MatrixType &matrix, const double tolerance=MatrixOrthogonalityTolerance< double >::GetTolerance()) |
|
void | SetMatrix (const MatrixType &matrix) override |
|
virtual void | SetMatrix (const MatrixType &matrix, const double tolerance) |
|
void | SetParameters (const ParametersType ¶meters) override |
|
void | Translate (const OffsetType &offset, bool pre=false) |
|
void | Compose (const Self *other, bool pre=false) |
|
void | ComputeInverseJacobianWithRespectToPosition (const InputPointType &x, InverseJacobianPositionType &jac) const override |
|
void | ComputeJacobianWithRespectToParameters (const InputPointType &p, JacobianType &jacobian) const override |
|
virtual void | ComputeJacobianWithRespectToPosition (const InputPointType &, JacobianPositionType &) const |
|
void | ComputeJacobianWithRespectToPosition (const InputPointType &x, JacobianPositionType &jac) const override |
|
const InputPointType & | GetCenter () const |
|
const FixedParametersType & | GetFixedParameters () const override |
|
InverseTransformBasePointer | GetInverseTransform () const override |
|
virtual const MatrixType & | GetMatrix () const |
|
const char * | GetNameOfClass () const override |
|
const OutputVectorType & | GetOffset () const |
|
const ParametersType & | GetParameters () const override |
|
TransformCategoryEnum | GetTransformCategory () const override |
|
const OutputVectorType & | GetTranslation () const |
|
bool | IsLinear () const override |
|
void | SetFixedParameters (const FixedParametersType &) override |
|
virtual void | SetIdentity () |
|
void | SetParameters (const ParametersType ¶meters) override |
|
virtual OutputCovariantVectorType | TransformCovariantVector (const InputCovariantVectorType &) const |
|
OutputCovariantVectorType | TransformCovariantVector (const InputCovariantVectorType &vec) const override |
|
virtual OutputCovariantVectorType | TransformCovariantVector (const InputCovariantVectorType &vector, const InputPointType &point) const |
|
virtual OutputVectorPixelType | TransformCovariantVector (const InputVectorPixelType &) const |
|
OutputVectorPixelType | TransformCovariantVector (const InputVectorPixelType &vect) const override |
|
virtual OutputVectorPixelType | TransformCovariantVector (const InputVectorPixelType &vector, const InputPointType &point) const |
|
virtual OutputDiffusionTensor3DType | TransformDiffusionTensor3D (const InputDiffusionTensor3DType &) const |
|
virtual OutputDiffusionTensor3DType | TransformDiffusionTensor3D (const InputDiffusionTensor3DType &inputTensor, const InputPointType &point) const |
|
OutputDiffusionTensor3DType | TransformDiffusionTensor3D (const InputDiffusionTensor3DType &tensor) const override |
|
virtual OutputVectorPixelType | TransformDiffusionTensor3D (const InputVectorPixelType &) const |
|
virtual OutputVectorPixelType | TransformDiffusionTensor3D (const InputVectorPixelType &inputTensor, const InputPointType &point) const |
|
OutputVectorPixelType | TransformDiffusionTensor3D (const InputVectorPixelType &tensor) const override |
|
OutputPointType | TransformPoint (const InputPointType &point) const override |
|
virtual OutputSymmetricSecondRankTensorType | TransformSymmetricSecondRankTensor (const InputSymmetricSecondRankTensorType &) const |
|
OutputSymmetricSecondRankTensorType | TransformSymmetricSecondRankTensor (const InputSymmetricSecondRankTensorType &inputTensor) const override |
|
virtual OutputSymmetricSecondRankTensorType | TransformSymmetricSecondRankTensor (const InputSymmetricSecondRankTensorType &inputTensor, const InputPointType &point) const |
|
virtual OutputVectorPixelType | TransformSymmetricSecondRankTensor (const InputVectorPixelType &) const |
|
OutputVectorPixelType | TransformSymmetricSecondRankTensor (const InputVectorPixelType &inputTensor) const override |
|
virtual OutputVectorPixelType | TransformSymmetricSecondRankTensor (const InputVectorPixelType &inputTensor, const InputPointType &point) const |
|
virtual OutputVectorPixelType | TransformVector (const InputVectorPixelType &) const |
|
OutputVectorPixelType | TransformVector (const InputVectorPixelType &vect) const override |
|
virtual OutputVectorPixelType | TransformVector (const InputVectorPixelType &vector, const InputPointType &point) const |
|
virtual OutputVectorType | TransformVector (const InputVectorType &) const |
|
OutputVectorType | TransformVector (const InputVectorType &vect) const override |
|
virtual OutputVectorType | TransformVector (const InputVectorType &vector, const InputPointType &point) const |
|
virtual OutputVnlVectorType | TransformVector (const InputVnlVectorType &) const |
|
OutputVnlVectorType | TransformVector (const InputVnlVectorType &vect) const override |
|
virtual OutputVnlVectorType | TransformVector (const InputVnlVectorType &vector, const InputPointType &point) const |
|
void | SetOffset (const OutputVectorType &offset) |
|
void | SetCenter (const InputPointType ¢er) |
|
void | SetTranslation (const OutputVectorType &translation) |
|
bool | GetInverse (InverseTransformType *inverse) const |
|
virtual void | ComputeJacobianWithRespectToParametersCachedTemporaries (const InputPointType &p, JacobianType &jacobian, JacobianType &) const |
|
void | CopyInFixedParameters (const FixedParametersValueType *const begin, const FixedParametersValueType *const end) override |
|
void | CopyInParameters (const ParametersValueType *const begin, const ParametersValueType *const end) override |
|
const FixedParametersType & | GetFixedParameters () const override |
|
unsigned int | GetInputSpaceDimension () const override |
|
bool | GetInverse (Self *) const |
|
virtual InverseTransformBasePointer | GetInverseTransform () const |
|
const char * | GetNameOfClass () const override |
|
virtual NumberOfParametersType | GetNumberOfFixedParameters () const |
|
virtual NumberOfParametersType | GetNumberOfLocalParameters () const |
|
NumberOfParametersType | GetNumberOfParameters () const override |
|
unsigned int | GetOutputSpaceDimension () const override |
|
const ParametersType & | GetParameters () const override |
|
TransformCategoryEnum | GetTransformCategory () const override |
|
std::string | GetTransformTypeAsString () const override |
|
virtual bool | IsLinear () const |
|
| itkCloneMacro (Self) |
|
void | SetFixedParameters (const FixedParametersType &) override=0 |
|
void | SetParameters (const ParametersType &) override=0 |
|
void | SetParametersByValue (const ParametersType &p) override |
|
virtual OutputCovariantVectorType | TransformCovariantVector (const InputCovariantVectorType &) const |
|
virtual OutputCovariantVectorType | TransformCovariantVector (const InputCovariantVectorType &vector, const InputPointType &point) const |
|
virtual OutputVectorPixelType | TransformCovariantVector (const InputVectorPixelType &) const |
|
virtual OutputVectorPixelType | TransformCovariantVector (const InputVectorPixelType &vector, const InputPointType &point) const |
|
virtual OutputDiffusionTensor3DType | TransformDiffusionTensor3D (const InputDiffusionTensor3DType &) const |
|
virtual OutputDiffusionTensor3DType | TransformDiffusionTensor3D (const InputDiffusionTensor3DType &inputTensor, const InputPointType &point) const |
|
virtual OutputVectorPixelType | TransformDiffusionTensor3D (const InputVectorPixelType &) const |
|
virtual OutputVectorPixelType | TransformDiffusionTensor3D (const InputVectorPixelType &inputTensor, const InputPointType &point) const |
|
virtual OutputPointType | TransformPoint (const InputPointType &) const=0 |
|
virtual OutputSymmetricSecondRankTensorType | TransformSymmetricSecondRankTensor (const InputSymmetricSecondRankTensorType &) const |
|
virtual OutputSymmetricSecondRankTensorType | TransformSymmetricSecondRankTensor (const InputSymmetricSecondRankTensorType &inputTensor, const InputPointType &point) const |
|
virtual OutputVectorPixelType | TransformSymmetricSecondRankTensor (const InputVectorPixelType &) const |
|
virtual OutputVectorPixelType | TransformSymmetricSecondRankTensor (const InputVectorPixelType &inputTensor, const InputPointType &point) const |
|
virtual OutputVectorPixelType | TransformVector (const InputVectorPixelType &) const |
|
virtual OutputVectorPixelType | TransformVector (const InputVectorPixelType &vector, const InputPointType &point) const |
|
virtual OutputVectorType | TransformVector (const InputVectorType &) const |
|
virtual OutputVectorType | TransformVector (const InputVectorType &vector, const InputPointType &point) const |
|
virtual OutputVnlVectorType | TransformVector (const InputVnlVectorType &) const |
|
virtual OutputVnlVectorType | TransformVector (const InputVnlVectorType &vector, const InputPointType &point) const |
|
virtual void | UpdateTransformParameters (const DerivativeType &update, ParametersValueType factor=1.0) |
|
virtual void | ComputeJacobianWithRespectToParameters (const InputPointType &, JacobianType &) const=0 |
|
virtual void | ComputeJacobianWithRespectToPosition (const InputPointType &, JacobianPositionType &) const |
|
template< typename TImage > std std::enable_if_t< TImage::ImageDimension==VInputDimension &&TImage::ImageDimension==VOutputDimension, void > | ApplyToImageMetadata (SmartPointer< TImage > image) const |
|
virtual void | CopyInFixedParameters (const FixedParametersValueType *const begin, const FixedParametersValueType *const end)=0 |
|
virtual void | CopyInParameters (const ParametersValueType *const begin, const ParametersValueType *const end)=0 |
|
virtual const FixedParametersType & | GetFixedParameters () const=0 |
|
virtual unsigned int | GetInputSpaceDimension () const=0 |
|
virtual NumberOfParametersType | GetNumberOfParameters () const=0 |
|
virtual unsigned int | GetOutputSpaceDimension () const=0 |
|
virtual const ParametersType & | GetParameters () const=0 |
|
virtual TransformCategoryEnum | GetTransformCategory () const=0 |
|
virtual std::string | GetTransformTypeAsString () const=0 |
|
| ITK_DISALLOW_COPY_AND_MOVE (TransformBaseTemplate) |
|
| itkGetConstReferenceMacro (InputSpaceName, std::string) |
|
| itkGetConstReferenceMacro (OutputSpaceName, std::string) |
|
| itkOverrideGetNameOfClassMacro (TransformBaseTemplate) |
|
| itkSetMacro (InputSpaceName, std::string) |
|
| itkSetMacro (OutputSpaceName, std::string) |
|
virtual void | SetFixedParameters (const FixedParametersType &)=0 |
|
virtual void | SetParameters (const ParametersType &)=0 |
|
virtual void | SetParametersByValue (const ParametersType &p)=0 |
|