R: Obtain or replace the "xform" transforms for an image

xform {RNifti} | R Documentation

## Obtain or replace the “xform” transforms for an image

### Description

These functions convert the “qform” or “sform” information in a NIfTI header to or from a corresponding affine matrix. These two “xform” mechanisms are defined by the NIfTI standard, and may both be in use in a particular image header. They define the relationship between the storage order of the image and real space.

### Usage

    xform(image, useQuaternionFirst = TRUE)

    qform(x) <- value

    sform(x) <- value

    orientation(x, useQuaternionFirst = TRUE)

    orientation(x) <- value

### Arguments

`image, x` | An image, in any acceptable form (see `retrieveNifti`).
`useQuaternionFirst` | A single logical value. If `TRUE`, the “qform” matrix will be used first, if it is defined; otherwise the “sform” matrix will take priority.
`value` | A new 4x4 qform or sform matrix, or orientation string. If a matrix has a `"code"` attribute, the appropriate qform or sform code is also set.

### Value

For `xform`, an affine matrix corresponding to the “qform” or “sform” information in the image header. For `orientation`, a string with three characters indicating the (approximate) orientation of the image. Each character may be ‘R’ for left-to-right, ‘L’ for right-to-left, ‘A’ for posterior-to-anterior, ‘P’ for anterior-to-posterior, ‘S’ for inferior-to-superior, or ‘I’ for superior-to-inferior. The replacement forms return the modified object.

### Note

The qform and sform replacement functions are for advanced users only. Modifying the transforms without knowing what you're doing is usually unwise, as you can make the image object inconsistent.

### Author(s)

Jon Clayden <code@clayden.org>

### References

The NIfTI-1 standard (http://www.nitrc.org/docman/view.php/26/64/nifti1.h) is the definitive reference on “xform” conventions.

### Examples

    im <- readNifti(system.file("extdata", "example.nii.gz", package="RNifti"))
    xform(im)

    # Remove the qform information
    qform(im) <- structure(diag(4), code=0L)

    # The same as above, since the sform is unmodified
    xform(im)

[Package RNifti version 0.7.0 Index]