[Neuroimaging] Nibabel API change - always read as float

Ariel Rokem arokem at gmail.com
Sat Apr 22 22:15:57 EDT 2017


On Tue, Apr 18, 2017 at 8:01 AM, Matthew Brett <matthew.brett at gmail.com>
wrote:

> Hi,
>
> On Wed, Jul 22, 2015 at 3:53 PM, Satrajit Ghosh <satra at mit.edu> wrote:
> > hi matthew,
> >
> >> I'm not sure what you mean by 'did not interpret this' unless you are
> >> agreeing with me that the niftiio library gives no clues as what the
> >> intention for the in-memory type was.  If anything I think that
> >> supports my reading that the authors had not considered the
> >> interpretation of "scl_slope != 0 -> in-memory float".
> >
> >
> > i simply meant they left any interpretation of how to scale or change of
> > in-memory data type to the end developer.
> >
> >> I can surely attach the raw scalefactors to the array proxy (dataobj),
> >
> >
> > that would be great
> >
> >>
> >> but I think it's a terrible idea to use the scl_slope == 0 as an
> >> indication for in-memory type, because it's not a convention that (as
> >> far as I know) anyone else uses,
> >
> >
> > all the examples of the code bases i provided in fact leave the in-memory
> > type to be the same as the native dtype for scalefactors (0, X) and (1,
> 0).
> > i agree, that this is an implementation of the standard as interpreted by
> > those developers, similar to present nibabel. i do agree that nifti
> authors
> > had nothing to say about such an interpretation.
>
> Following up on this one, much later - I have a new proposal, that I
> have written up here:
>
> https://github.com/nipy/nibabel/wiki/BIAP8
>
> Shortest possible summary:
>
> * add "get_fdata" method to images, returning floating point data;
> * deprecate "get_data" method in one year;
> * raise error for "get_data" method in three years.
>
>
Just to clarify: after the removal of "get_data", what would a user need to
do to produce the current behavior of a `get_data()` call?

Something like this was mentioned somewhere along this thread:

data = img.dataobj.get_unscaled()

Is that it?

This has the advantage that older code using nibabel will not silently
> return a different result, but will error, with an informative
> message, for the foreseeable future.
>
> Any thoughts on this version?
>
> Cheers,
>
> Matthew
> _______________________________________________
> Neuroimaging mailing list
> Neuroimaging at python.org
> https://mail.python.org/mailman/listinfo/neuroimaging
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/neuroimaging/attachments/20170422/5c81a4df/attachment.html>


More information about the Neuroimaging mailing list