Dash app to generate textures maps from MRI using Advanced Normalization Tools (ANTsPy)
Documentation: https://noel-mni.github.io/noelTexturesPy/
# Linux/macOS (recommended method)
curl -fsSL https://pixi.sh/install.sh | sh
# Alternative methods:
# Homebrew (macOS): brew install pixi
# Add pixi to your PATH (if not automatically added)
export PATH="$HOME/.pixi/bin:$PATH"
echo 'export PATH="$HOME/.pixi/bin:$PATH"' >> ~/.bashrcOS specific installation instructions: https://github.com/NOEL-MNI/noelTexturesPy/wiki/Installation
For local development using pixi:
# Clone the repository
git clone https://github.com/NOEL-MNI/noelTexturesPy.git
cd noelTexturesPy
# Install dependencies and create environment using pixi
pixi install
# Run the application
pixi run textures_app
# Or with custom port
pixi run textures_app --port 9988
# Or in debug mode
pixi run textures_app --debug --port 9988Access the Web UI at http://localhost:9999 (or your specified port)
textures_cli runs the same pipeline without a browser — suitable for batch processing, HPC clusters, and scripted workflows.
# T1 only
textures_cli --t1 sub-001/t1.nii.gz
# T1 + FLAIR, explicit case ID and output directory
textures_cli --t1 sub-001/t1.nii.gz --t2 sub-001/flair.nii.gz \
--case-id sub001 --output-dir ./results/sub-001
# Full help
textures_cli --helpSee the full CLI reference for all options.
docker pull noelmni/textures-py:latest
docker run --rm -p 9999:9999 noelmni/textures-py:latestAccess the Web UI at http://localhost:9999
M1 Apple Silicon supported/tested, M2, M3, M4 untested as of 01-July-2025 (but will likely work without issues)
git clone https://github.com/NOEL-MNI/noelTexturesPy.git
cd noelTexturesPy
PLATFORMS=linux/arm64,linux/amd64
TAG=latest
docker buildx build --push --platform ${PLATFORMS} -t noelmni/pynoel-gui-base:${TAG} base-docker-image/
docker buildx build --push --platform ${PLATFORMS} -t noelmni/textures-py:${TAG} . --build-arg BASE_SHORT_SHA_TAG=${TAG}docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
docker buildx create --name multiarch --driver docker-container --use
docker buildx inspect --bootstrapPlease ensure the file(s) are renamed accordingly before uploading it to noelTexturesPy.
- T1-weighted image must include the string "t1" or "T1" in its filename, and/or
- T2-weighted (or FLAIR) image must include either "t2", "T2", "flair", or "FLAIR"

