This commit introduces a new script, `setup_impact_konfai.sh`, which facilitates a one-time setup for the IMPACT registration pipeline (impact-reg-konfai). The script builds a self-contained shim that includes: - A glibc 2.35 loader and libraries extracted from the niftyreg:2.1.1-ubuntu Docker image. - A self-contained LibTorch 2.8.0 (cu128) library. - A wrapper script that runs the stock elastix-impact binary through the glibc 2.35 loader with the appropriate library paths. The setup ensures compatibility with hosts that do not meet the required glibc and LibTorch versions, allowing the pipeline to function correctly. The script also verifies the installation and provides usage instructions.
1.6 KiB
AGENTS.md
Environment
This project uses a conda environment named longitudinal-313 (Python 3.13).
Activate with:
source /opt/conda/etc/profile.d/conda.sh && conda activate longitudinal-313
Key packages: torch 2.14 (+cu126), torchvision, monai 1.6 (pip, Pipeline C), numpy, scipy, pandas, scikit-learn, scikit-image, matplotlib, nibabel, SimpleITK. Registration toolkits (benchmark, see REGISTRATION_BENCHMARK.md): itk + itk-elastix, antspyx, niftyreg 1.5.69 (conda install -c conda-forge niftyreg, provides reg_aladin), impact-reg-konfai (pip; IMPACT — on this host the elastix binary needs the one-time shim from scripts/setup_impact_konfai.sh), plus the Docker image freesurfer/synthmorph.
Project
Longitudinal (repeated-measures) analysis of medical imaging data. Repo is at an early stage — see README.md for any project notes.
All path config lives in config/paths.json — the external data roots the code reads or writes (data, lee, m6, ntuh_register_inv). Code resolves them through src.common (PATHS dict, path(name) lookup, DATA/d() for data/... paths). To move any dataset, only edit config/paths.json; the repo root is derived from the code location (override with LONGITUDINAL_ROOT if needed).
Conventions
- All Python commands must run inside the
longitudinal-313conda environment. - GPU is available (CUDA 12.6); use
torch.device('cuda')when appropriate. Multi-GPU stages of Pipelines A and C run viatorchrun --standalone --nproc_per_node N(rank = GPU). - No lint/test tooling is configured yet; run scripts directly with
python <script>from the repo root.