17#ifndef __registration_warp_convert_h__
18#define __registration_warp_convert_h__
27 namespace Registration
33 template <
class ImageType>
36 auto kernel = [&] (ImageType& input, ImageType& output) {
38 output.row(3) = (transform.
voxel2scanner * voxel).
template cast<typename ImageType::value_type> () + Eigen::Vector3d (input.row(3));
43 template <
class ImageType>
46 auto kernel = [&] (ImageType& input, ImageType& output) {
48 output.row(3) = Eigen::Vector3d(input.row(3)) - transform.
voxel2scanner * voxel;
void deformation2displacement(ImageType &input, ImageType &output)
void displacement2deformation(ImageType &input, ImageType &output)
double default_type
the default type used throughout MRtrix
ThreadedLoopRunOuter< decltype(Loop(vector< size_t >()))> ThreadedLoop(const HeaderType &source, const vector< size_t > &outer_axes, const vector< size_t > &inner_axes)
Multi-threaded loop object.