Skip to main content

Implementation of "Reducing variability in along-tract analysis with diffusion profile realignment".

Project description

Diffusion profile realignment (dpr)

An example and assorted implementation from the manuscript Reducing variability in along-tract analysis with diffusion profile realignment. Have a look at the example on how to use the package and run it on a small example dataset.

To install the package, just run

pip install dpr

The documentation is available at https://dpr.readthedocs.io.

The matlab version

There is also a shiny new version written in matlab, with an assorted example, available in the matlab folder. Feel free to check out and edit the functions as needed for your own usage.

A quick example from the command line

There is also a command line version for easy usage, here in an example for the AFD metric on the left arcuate fasciculus. The text file is already ordered in increasing order for each subject, which have the same distance between every point and are already zero padded accordingly.

We also supply the --exploredti option to remove the header column, --do_graph to save a png file with the results.

We finally resample everything to 75 points with --points 75.

The -f option overwrites the output files and the -v option prints useful informative messages throughout (and are optional).

dpr datasets/af_left_AFD.txt datasets/af_left_AFD_realigned.txt --exploredti --do_graph -f -v --points 75

The output datasets/af_left_AFD_realigned.txt is a text file where each line is a subject and each column is a different point of the along tract analysis.

We also get a png file datasets/af_left_AFD_realigned.png with the before/after realignment process.

Note how the zero padding present in the original data is decreasing the metrics as less and less subjects are present. The realigned metric is instead using padding with Nans, remember to consider/keep track of it in subsequent analysis as needed.

Visualizing the results

We can also draw the p-values (computed separately) over the bundle using the script dpr_make_fancy_graph. This requires the original coordinates, the truncated version between rois and the coordinates to the representative streamline.

dpr_make_fancy_graph datasets/af_left_pval_unaligned.txt datasets/af_left_coordinates.txt datasets/af_left_truncated_coordinates.txt datasets/af_left_average_coordinates.txt 0,2 pvals_unaligned.png --title 'p-values before realignment' -f
dpr_make_fancy_graph datasets/af_left_pval_realigned.txt datasets/af_left_coordinates.txt datasets/af_left_truncated_coordinates.txt datasets/af_left_average_coordinates.txt 0,2 pvals_realigned.png -f

And this is the results

Datasets and reference

The main reference is

Samuel St-Jean, Maxime Chamberland, Max A. Viergever, Alexander Leemans,
Reducing variability in along-tract analysis with diffusion profile realignment,
NeuroImage, 2019. ISSN 1053-811

The data is also available at https://zenodo.org/record/2483169.

The open access manuscript is also available at https://www.sciencedirect.com/science/article/pii/S1053811919305014.

To refer to a specific version of the code, everything is also archived over at https://zenodo.org/record/3248894.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dpr-0.2.2.tar.gz (5.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dpr-0.2.2-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file dpr-0.2.2.tar.gz.

File metadata

  • Download URL: dpr-0.2.2.tar.gz
  • Upload date:
  • Size: 5.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for dpr-0.2.2.tar.gz
Algorithm Hash digest
SHA256 652a7d921c5cc1051fb619916b845557f136d899560fd78f587e115f38835d6b
MD5 53e7d532d2d2ccb3eb1f0988e07d51fd
BLAKE2b-256 f7cb42910ba8e66abe248881097d08f992c08f35ca9665b253a8a8ee8ef4a92a

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpr-0.2.2.tar.gz:

Publisher: pythonpublish.yml on samuelstjean/dpr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dpr-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: dpr-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for dpr-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8471abd0712a9a73ed4f5b94b70bf90211231c8e4a22ae17bbb69f36218f7a2c
MD5 bdd50b1de5c36589a15091a169770e76
BLAKE2b-256 a408ef791e1dbf2099aaa8ee9aa71438def02209182649db214b74a463984859

See more details on using hashes here.

Provenance

The following attestation bundles were made for dpr-0.2.2-py3-none-any.whl:

Publisher: pythonpublish.yml on samuelstjean/dpr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page