[Neuroimaging] ANN: DIPY 1.0.0 - a historic release

Eleftherios Garyfallidis garyfallidis at gmail.com
Fri Aug 16 16:46:31 EDT 2019


We are excited to announce a new major and historic release of Diffusion
Imaging in Python (DIPY). DIPY 1.0.0 is out!

Please cite using the following DOI: 10.3389/fninf.2014.00008
<https://www.ncbi.nlm.nih.gov/pubmed/24600385>

DIPY 1.0.0 (Monday, 5 August 2019)

This release received contributions from 17 developers (the full release
notes are at:
https://dipy.org/documentation/1.0.0./release_notes/release1.0/). Thank you
all for your contributions and feedback!

A new DIPY era is starting: this release is compatible with python 3.5+ and
breaks backward compatibility with 0.x.x. Please click here
<https://dipy.org/documentation/1.0.0./api_changes/> to check API changes
or look at the end of this email. The 0.16.x series will have extended
bug-fix-only support for Python 2.7 until June 2020.

Highlights of this release include:

   -

   Critical API changes <https://dipy.org/documentation/1.0.0./api_changes/>
   -

   New awesome website <http://dipy.org>
   -

   Large refactoring of tracking API
   -

   New denoising algorithm: MP-PCA
   -

   New Gibbs ringing removal
   -

   New interpolation module: dipy.core.interpolation
   -

   New reconstruction models: Mean Signal DKI, MTMS-CSD
   -

   Increased coordinate systems consistency
   -

   New object to manage safely tractography data: StatefulTractogram
   -

   New command line interface for downloading datasets: FetchFlow
   -

   Horizon updated, medical visualization interface powered by QuickBundlesX
   -

   Removed all deprecated functions and parameters
   -

   Removed compatibility with Python 2.7
   -

   Updated minimum dependencies version (Numpy, Scipy)
   -

   All tutorials updated to API changes and 3 new added
   -

   Large documentation update
   -

   Closed 289 issues and merged 98 pull requests

Note:

   -

   DIPY 0.16.x will be the last series to support python 2. The next
   release, DIPY 1.0,  will support python 3 only.



To upgrade or install <http://dipy.org/release0.10.html> DIPY

Run the following command in your terminal:
<http://dipy.org/release0.10.html>

pip install --upgrade dipy

or

conda install -c conda-forge dipy

This version of DIPY depends on nibabel (2.4.0+).

For visualization you need FURY (0.3.0+).

Questions or suggestions?



For any questions go to http://dipy.org, or send an e-mail to
dipy at python.org <neuroimaging at python.org>

We also have an instant messaging service and chat room available at
https://gitter.im/nipy/dipy

On behalf of the DIPY developers,

Eleftherios Garyfallidis, Ariel Rokem, Serge Koudoro

https://dipy.org/contributors

API Changes

Some of the changes introduced in the 1.0 release will break backwards
compatibility with previous versions. This release is compatible with
Python 3.5+

Reconstruction

The spherical harmonics bases mrtrix and fibernav have been renamed to
tournier07 and descoteaux07 after the deprecation cycle started in the 0.15
release.

We changed dipy.data.default_sphere from symmetric724 to repulsion724 which
is more evenly distributed.

Segmentation

The API of dipy.segment.mask.median_otsu has changed in the following ways:
if you are providing a 4D volume, vol_idx is now a required argument. The
order of parameters has also changed.

Tractogram loading and saving

The API of dipy.io.streamlines.load_tractogram and
dipy.io.streamlines.save_tractogram has changed in the following ways: When
loading trk, tck, vtk, fib, or dpy) a reference nifti file is needed to
guarantee proper spatial transformation handling.

Spatial transformation handling

Functions from dipy.tracking.streamlines were modified to enforce the
affine parameter and uniform docstrings. deform_streamlines select_by_rois,
orient_by_rois, _extract_vals and values_from_volume.

Functions from dipy.tracking.utils were modified to enforce the affine
parameter and uniform docstring. density_map connectivity_matrix,
seeds_from_mask, random_seeds_from_mask, target, target_line_based, near_roi,
length and path_length were all modified.

The function affine_for_trackvis, move_streamlines, flexi_tvis_affine and
get_flexi_tvis_affine were deleted.

Functions from dipy.tracking.life were modified to enforce the affine
parameter and uniform docstring. voxel2streamline, setup and fit from class
FiberModel were all modified.

afq_profile from dipy.stats.analysis was modified in a similar way.

Simulations

   -

   dipy.sims.voxel.SingleTensor has been replaced by
   dipy.sims.voxel.single_tensor
   -

   dipy.sims.voxel.MultiTensor has been replaced by
   dipy.sims.voxel.multi_tensor
   -

   dipy.sims.voxel.SticksAndBall has been replaced by
   dipy.sims.voxel.sticks_and_ball

Interpolation

All interpolation functions have been moved to a new module name
dipy.core.interpolation

Tracking

The voxel_size parameter has been removed from the following function:

   -

   dipy.tracking.utils.connectivity_matrix
   -

   dipy.tracking.utils.density_map
   -

   dipy.tracking.utils.stremline_mapping
   -

   dipy.tracking._util._mapping_to_voxel

The dipy.reconst.peak_direction_getter.PeaksAndMetricsDirectionGetter has
been renamed dipy.reconst.peak_direction_getter.EuDXDirectionGetter.

The LocalTracking and ParticleFilteringTracking functions were moved from
dipy.tracking.local.localtrackingto dipy.tracking.local_tracking. They now
need to be imported from dipy.tracking.local_tracking.

   -

   functions argument tissue_classifier were renamed stopping_criterion

The TissueClassifier were renamed StoppingCriterion and moved from
dipy.tracking.local.tissue_classifier to dipy.tracking.stopping_criterion.
They now need to be imported from dipy.tracking.stopping_criterion.

   -

   TissueClassifier -> StoppingCriterion
   -

   BinaryTissueClassifier -> BinaryStoppingCriterion
   -

   ThresholdTissueClassifier -> ThresholdStoppingCriterion
   -

   ConstrainedTissueClassifier -> AnatomicalStoppingCriterion
   -

   ActTissueClassifier -> ActStoppingCriterion
   -

   CmcTissueClassifier -> CmcStoppingCriterion

The dipy.tracking.local.tissue_classifier.TissueClass was renamed
dipy.tracking.stopping_criterion.StreamlineStatus.

The EuDX tracking function has been removed. EuDX tractography can be
performed using dipy.tracking.local_tracking using
dipy.reconst.peak_direction_getter.EuDXDirectionGetter.

Streamlines

dipy.io.trackvis has been removed. Use dipy.io.streamline instead.

Other

   -

   dipy.external package has been removed.
   -

   dipy.fixes package has been removed.
   -

   dipy.segment.quickbundes module has been removed.
   -

   dipy.reconst.peaks module has been removed.
   -

   Compatibility with Python 2.7 has been removed
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/neuroimaging/attachments/20190816/e7d4e689/attachment.html>


More information about the Neuroimaging mailing list