Skip to main content

T1w human neuroimage processing with antspyx

Project description

ANTsPyT1w

CircleCI

reference processing for t1-weighted neuroimages (human)

the outputs of these processes can be used for data inspection/cleaning/triage as well for interrogating neuroscientific hypotheses.

this package also keeps track of the latest preferred algorithm variations for production environments.

install by calling (within the source directory):

python setup.py install

or install via pip install antspyt1w

what this will do

  • provide example data

  • brain extraction

  • denoising

  • n4 bias correction

  • brain parcellation into tissues, hemispheres, lobes and regions

  • hippocampus specific segmentation

  • t1 hypointensity segmentation and classification exploratory

  • deformable registration with robust and repeatable parameters

  • registration-based labeling of major white matter tracts

  • helpers that organize and annotate segmentation variables into data frames

  • hypothalamus segmentation FIXME/TODO

the two most time-consuming processes are hippocampus-specific segentation (because it uses augmentation) and registration. both take 10-20 minutes depending on your available computational resources and the data. both could be made computationally cheaper at the cost of accuracy/reliability.

first time setup

import antspyt1w
antspyt1w.get_data()

NOTE: get_data has a force_download option to make sure the latest package data is installed.

example processing

import os
os.environ["TF_NUM_INTEROP_THREADS"] = "8"
os.environ["TF_NUM_INTRAOP_THREADS"] = "8"
os.environ["ITK_GLOBAL_DEFAULT_NUMBER_OF_THREADS"] = "8"

import antspyt1w
import antspynet
import ants

##### get example data + reference templates
# NOTE:  PPMI-3803-20120814-MRI_T1-I340756 is a good example of our naming style
# Study-SubjectID-Date-Modality-UniqueID
# where Modality could also be measurement or something else
fn = antspyt1w.get_data('PPMI-3803-20120814-MRI_T1-I340756', target_extension='.nii.gz' )
img = ants.image_read( fn )

# generalized default processing
myresults = antspyt1w.hierarchical( img, output_prefix = '/tmp/XXX' )

##### organize summary data into data frames - user should pivot these to columns
# and attach to unique IDs when accumulating for large-scale studies
# see below for how to easily pivot into wide format
# https://stackoverflow.com/questions/28337117/how-to-pivot-a-dataframe-in-pandas

An example "full study" (at small scale) is illustrated in ~/.antspyt1w/run_dlbs.py which demonstrates/comments on:

  • how to aggregate dataframes
  • how to pivot to wide format
  • how to join with a demographic/metadata file
  • visualizing basic outcomes.

ssl error

if you get an odd certificate error when calling force_download, try:

import ssl
ssl._create_default_https_context = ssl._create_unverified_context

to publish a release

before doing this - make sure you have a recent run of pip-compile pyproject.toml

rm -r -f build/ antspyt1w.egg-info/ dist/
python3 -m  build .
python3 -m pip install --upgrade twine
python3 -m twine upload --repository antspyt1w dist/*

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

antspyt1w-0.9.4.tar.gz (40.5 kB view details)

Uploaded Source

Built Distribution

antspyt1w-0.9.4-py3-none-any.whl (38.8 kB view details)

Uploaded Python 3

File details

Details for the file antspyt1w-0.9.4.tar.gz.

File metadata

  • Download URL: antspyt1w-0.9.4.tar.gz
  • Upload date:
  • Size: 40.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for antspyt1w-0.9.4.tar.gz
Algorithm Hash digest
SHA256 62e9d1dfc24b472ff0880e7afc5d77276d4d8dc96a9b2bc9c31c070f5f64f26a
MD5 0cbd40dc3b4433b80f16c0a168443882
BLAKE2b-256 db652df63108cbb78cc64cd3d33e7e215253a46de92577934ae0d0c4b1571722

See more details on using hashes here.

File details

Details for the file antspyt1w-0.9.4-py3-none-any.whl.

File metadata

  • Download URL: antspyt1w-0.9.4-py3-none-any.whl
  • Upload date:
  • Size: 38.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for antspyt1w-0.9.4-py3-none-any.whl
Algorithm Hash digest
SHA256 159c80dd2c05f1b494845151a03746348bcbf9c5f4fed4e3d28a9ac7c8619f37
MD5 0bb4a35c9805d474c7a63e7b1e4c7870
BLAKE2b-256 9934fb633c0b761b4afd1f51c051a8d60a36870cc7cab784ca06167d1c511f23

See more details on using hashes here.

Supported by

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