https://github.com/antsx/antspyt1w

https://github.com/antsx/antspyt1w

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 6 committers (16.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.5%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: ANTsX
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Size: 503 KB
Statistics
  • Stars: 3
  • Watchers: 4
  • Forks: 3
  • Open Issues: 1
  • Releases: 0
Created about 5 years ago · Last pushed about 1 year ago
Metadata Files
Readme License

README.md

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

Function-specific documentation is here.

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

python import antspyt1w antspyt1w.get_data()

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

example processing

```python import os os.environ["TFNUMINTEROPTHREADS"] = "8" os.environ["TFNUMINTRAOPTHREADS"] = "8" os.environ["ITKGLOBALDEFAULTNUMBEROF_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.getdata('PPMI-3803-20120814-MRIT1-I340756', targetextension='.nii.gz' ) img = ants.imageread( 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:

python 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/*

to publish docs

```bash pdoc siq -o docs git add docs/ && git commit -m "DOC: update docs" && git push

Settings → Pages → Source = main, Folder = /docs

```

Owner

  • Name: Advanced Normalization Tools Ecosystem
  • Login: ANTsX
  • Kind: organization
  • Location: Cambridge, MA; Philadelphia, PA; Southern California

Ecosystem supporting multi-modality biomedical image analysis across programming languages.

GitHub Events

Total
  • Push event: 10
Last Year
  • Push event: 10

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 387
  • Total Committers: 6
  • Avg Commits per committer: 64.5
  • Development Distribution Score (DDS): 0.031
Past Year
  • Commits: 44
  • Committers: 1
  • Avg Commits per committer: 44.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
stnava s****a@g****m 375
Nick Tustison n****n@g****m 4
Alex Reardon a****1@u****u 3
trgosselin 6****n 2
EC2 Default User e****r@i****m 2
Ali Ghayoor a****r@B****l 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 11 months ago


Dependencies

requirements.txt pypi
  • PyNomaly >=3.0
  • antspynet >=0.0
  • antspyx >=0.2.7
  • h5py >=2.10.0
  • matplotlib *
  • numpy >=1.19.4
  • pandas >=1.0.1
  • pathlib *
  • pillow *
  • scipy *
  • tensorflow >=2.2
Dockerfile docker
  • python 3.7-slim-buster build
setup.py pypi