Skip to content

nx10/fineslice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fineslice

Build codecov Ruff stability-stable BSD 3-Clause License pages

fineslice is a lightweight sampler for 3D-affine transformed images (commonly used in neuroscience) implemented in pure Python + NumPy.

It does not make any assumptions about the data. Pass any image texture and affine matrix directly into it.

Features

  • Precision sampling (no need to 're-sample' and loose precision)
  • Automatically finds optimal dimensions
  • Only depends on NumPy

Usage with nibabel

For the best performance directly pass in the nibabel data object as a texture:

import nibabel as nib
import fineslice as fine

img = nib.load('my_image.nii.gz')

out = fine.sample_0d(
    texture=img.dataobj,
    affine=img.affine,
    out_position=(0, 0, 0)
)