template<typename TImageSequence, typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
class rtk::UnwarpSequenceImageFilter< TImageSequence, TDVFImageSequence, TImage, TDVFImage >
Finds the image sequence that, once warped, equals the input image sequence.
This filter attempts to invert a deformation by Conjugate Gradient optimization.
- Test:
- rtkunwarpsequencetest.cxx
- Author
- Cyril Mory
Definition at line 81 of file rtkUnwarpSequenceImageFilter.h.
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
The volume and the projections must have different requested regions
Reimplemented from itk::ProcessObject.
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
The volume and the projections must have different requested regions
Reimplemented from itk::ProcessObject.
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
Get the motion vector field used in input 1
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
Number of conjugate gradient iterations
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
Phase shift to simulate phase estimation errors
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
Set and Get for the UseCudaCyclicDeformation variable
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
Method for creation through the object factory.
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
Set the motion vector field used in input 1
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
Number of conjugate gradient iterations
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
Phase shift to simulate phase estimation errors
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
Set and Get for the UseCudaCyclicDeformation variable
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
virtual void rtk::UnwarpSequenceImageFilter< TImageSequence, TDVFImageSequence, TImage, TDVFImage >::SetUseNearestNeighborInterpolationInWarping |
( |
bool |
_arg | ) |
|
|
virtual |
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
|
inlineoverrideprotectedvirtual |
The inputs of this filter have the same type (float, 3) but not the same meaning It is normal that they do not occupy the same physical space. Therefore this check must be removed
Reimplemented from itk::ProcessObject.
Definition at line 171 of file rtkUnwarpSequenceImageFilter.h.
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>
template<typename TImageSequence , typename TDVFImageSequence = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension>, typename TImage = itk::Image<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, typename TDVFImage = itk::Image<itk::CovariantVector<typename TImageSequence::ValueType, TImageSequence::ImageDimension - 1>, TImageSequence::ImageDimension - 1>>