Create an ANTsImage object from a numpy array

    ANTsR function: `as.antsImage`

    Arguments
    ---------
    data : ndarray
        image data array

    origin : tuple/list
        image origin

    spacing : tuple/list
        image spacing

    direction : list/ndarray
        image direction

    has_components : boolean
        whether the image has components

    Returns
    -------
    ANTsImage
        image with given data and any given information

def from_numpy(data, origin=None, spacing=None, direction=None, has_components=False, is_rgb=False):
    """
    Create an ANTsImage object from a numpy array

    ANTsR function: `as.antsImage`

    Arguments
    ---------
    data : ndarray
        image data array

    origin : tuple/list
        image origin

    spacing : tuple/list
        image spacing

    direction : list/ndarray
        image direction

    has_components : boolean
        whether the image has components

    Returns
    -------
    ANTsImage
        image with given data and any given information
    """
    data = data.astype('float32') if data.dtype.name == 'float64' else data
    img = _from_numpy(data.T.copy(), origin, spacing, direction, has_components, is_rgb)
    return img