re-scale size ratio after applying rotation. The scale will change the 'physical pixel size' of the image (scale >1 will reduce the pixel size, scale<1 will increase it). Note re-scaling will not change the image size in pixels; to do that, use command resample.

Attention: scale cannot be set as 0.

interpolation_method

interpolation method used to transform the image (default is set to "quadratic" in global_def.py).

Output

output

the transformed image

Method

The rotation is performed first, second the shift (in one interpolation step). The scale will change the 'physical pixel size' of the image (scale >1 will reduce the pixel size, scale<1 will increase it). Note rescaling will not change the image size in pixels; to do that, use command resample.

Options

interpolation_method

"linear" use linear interpolation to sample the rotated image

"quadratic" use quadratic interpolation to sample the rotated image

"gridding" use gridding to sample the rotated image ( This method is very slow )

Description

The rotation, shift, and scaling are achieved using the following procedure:

Construct a transformation matrix (a class objection of C++ or python) from the in_plane angles through Transform3D.

set translation attribute of the object to take care of translation shifts.

set scale attribute of the object to include scaling factor.

apply the class object to input image.

See P. R. Baldwin et al. below to find out how to construct transformation class.