-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implemented method to register lesion mask to MT space #95
base: main
Are you sure you want to change the base?
Conversation
After testing image-based and segmentation-based registration, I think the segmentation-based registration is better suited and probably more robust. Example in Compare:
|
@leelisae I still need to add code to exclude the lesion mask from the calculation of MTR, but could you already give the lesion registration a try? You just need to 'git checkout' that branch:
Also make sure to upgrade to SCT 6.3 as indicated above. |
@jcohenadad Yes, I upgraded to SCT 6.3 then, ran your code for an example subject - lesion registration looks good! Thank you (and also in advance for the code to calculate MTR for ROIs excluding lesions)! |
Comparing the new registration method (632bdab) vs. the old one : sliiiiightly better |
Next step: test new contrast-agnostic model |
The new code outputs CSV files with suffix '_nolesion'
69e9183 now implements code to estimate MTR excluding lesions. See example below the left and right CST (green) that is subtracted from the registered lesion mask (yellow): And the resulting output CSV in the whole spinal cord without the lesion mask (first row) with with the lesion mask (2nd row):
@lisaeylee can you give it a try? |
@lisaeylee If you haven't tried it already, please make sure to update to SCT's latest branch to benefit from the latest contrast-agnostic model that works better for PSIR/STIR data (spinalcordtoolbox/spinalcordtoolbox@bb479d8) |
@jcohenadad I had a few other tasks to complete earlier this week for a deadline, but this is on my agenda for today and tomorrow! To clarify, is this feature implemented in the SCT v6.3 that I recently updated to, or is it a separate update? If the latter, where can I find the exact steps to follow? |
Separate update. Step to follow (just do steps 1 and 3): https://spinalcordtoolbox.com/user_section/installation/mac.html#option-2-install-from-github-development |
@jcohenadad I just realized that the update you suggested above failed to install. Here is the install_sct_log.txt. Do you know why this might be? Thank you! |
@joshuacwnewton would you mind helping @lisaeylee with this? thanks! |
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
It's possible that this is Big Sur-specific? macOS 10.16/11.0 hit "end of life" last year, and so we're not able to test it on GitHub anymore, so an issue may have slipped through (e.g. the lazy loading code). I'm setting up a virtual machine to test on Big Sur right now, though. :) |
This comment was marked as resolved.
This comment was marked as resolved.
I've isolated the issue to If I reinstall from I have reported this issue to the For now, I will make sure we avoid this buggy version in SCT. To quickly fix your installation, you can run this command to downgrade the version of cd $SCT_DIR
./python/envs/venv_sct/bin/pip3 install onnx==1.16.0 (I've also minimized the prior debugging we did to keep this PR neat and tidy.) |
@joshuacwnewton - I tried 1) running the command you provided above, 2) remove current spinalcordtoolbox, 3) re-install spinalcordtoolbox. But, I still get the same error message (see below). Did I misunderstand anything? What else can I try? I am very grateful for your generous help and time on this! Console logLast login: Mon Jun 17 16:58:16 on ttys005
(base) msresearch@MSs-MacBook-Pro ~ % cd $SCT_DIR
./python/envs/venv_sct/bin/pip3 install onnx==1.16.0
Collecting onnx==1.16.0
Using cached onnx-1.16.0-cp39-cp39-macosx_10_15_x86_64.whl.metadata (16 kB)
Requirement already satisfied: numpy>=1.20 in ./python/envs/venv_sct/lib/python3.9/site-packages (from onnx==1.16.0) (1.26.4)
Requirement already satisfied: protobuf>=3.20.2 in ./python/envs/venv_sct/lib/python3.9/site-packages (from onnx==1.16.0) (4.25.3)
Using cached onnx-1.16.0-cp39-cp39-macosx_10_15_x86_64.whl (15.0 MB)
Installing collected packages: onnx
Attempting uninstall: onnx
Found existing installation: onnx 1.16.1
Uninstalling onnx-1.16.1:
Successfully uninstalled onnx-1.16.1
Successfully installed onnx-1.16.0
(base) msresearch@MSs-MacBook-Pro spinalcordtoolbox % ls
CHANGES.md bin python
CODE_OF_CONDUCT.md contrib requirements.txt
CONTRIBUTING.rst data setup.cfg
LICENSE documentation setup.py
MANIFEST.in install_sct spinalcordtoolbox
README.rst install_sct.bat spinalcordtoolbox.egg-info
batch_processing.sh install_sct_log.txt testing
(base) msresearch@MSs-MacBook-Pro spinalcordtoolbox % cd ../
(base) msresearch@MSs-MacBook-Pro ~ % ls
Applications Library Public sct_testing_data
Desktop Movies canproco spinalcordtoolbox
Documents Music opt spinalcordtoolbox-6.3
Downloads Pictures sct_6.3 test
(base) msresearch@MSs-MacBook-Pro ~ % rm spinalcordtoolbox
rm: spinalcordtoolbox: is a directory
(base) msresearch@MSs-MacBook-Pro ~ % rm -r spinalcordtoolbox
override r--r--r-- msresearch/staff for spinalcordtoolbox/.git/objects/pack/pack-ad75749c08ca27b1462868679981ace0fe909904.idx? y
override r--r--r-- msresearch/staff for spinalcordtoolbox/.git/objects/pack/pack-ad75749c08ca27b1462868679981ace0fe909904.pack? y
(base) msresearch@MSs-MacBook-Pro ~ % ls
Applications Library Public sct_testing_data
Desktop Movies canproco spinalcordtoolbox-6.3
Documents Music opt test
Downloads Pictures sct_6.3
(base) msresearch@MSs-MacBook-Pro ~ % git clone https://github.com/spinalcordtoolbox/spinalcordtoolbox
cd spinalcordtoolbox
Cloning into 'spinalcordtoolbox'...
remote: Enumerating objects: 61660, done.
remote: Counting objects: 100% (2879/2879), done.
remote: Compressing objects: 100% (1739/1739), done.
remote: Total 61660 (delta 1948), reused 1845 (delta 1117), pack-reused 58781
Receiving objects: 100% (61660/61660), 119.61 MiB | 13.79 MiB/s, done.
Resolving deltas: 100% (35603/35603), done.
(base) msresearch@MSs-MacBook-Pro spinalcordtoolbox % ./install_sct
*******************************
* Welcome to SCT installation *
*******************************
Checking OS type and version...
Darwin MSs-MacBook-Pro.local 20.6.0 Darwin Kernel Version 20.6.0: Wed Jun 23 00:26:27 PDT 2021; root:xnu-7195.141.2~5/RELEASE_ARM64_T8101 arm64
ProductVersion: 11.5.2
Checking requirements...
OK!
SCT version ......... 6.4.dev0
Installation type ... in-place
Operating system .... osx (11.5.2)
Shell config ........ /Users/msresearch/.zshrc
SCT will be installed here: [/Users/msresearch/spinalcordtoolbox]
Do you agree? [y]es/[n]o: y
Skipping copy of source files (source and destination folders are the same)
Do you want to add the sct_* scripts to your PATH environment? [y]es/[n]o: y
Downloading Miniconda...
curl -sS -o /var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/tmp.u1bGwRsO/miniconda.sh -L https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh
Installing Miniconda...
bash /var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/tmp.u1bGwRsO/miniconda.sh -p /Users/msresearch/spinalcordtoolbox/python -b -f
PREFIX=/Users/msresearch/spinalcordtoolbox/python
Unpacking payload ...
Installing base environment...
Preparing transaction: ...working... done
Executing transaction: ...working...
done
installation finished.
Creating conda environment...
Retrieving notices: ...working... done
Channels:
- defaults
Platform: osx-64
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... done
## Package Plan ##
environment location: /Users/msresearch/spinalcordtoolbox/python/envs/venv_sct
added / updated specs:
- python=3.9
The following packages will be downloaded:
package | build
---------------------------|-----------------
openssl-3.0.14 | h46256e1_0 4.4 MB
pip-24.0 | py39hecd8cb5_0 2.6 MB
python-3.9.19 | h5ee71fb_1 12.7 MB
setuptools-69.5.1 | py39hecd8cb5_0 1004 KB
wheel-0.43.0 | py39hecd8cb5_0 107 KB
------------------------------------------------------------
Total: 20.8 MB
The following NEW packages will be INSTALLED:
ca-certificates pkgs/main/osx-64::ca-certificates-2024.3.11-hecd8cb5_0
libcxx pkgs/main/osx-64::libcxx-14.0.6-h9765a3e_0
libffi pkgs/main/osx-64::libffi-3.4.4-hecd8cb5_1
ncurses pkgs/main/osx-64::ncurses-6.4-hcec6c5f_0
openssl pkgs/main/osx-64::openssl-3.0.14-h46256e1_0
pip pkgs/main/osx-64::pip-24.0-py39hecd8cb5_0
python pkgs/main/osx-64::python-3.9.19-h5ee71fb_1
readline pkgs/main/osx-64::readline-8.2-hca72f7f_0
setuptools pkgs/main/osx-64::setuptools-69.5.1-py39hecd8cb5_0
sqlite pkgs/main/osx-64::sqlite-3.45.3-h6c40b1e_0
tk pkgs/main/osx-64::tk-8.6.14-h4d00af3_0
tzdata pkgs/main/noarch::tzdata-2024a-h04d1e81_0
wheel pkgs/main/osx-64::wheel-0.43.0-py39hecd8cb5_0
xz pkgs/main/osx-64::xz-5.4.6-h6c40b1e_1
zlib pkgs/main/osx-64::zlib-1.2.13-h4b97444_1
Downloading and Extracting Packages: ...working... done
Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... done
#
# To activate this environment, use
#
# $ conda activate /Users/msresearch/spinalcordtoolbox/python/envs/venv_sct
#
# To deactivate an active environment, use
#
# $ conda deactivate
Requirement already satisfied: pip!=21.2.* in ./python/envs/venv_sct/lib/python3.9/site-packages (24.0)
Installing Python dependencies...
Using requirements.txt (git installation)
Looking in indexes: https://pypi.org/simple, https://download.pytorch.org/whl/cpu
Ignoring msvc-runtime: markers 'sys_platform == "win32"' don't match your environment
Collecting certifi
Using cached certifi-2024.6.2-py3-none-any.whl.metadata (2.2 kB)
Collecting dipy!=1.6.*,!=1.7.*,<1.9.0 (from -r requirements.txt (line 6))
Using cached dipy-1.8.0-cp39-cp39-macosx_10_9_x86_64.whl.metadata (8.6 kB)
Collecting ivadomed (from -r requirements.txt (line 10))
Using cached ivadomed-2.9.10-py3-none-any.whl.metadata (6.4 kB)
Collecting matplotlib (from -r requirements.txt (line 11))
Using cached matplotlib-3.9.0-cp39-cp39-macosx_10_12_x86_64.whl.metadata (11 kB)
Collecting matplotlib-inline (from -r requirements.txt (line 16))
Using cached matplotlib_inline-0.1.7-py3-none-any.whl.metadata (3.9 kB)
Collecting nibabel (from -r requirements.txt (line 25))
Using cached nibabel-5.2.1-py3-none-any.whl.metadata (8.8 kB)
Collecting nilearn (from -r requirements.txt (line 26))
Using cached nilearn-0.10.4-py3-none-any.whl.metadata (7.8 kB)
Collecting nnunetv2!=2.4.0,!=2.4.1,>=2.3.1 (from -r requirements.txt (line 29))
Using cached nnunetv2-2.4.2-py3-none-any.whl
Collecting numpy<2 (from -r requirements.txt (line 31))
Using cached numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl.metadata (61 kB)
Collecting onnxruntime!=1.16.0,>=1.7.0 (from -r requirements.txt (line 35))
Using cached onnxruntime-1.18.0-cp39-cp39-macosx_11_0_universal2.whl.metadata (4.2 kB)
Collecting pandas (from -r requirements.txt (line 36))
Using cached pandas-2.2.2-cp39-cp39-macosx_10_9_x86_64.whl.metadata (19 kB)
Collecting portalocker (from -r requirements.txt (line 37))
Using cached portalocker-2.8.2-py3-none-any.whl.metadata (8.5 kB)
Collecting psutil (from -r requirements.txt (line 38))
Downloading psutil-6.0.0-cp36-abi3-macosx_10_9_x86_64.whl.metadata (21 kB)
Collecting pyqt5==5.12.3 (from -r requirements.txt (line 43))
Using cached PyQt5-5.12.3-5.12.10-cp35.cp36.cp37.cp38.cp39-abi3-macosx_10_6_intel.whl.metadata (2.2 kB)
Collecting pyqt5-sip<12.13.0 (from -r requirements.txt (line 45))
Using cached PyQt5_sip-12.12.2-cp39-cp39-macosx_10_9_universal2.whl.metadata (504 bytes)
Collecting pystrum>=0.3 (from -r requirements.txt (line 48))
Using cached pystrum-0.4-py3-none-any.whl
Collecting pytest (from -r requirements.txt (line 49))
Using cached pytest-8.2.2-py3-none-any.whl.metadata (7.6 kB)
Collecting pytest-cov (from -r requirements.txt (line 50))
Using cached pytest_cov-5.0.0-py3-none-any.whl.metadata (27 kB)
Collecting requests (from -r requirements.txt (line 51))
Using cached requests-2.32.3-py3-none-any.whl.metadata (4.6 kB)
Collecting requirements-parser (from -r requirements.txt (line 52))
Using cached requirements_parser-0.9.0-py3-none-any.whl.metadata (3.2 kB)
Collecting scipy (from -r requirements.txt (line 53))
Using cached scipy-1.13.1-cp39-cp39-macosx_10_9_x86_64.whl.metadata (60 kB)
Collecting scikit-image (from -r requirements.txt (line 54))
Downloading scikit_image-0.24.0-cp39-cp39-macosx_10_9_x86_64.whl.metadata (14 kB)
Collecting scikit-learn (from -r requirements.txt (line 55))
Using cached scikit_learn-1.5.0-cp39-cp39-macosx_10_9_x86_64.whl.metadata (11 kB)
Collecting xlwt (from -r requirements.txt (line 56))
Using cached xlwt-1.3.0-py2.py3-none-any.whl.metadata (3.5 kB)
Collecting tqdm (from -r requirements.txt (line 57))
Using cached tqdm-4.66.4-py3-none-any.whl.metadata (57 kB)
Collecting transforms3d (from -r requirements.txt (line 58))
Using cached transforms3d-0.4.2-py3-none-any.whl
Collecting urllib3 (from -r requirements.txt (line 59))
Using cached urllib3-2.2.2-py3-none-any.whl.metadata (6.4 kB)
Collecting pytest_console_scripts (from -r requirements.txt (line 60))
Using cached pytest_console_scripts-1.4.1-py3-none-any.whl.metadata (11 kB)
Collecting pyyaml (from -r requirements.txt (line 61))
Using cached PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl.metadata (2.1 kB)
Collecting voxelmorph (from -r requirements.txt (line 62))
Using cached voxelmorph-0.2-py3-none-any.whl.metadata (660 bytes)
Collecting wquantiles (from -r requirements.txt (line 63))
Using cached wquantiles-0.6-py3-none-any.whl.metadata (1.1 kB)
Collecting xlsxwriter (from -r requirements.txt (line 66))
Using cached XlsxWriter-3.2.0-py3-none-any.whl.metadata (2.6 kB)
Collecting monai[nibabel] (from -r requirements.txt (line 17))
Using cached monai-1.3.1-py3-none-any.whl.metadata (10 kB)
Collecting cython!=0.29.29,>=0.29.24 (from dipy!=1.6.*,!=1.7.*,<1.9.0->-r requirements.txt (line 6))
Using cached Cython-3.0.10-cp39-cp39-macosx_10_9_x86_64.whl.metadata (3.2 kB)
Collecting h5py>=3.1.0 (from dipy!=1.6.*,!=1.7.*,<1.9.0->-r requirements.txt (line 6))
Using cached h5py-3.11.0-cp39-cp39-macosx_10_9_x86_64.whl.metadata (2.5 kB)
Collecting packaging>=21 (from dipy!=1.6.*,!=1.7.*,<1.9.0->-r requirements.txt (line 6))
Using cached packaging-24.1-py3-none-any.whl.metadata (3.2 kB)
Collecting trx-python>=0.2.9 (from dipy!=1.6.*,!=1.7.*,<1.9.0->-r requirements.txt (line 6))
Using cached trx_python-0.2.9-py3-none-any.whl.metadata (2.7 kB)
Collecting csv-diff>=1.0 (from ivadomed->-r requirements.txt (line 10))
Using cached csv_diff-1.1-py3-none-any.whl.metadata (4.1 kB)
Collecting loguru~=0.5 (from ivadomed->-r requirements.txt (line 10))
Using cached loguru-0.7.2-py3-none-any.whl.metadata (23 kB)
Collecting imageio>=2.31.4 (from ivadomed->-r requirements.txt (line 10))
Using cached imageio-2.34.1-py3-none-any.whl.metadata (4.9 kB)
Collecting joblib~=1.0 (from ivadomed->-r requirements.txt (line 10))
Using cached joblib-1.4.2-py3-none-any.whl.metadata (5.4 kB)
Collecting onnx (from ivadomed->-r requirements.txt (line 10))
Using cached onnx-1.16.1-cp39-cp39-macosx_11_0_universal2.whl.metadata (16 kB)
Collecting pandas (from -r requirements.txt (line 36))
Using cached pandas-1.5.3-cp39-cp39-macosx_10_9_x86_64.whl.metadata (11 kB)
Collecting pybids<0.15.6,>=0.14.0 (from ivadomed->-r requirements.txt (line 10))
Using cached pybids-0.15.5-py3-none-any.whl.metadata (3.2 kB)
Collecting seaborn~=0.11 (from ivadomed->-r requirements.txt (line 10))
Using cached seaborn-0.13.2-py3-none-any.whl.metadata (5.4 kB)
Collecting tensorboard>=1.15.0 (from ivadomed->-r requirements.txt (line 10))
Using cached tensorboard-2.17.0-py3-none-any.whl.metadata (1.6 kB)
Collecting torchio>=0.18.68 (from ivadomed->-r requirements.txt (line 10))
Using cached torchio-0.19.7-py2.py3-none-any.whl.metadata (49 kB)
Collecting torch>=1.8.1 (from ivadomed->-r requirements.txt (line 10))
Using cached https://download.pytorch.org/whl/cpu/torch-2.2.2-cp39-none-macosx_10_9_x86_64.whl (151.0 MB)
Collecting torchvision>=0.9.1 (from ivadomed->-r requirements.txt (line 10))
Using cached https://download.pytorch.org/whl/cpu/torchvision-0.17.2-cp39-cp39-macosx_10_13_x86_64.whl (1.7 MB)
Collecting wandb>=0.12.11 (from ivadomed->-r requirements.txt (line 10))
Using cached wandb-0.17.2-py3-none-macosx_10_9_x86_64.whl.metadata (10 kB)
Collecting contourpy>=1.0.1 (from matplotlib->-r requirements.txt (line 11))
Using cached contourpy-1.2.1-cp39-cp39-macosx_10_9_x86_64.whl.metadata (5.8 kB)
Collecting cycler>=0.10 (from matplotlib->-r requirements.txt (line 11))
Using cached cycler-0.12.1-py3-none-any.whl.metadata (3.8 kB)
Collecting fonttools>=4.22.0 (from matplotlib->-r requirements.txt (line 11))
Using cached fonttools-4.53.0-cp39-cp39-macosx_10_9_universal2.whl.metadata (162 kB)
Collecting kiwisolver>=1.3.1 (from matplotlib->-r requirements.txt (line 11))
Using cached kiwisolver-1.4.5-cp39-cp39-macosx_10_9_x86_64.whl.metadata (6.4 kB)
Collecting pillow>=8 (from matplotlib->-r requirements.txt (line 11))
Using cached pillow-10.3.0-cp39-cp39-macosx_10_10_x86_64.whl.metadata (9.2 kB)
Collecting pyparsing>=2.3.1 (from matplotlib->-r requirements.txt (line 11))
Using cached pyparsing-3.1.2-py3-none-any.whl.metadata (5.1 kB)
Collecting python-dateutil>=2.7 (from matplotlib->-r requirements.txt (line 11))
Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)
Collecting importlib-resources>=3.2.0 (from matplotlib->-r requirements.txt (line 11))
Using cached importlib_resources-6.4.0-py3-none-any.whl.metadata (3.9 kB)
Collecting traitlets (from matplotlib-inline->-r requirements.txt (line 16))
Using cached traitlets-5.14.3-py3-none-any.whl.metadata (10 kB)
Collecting lxml (from nilearn->-r requirements.txt (line 26))
Using cached lxml-5.2.2-cp39-cp39-macosx_10_9_x86_64.whl.metadata (3.4 kB)
Collecting acvl-utils<0.3,>=0.2 (from nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached acvl_utils-0.2-py3-none-any.whl
Collecting dynamic-network-architectures<0.4,>=0.3.1 (from nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached dynamic_network_architectures-0.3.1-py3-none-any.whl
Collecting dicom2nifti (from nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached dicom2nifti-2.4.11-py3-none-any.whl.metadata (1.3 kB)
Collecting batchgenerators>=0.25 (from nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached batchgenerators-0.25-py3-none-any.whl
Collecting SimpleITK>=2.2.1 (from nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached SimpleITK-2.3.1-cp39-cp39-macosx_10_9_x86_64.whl.metadata (7.9 kB)
Collecting graphviz (from nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached graphviz-0.20.3-py3-none-any.whl.metadata (12 kB)
Collecting tifffile (from nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Downloading tifffile-2024.6.18-py3-none-any.whl.metadata (31 kB)
Collecting imagecodecs (from nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached imagecodecs-2024.6.1-cp39-cp39-macosx_10_14_x86_64.whl.metadata (18 kB)
Collecting yacs (from nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached yacs-0.1.8-py3-none-any.whl.metadata (639 bytes)
Collecting coloredlogs (from onnxruntime!=1.16.0,>=1.7.0->-r requirements.txt (line 35))
Using cached coloredlogs-15.0.1-py2.py3-none-any.whl.metadata (12 kB)
Collecting flatbuffers (from onnxruntime!=1.16.0,>=1.7.0->-r requirements.txt (line 35))
Using cached flatbuffers-24.3.25-py2.py3-none-any.whl.metadata (850 bytes)
Collecting protobuf (from onnxruntime!=1.16.0,>=1.7.0->-r requirements.txt (line 35))
Using cached protobuf-5.27.1-cp38-abi3-macosx_10_9_universal2.whl.metadata (592 bytes)
Collecting sympy (from onnxruntime!=1.16.0,>=1.7.0->-r requirements.txt (line 35))
Using cached sympy-1.12.1-py3-none-any.whl.metadata (12 kB)
Collecting pytz>=2020.1 (from pandas->-r requirements.txt (line 36))
Using cached pytz-2024.1-py2.py3-none-any.whl.metadata (22 kB)
Collecting six (from pystrum>=0.3->-r requirements.txt (line 48))
Using cached six-1.16.0-py2.py3-none-any.whl.metadata (1.8 kB)
Collecting iniconfig (from pytest->-r requirements.txt (line 49))
Using cached iniconfig-2.0.0-py3-none-any.whl.metadata (2.6 kB)
Collecting pluggy<2.0,>=1.5 (from pytest->-r requirements.txt (line 49))
Using cached pluggy-1.5.0-py3-none-any.whl.metadata (4.8 kB)
Collecting exceptiongroup>=1.0.0rc8 (from pytest->-r requirements.txt (line 49))
Using cached exceptiongroup-1.2.1-py3-none-any.whl.metadata (6.6 kB)
Collecting tomli>=1 (from pytest->-r requirements.txt (line 49))
Using cached tomli-2.0.1-py3-none-any.whl.metadata (8.9 kB)
Collecting coverage>=5.2.1 (from coverage[toml]>=5.2.1->pytest-cov->-r requirements.txt (line 50))
Using cached coverage-7.5.3-cp39-cp39-macosx_10_9_x86_64.whl.metadata (8.2 kB)
Collecting charset-normalizer<4,>=2 (from requests->-r requirements.txt (line 51))
Using cached charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl.metadata (33 kB)
Collecting idna<4,>=2.5 (from requests->-r requirements.txt (line 51))
Using cached idna-3.7-py3-none-any.whl.metadata (9.9 kB)
Collecting types-setuptools>=69.1.0 (from requirements-parser->-r requirements.txt (line 52))
Using cached types_setuptools-70.0.0.20240524-py3-none-any.whl.metadata (1.6 kB)
Collecting networkx>=2.8 (from scikit-image->-r requirements.txt (line 54))
Using cached https://download.pytorch.org/whl/networkx-3.2.1-py3-none-any.whl (1.6 MB)
Collecting lazy-loader>=0.4 (from scikit-image->-r requirements.txt (line 54))
Using cached lazy_loader-0.4-py3-none-any.whl.metadata (7.6 kB)
Collecting threadpoolctl>=3.1.0 (from scikit-learn->-r requirements.txt (line 55))
Using cached threadpoolctl-3.5.0-py3-none-any.whl.metadata (13 kB)
Collecting importlib-metadata>=3.6 (from pytest_console_scripts->-r requirements.txt (line 60))
Using cached importlib_metadata-7.1.0-py3-none-any.whl.metadata (4.7 kB)
Collecting neurite>=0.2 (from voxelmorph->-r requirements.txt (line 62))
Using cached neurite-0.2-py3-none-any.whl.metadata (653 bytes)
Collecting connected-components-3d (from acvl-utils<0.3,>=0.2->nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Downloading connected_components_3d-3.16.1-cp39-cp39-macosx_10_9_x86_64.whl.metadata (30 kB)
Collecting future (from batchgenerators>=0.25->nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached future-1.0.0-py3-none-any.whl.metadata (4.0 kB)
Collecting unittest2 (from batchgenerators>=0.25->nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached unittest2-1.1.0-py2.py3-none-any.whl.metadata (15 kB)
Collecting click (from csv-diff>=1.0->ivadomed->-r requirements.txt (line 10))
Using cached click-8.1.7-py3-none-any.whl.metadata (3.0 kB)
Collecting dictdiffer (from csv-diff>=1.0->ivadomed->-r requirements.txt (line 10))
Using cached dictdiffer-0.9.0-py2.py3-none-any.whl.metadata (4.8 kB)
Collecting zipp>=0.5 (from importlib-metadata>=3.6->pytest_console_scripts->-r requirements.txt (line 60))
Using cached zipp-3.19.2-py3-none-any.whl.metadata (3.6 kB)
Collecting formulaic<0.4,>=0.2.4 (from pybids<0.15.6,>=0.14.0->ivadomed->-r requirements.txt (line 10))
Using cached formulaic-0.3.4-py3-none-any.whl.metadata (5.6 kB)
Collecting sqlalchemy<1.4.0.dev0 (from pybids<0.15.6,>=0.14.0->ivadomed->-r requirements.txt (line 10))
Using cached SQLAlchemy-1.3.24-cp39-cp39-macosx_10_14_x86_64.whl.metadata (7.9 kB)
Collecting bids-validator (from pybids<0.15.6,>=0.14.0->ivadomed->-r requirements.txt (line 10))
Using cached bids_validator-1.14.6-py3-none-any.whl.metadata (38 kB)
Collecting num2words (from pybids<0.15.6,>=0.14.0->ivadomed->-r requirements.txt (line 10))
Using cached num2words-0.5.13-py3-none-any.whl.metadata (12 kB)
Collecting absl-py>=0.4 (from tensorboard>=1.15.0->ivadomed->-r requirements.txt (line 10))
Using cached absl_py-2.1.0-py3-none-any.whl.metadata (2.3 kB)
Collecting grpcio>=1.48.2 (from tensorboard>=1.15.0->ivadomed->-r requirements.txt (line 10))
Using cached grpcio-1.64.1-cp39-cp39-macosx_10_9_universal2.whl.metadata (3.3 kB)
Collecting markdown>=2.6.8 (from tensorboard>=1.15.0->ivadomed->-r requirements.txt (line 10))
Using cached Markdown-3.6-py3-none-any.whl.metadata (7.0 kB)
Collecting protobuf (from onnxruntime!=1.16.0,>=1.7.0->-r requirements.txt (line 35))
Using cached protobuf-4.25.3-cp37-abi3-macosx_10_9_universal2.whl.metadata (541 bytes)
Collecting setuptools>=41.0.0 (from tensorboard>=1.15.0->ivadomed->-r requirements.txt (line 10))
Downloading setuptools-70.1.0-py3-none-any.whl.metadata (6.0 kB)
Collecting tensorboard-data-server<0.8.0,>=0.7.0 (from tensorboard>=1.15.0->ivadomed->-r requirements.txt (line 10))
Using cached tensorboard_data_server-0.7.2-py3-none-macosx_10_9_x86_64.whl.metadata (1.1 kB)
Collecting werkzeug>=1.0.1 (from tensorboard>=1.15.0->ivadomed->-r requirements.txt (line 10))
Using cached werkzeug-3.0.3-py3-none-any.whl.metadata (3.7 kB)
Collecting filelock (from torch>=1.8.1->ivadomed->-r requirements.txt (line 10))
Using cached filelock-3.15.1-py3-none-any.whl.metadata (2.8 kB)
Collecting typing-extensions>=4.8.0 (from torch>=1.8.1->ivadomed->-r requirements.txt (line 10))
Using cached typing_extensions-4.12.2-py3-none-any.whl.metadata (3.0 kB)
Collecting jinja2 (from torch>=1.8.1->ivadomed->-r requirements.txt (line 10))
Using cached jinja2-3.1.4-py3-none-any.whl.metadata (2.6 kB)
Collecting fsspec (from torch>=1.8.1->ivadomed->-r requirements.txt (line 10))
Using cached fsspec-2024.6.0-py3-none-any.whl.metadata (11 kB)
Collecting Deprecated (from torchio>=0.18.68->ivadomed->-r requirements.txt (line 10))
Using cached Deprecated-1.2.14-py2.py3-none-any.whl.metadata (5.4 kB)
Collecting humanize (from torchio>=0.18.68->ivadomed->-r requirements.txt (line 10))
Using cached humanize-4.9.0-py3-none-any.whl.metadata (7.9 kB)
Collecting typer[all] (from torchio>=0.18.68->ivadomed->-r requirements.txt (line 10))
Using cached typer-0.12.3-py3-none-any.whl.metadata (15 kB)
Collecting setuptools-scm (from trx-python>=0.2.9->dipy!=1.6.*,!=1.7.*,<1.9.0->-r requirements.txt (line 6))
Using cached setuptools_scm-8.1.0-py3-none-any.whl.metadata (6.6 kB)
Collecting deepdiff (from trx-python>=0.2.9->dipy!=1.6.*,!=1.7.*,<1.9.0->-r requirements.txt (line 6))
Using cached deepdiff-7.0.1-py3-none-any.whl.metadata (6.8 kB)
Collecting docker-pycreds>=0.4.0 (from wandb>=0.12.11->ivadomed->-r requirements.txt (line 10))
Using cached docker_pycreds-0.4.0-py2.py3-none-any.whl.metadata (1.8 kB)
Collecting gitpython!=3.1.29,>=1.0.0 (from wandb>=0.12.11->ivadomed->-r requirements.txt (line 10))
Using cached GitPython-3.1.43-py3-none-any.whl.metadata (13 kB)
Collecting platformdirs (from wandb>=0.12.11->ivadomed->-r requirements.txt (line 10))
Using cached platformdirs-4.2.2-py3-none-any.whl.metadata (11 kB)
Collecting sentry-sdk>=1.0.0 (from wandb>=0.12.11->ivadomed->-r requirements.txt (line 10))
Downloading sentry_sdk-2.6.0-py2.py3-none-any.whl.metadata (10 kB)
Collecting setproctitle (from wandb>=0.12.11->ivadomed->-r requirements.txt (line 10))
Using cached setproctitle-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl.metadata (9.9 kB)
Collecting humanfriendly>=9.1 (from coloredlogs->onnxruntime!=1.16.0,>=1.7.0->-r requirements.txt (line 35))
Using cached humanfriendly-10.0-py2.py3-none-any.whl.metadata (9.2 kB)
Collecting pydicom>=2.2.0 (from dicom2nifti->nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached pydicom-2.4.4-py3-none-any.whl.metadata (7.8 kB)
Collecting python-gdcm (from dicom2nifti->nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached python_gdcm-3.0.24.1-cp39-cp39-macosx_10_9_x86_64.whl.metadata (3.7 kB)
Collecting mpmath<1.4.0,>=1.1.0 (from sympy->onnxruntime!=1.16.0,>=1.7.0->-r requirements.txt (line 35))
Using cached https://download.pytorch.org/whl/mpmath-1.3.0-py3-none-any.whl (536 kB)
Collecting astor>=0.8 (from formulaic<0.4,>=0.2.4->pybids<0.15.6,>=0.14.0->ivadomed->-r requirements.txt (line 10))
Using cached astor-0.8.1-py2.py3-none-any.whl.metadata (4.2 kB)
Collecting interface-meta<2.0.0,>=1.2.0 (from formulaic<0.4,>=0.2.4->pybids<0.15.6,>=0.14.0->ivadomed->-r requirements.txt (line 10))
Using cached interface_meta-1.3.0-py3-none-any.whl.metadata (6.7 kB)
Collecting wrapt>=1.0 (from formulaic<0.4,>=0.2.4->pybids<0.15.6,>=0.14.0->ivadomed->-r requirements.txt (line 10))
Using cached wrapt-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl.metadata (6.6 kB)
Collecting gitdb<5,>=4.0.1 (from gitpython!=3.1.29,>=1.0.0->wandb>=0.12.11->ivadomed->-r requirements.txt (line 10))
Using cached gitdb-4.0.11-py3-none-any.whl.metadata (1.2 kB)
Collecting MarkupSafe>=2.1.1 (from werkzeug>=1.0.1->tensorboard>=1.15.0->ivadomed->-r requirements.txt (line 10))
Using cached https://download.pytorch.org/whl/MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl (14 kB)
Collecting ordered-set<4.2.0,>=4.1.0 (from deepdiff->trx-python>=0.2.9->dipy!=1.6.*,!=1.7.*,<1.9.0->-r requirements.txt (line 6))
Using cached ordered_set-4.1.0-py3-none-any.whl.metadata (5.3 kB)
Collecting docopt>=0.6.2 (from num2words->pybids<0.15.6,>=0.14.0->ivadomed->-r requirements.txt (line 10))
Using cached docopt-0.6.2-py2.py3-none-any.whl
WARNING: typer 0.12.3 does not provide the extra 'all'
Collecting shellingham>=1.3.0 (from typer[all]->torchio>=0.18.68->ivadomed->-r requirements.txt (line 10))
Using cached shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB)
Collecting rich>=10.11.0 (from typer[all]->torchio>=0.18.68->ivadomed->-r requirements.txt (line 10))
Using cached rich-13.7.1-py3-none-any.whl.metadata (18 kB)
Collecting argparse (from unittest2->batchgenerators>=0.25->nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached argparse-1.4.0-py2.py3-none-any.whl.metadata (2.8 kB)
Collecting traceback2 (from unittest2->batchgenerators>=0.25->nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached traceback2-1.4.0-py2.py3-none-any.whl.metadata (1.5 kB)
Collecting smmap<6,>=3.0.1 (from gitdb<5,>=4.0.1->gitpython!=3.1.29,>=1.0.0->wandb>=0.12.11->ivadomed->-r requirements.txt (line 10))
Using cached smmap-5.0.1-py3-none-any.whl.metadata (4.3 kB)
Collecting markdown-it-py>=2.2.0 (from rich>=10.11.0->typer[all]->torchio>=0.18.68->ivadomed->-r requirements.txt (line 10))
Using cached markdown_it_py-3.0.0-py3-none-any.whl.metadata (6.9 kB)
Collecting pygments<3.0.0,>=2.13.0 (from rich>=10.11.0->typer[all]->torchio>=0.18.68->ivadomed->-r requirements.txt (line 10))
Using cached pygments-2.18.0-py3-none-any.whl.metadata (2.5 kB)
Collecting linecache2 (from traceback2->unittest2->batchgenerators>=0.25->nnunetv2!=2.4.0,!=2.4.1,>=2.3.1->-r requirements.txt (line 29))
Using cached linecache2-1.0.0-py2.py3-none-any.whl.metadata (1000 bytes)
Collecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=10.11.0->typer[all]->torchio>=0.18.68->ivadomed->-r requirements.txt (line 10))
Using cached mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB)
Using cached PyQt5-5.12.3-5.12.10-cp35.cp36.cp37.cp38.cp39-abi3-macosx_10_6_intel.whl (39.8 MB)
Using cached certifi-2024.6.2-py3-none-any.whl (164 kB)
Using cached dipy-1.8.0-cp39-cp39-macosx_10_9_x86_64.whl (8.5 MB)
Using cached ivadomed-2.9.10-py3-none-any.whl (240 kB)
Using cached matplotlib-3.9.0-cp39-cp39-macosx_10_12_x86_64.whl (7.9 MB)
Using cached matplotlib_inline-0.1.7-py3-none-any.whl (9.9 kB)
Using cached nibabel-5.2.1-py3-none-any.whl (3.3 MB)
Using cached nilearn-0.10.4-py3-none-any.whl (10.4 MB)
Using cached numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl (20.6 MB)
Using cached onnxruntime-1.18.0-cp39-cp39-macosx_11_0_universal2.whl (15.9 MB)
Using cached pandas-1.5.3-cp39-cp39-macosx_10_9_x86_64.whl (12.0 MB)
Using cached portalocker-2.8.2-py3-none-any.whl (17 kB)
Downloading psutil-6.0.0-cp36-abi3-macosx_10_9_x86_64.whl (250 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 251.0/251.0 kB 5.5 MB/s eta 0:00:00
Using cached PyQt5_sip-12.12.2-cp39-cp39-macosx_10_9_universal2.whl (142 kB)
Using cached pytest-8.2.2-py3-none-any.whl (339 kB)
Using cached pytest_cov-5.0.0-py3-none-any.whl (21 kB)
Using cached requests-2.32.3-py3-none-any.whl (64 kB)
Using cached requirements_parser-0.9.0-py3-none-any.whl (14 kB)
Using cached scipy-1.13.1-cp39-cp39-macosx_10_9_x86_64.whl (39.4 MB)
Downloading scikit_image-0.24.0-cp39-cp39-macosx_10_9_x86_64.whl (14.1 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.1/14.1 MB 12.9 MB/s eta 0:00:00
Using cached scikit_learn-1.5.0-cp39-cp39-macosx_10_9_x86_64.whl (12.1 MB)
Using cached xlwt-1.3.0-py2.py3-none-any.whl (99 kB)
Using cached tqdm-4.66.4-py3-none-any.whl (78 kB)
Using cached urllib3-2.2.2-py3-none-any.whl (121 kB)
Using cached pytest_console_scripts-1.4.1-py3-none-any.whl (10 kB)
Using cached PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl (197 kB)
Using cached voxelmorph-0.2-py3-none-any.whl (54 kB)
Using cached wquantiles-0.6-py3-none-any.whl (3.3 kB)
Using cached XlsxWriter-3.2.0-py3-none-any.whl (159 kB)
Using cached charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl (122 kB)
Using cached contourpy-1.2.1-cp39-cp39-macosx_10_9_x86_64.whl (260 kB)
Using cached coverage-7.5.3-cp39-cp39-macosx_10_9_x86_64.whl (204 kB)
Using cached csv_diff-1.1-py3-none-any.whl (12 kB)
Using cached cycler-0.12.1-py3-none-any.whl (8.3 kB)
Using cached Cython-3.0.10-cp39-cp39-macosx_10_9_x86_64.whl (3.1 MB)
Using cached exceptiongroup-1.2.1-py3-none-any.whl (16 kB)
Using cached fonttools-4.53.0-cp39-cp39-macosx_10_9_universal2.whl (2.8 MB)
Using cached h5py-3.11.0-cp39-cp39-macosx_10_9_x86_64.whl (3.5 MB)
Using cached idna-3.7-py3-none-any.whl (66 kB)
Using cached imageio-2.34.1-py3-none-any.whl (313 kB)
Using cached importlib_metadata-7.1.0-py3-none-any.whl (24 kB)
Using cached importlib_resources-6.4.0-py3-none-any.whl (38 kB)
Using cached joblib-1.4.2-py3-none-any.whl (301 kB)
Using cached kiwisolver-1.4.5-cp39-cp39-macosx_10_9_x86_64.whl (68 kB)
Using cached lazy_loader-0.4-py3-none-any.whl (12 kB)
Using cached loguru-0.7.2-py3-none-any.whl (62 kB)
Using cached neurite-0.2-py3-none-any.whl (108 kB)
Using cached packaging-24.1-py3-none-any.whl (53 kB)
Using cached pillow-10.3.0-cp39-cp39-macosx_10_10_x86_64.whl (3.5 MB)
Using cached pluggy-1.5.0-py3-none-any.whl (20 kB)
Using cached pybids-0.15.5-py3-none-any.whl (14.9 MB)
Using cached pyparsing-3.1.2-py3-none-any.whl (103 kB)
Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)
Using cached pytz-2024.1-py2.py3-none-any.whl (505 kB)
Using cached seaborn-0.13.2-py3-none-any.whl (294 kB)
Using cached SimpleITK-2.3.1-cp39-cp39-macosx_10_9_x86_64.whl (44.9 MB)
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Using cached tensorboard-2.17.0-py3-none-any.whl (5.5 MB)
Using cached protobuf-4.25.3-cp37-abi3-macosx_10_9_universal2.whl (394 kB)
Using cached threadpoolctl-3.5.0-py3-none-any.whl (18 kB)
Downloading tifffile-2024.6.18-py3-none-any.whl (226 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 226.0/226.0 kB 6.8 MB/s eta 0:00:00
Using cached tomli-2.0.1-py3-none-any.whl (12 kB)
Using cached torchio-0.19.7-py2.py3-none-any.whl (174 kB)
Using cached trx_python-0.2.9-py3-none-any.whl (45 kB)
Using cached types_setuptools-70.0.0.20240524-py3-none-any.whl (62 kB)
Using cached wandb-0.17.2-py3-none-macosx_10_9_x86_64.whl (6.8 MB)
Using cached coloredlogs-15.0.1-py2.py3-none-any.whl (46 kB)
Using cached dicom2nifti-2.4.11-py3-none-any.whl (43 kB)
Using cached flatbuffers-24.3.25-py2.py3-none-any.whl (26 kB)
Using cached graphviz-0.20.3-py3-none-any.whl (47 kB)
Using cached imagecodecs-2024.6.1-cp39-cp39-macosx_10_14_x86_64.whl (15.1 MB)
Using cached iniconfig-2.0.0-py3-none-any.whl (5.9 kB)
Using cached lxml-5.2.2-cp39-cp39-macosx_10_9_x86_64.whl (4.4 MB)
Using cached monai-1.3.1-py3-none-any.whl (1.4 MB)
Using cached onnx-1.16.1-cp39-cp39-macosx_11_0_universal2.whl (16.5 MB)
Using cached sympy-1.12.1-py3-none-any.whl (5.7 MB)
Using cached traitlets-5.14.3-py3-none-any.whl (85 kB)
Using cached yacs-0.1.8-py3-none-any.whl (14 kB)
Using cached absl_py-2.1.0-py3-none-any.whl (133 kB)
Using cached click-8.1.7-py3-none-any.whl (97 kB)
Using cached docker_pycreds-0.4.0-py2.py3-none-any.whl (9.0 kB)
Using cached formulaic-0.3.4-py3-none-any.whl (68 kB)
Using cached GitPython-3.1.43-py3-none-any.whl (207 kB)
Using cached grpcio-1.64.1-cp39-cp39-macosx_10_9_universal2.whl (10.4 MB)
Using cached humanfriendly-10.0-py2.py3-none-any.whl (86 kB)
Using cached Markdown-3.6-py3-none-any.whl (105 kB)
Using cached pydicom-2.4.4-py3-none-any.whl (1.8 MB)
Downloading sentry_sdk-2.6.0-py2.py3-none-any.whl (296 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 296.1/296.1 kB 7.8 MB/s eta 0:00:00
Downloading setuptools-70.1.0-py3-none-any.whl (882 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 882.6/882.6 kB 10.6 MB/s eta 0:00:00
Using cached SQLAlchemy-1.3.24-cp39-cp39-macosx_10_14_x86_64.whl (1.2 MB)
Using cached tensorboard_data_server-0.7.2-py3-none-macosx_10_9_x86_64.whl (4.8 MB)
Using cached typing_extensions-4.12.2-py3-none-any.whl (37 kB)
Using cached werkzeug-3.0.3-py3-none-any.whl (227 kB)
Using cached zipp-3.19.2-py3-none-any.whl (9.0 kB)
Using cached bids_validator-1.14.6-py3-none-any.whl (22 kB)
Downloading connected_components_3d-3.16.1-cp39-cp39-macosx_10_9_x86_64.whl (649 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 649.3/649.3 kB 10.8 MB/s eta 0:00:00
Using cached deepdiff-7.0.1-py3-none-any.whl (80 kB)
Using cached Deprecated-1.2.14-py2.py3-none-any.whl (9.6 kB)
Using cached dictdiffer-0.9.0-py2.py3-none-any.whl (16 kB)
Using cached filelock-3.15.1-py3-none-any.whl (15 kB)
Using cached fsspec-2024.6.0-py3-none-any.whl (176 kB)
Using cached future-1.0.0-py3-none-any.whl (491 kB)
Using cached humanize-4.9.0-py3-none-any.whl (126 kB)
Using cached jinja2-3.1.4-py3-none-any.whl (133 kB)
Using cached num2words-0.5.13-py3-none-any.whl (143 kB)
Using cached platformdirs-4.2.2-py3-none-any.whl (18 kB)
Using cached python_gdcm-3.0.24.1-cp39-cp39-macosx_10_9_x86_64.whl (12.7 MB)
Using cached setproctitle-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl (11 kB)
Using cached setuptools_scm-8.1.0-py3-none-any.whl (43 kB)
Using cached unittest2-1.1.0-py2.py3-none-any.whl (96 kB)
Using cached astor-0.8.1-py2.py3-none-any.whl (27 kB)
Using cached gitdb-4.0.11-py3-none-any.whl (62 kB)
Using cached interface_meta-1.3.0-py3-none-any.whl (14 kB)
Using cached ordered_set-4.1.0-py3-none-any.whl (7.6 kB)
Using cached rich-13.7.1-py3-none-any.whl (240 kB)
Using cached shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB)
Using cached wrapt-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl (37 kB)
Using cached argparse-1.4.0-py2.py3-none-any.whl (23 kB)
Using cached traceback2-1.4.0-py2.py3-none-any.whl (16 kB)
Using cached typer-0.12.3-py3-none-any.whl (47 kB)
Using cached markdown_it_py-3.0.0-py3-none-any.whl (87 kB)
Using cached pygments-2.18.0-py3-none-any.whl (1.2 MB)
Using cached smmap-5.0.1-py3-none-any.whl (24 kB)
Using cached linecache2-1.0.0-py2.py3-none-any.whl (12 kB)
Using cached mdurl-0.1.2-py3-none-any.whl (10.0 kB)
Installing collected packages: xlwt, SimpleITK, pytz, mpmath, linecache2, flatbuffers, docopt, dictdiffer, argparse, zipp, xlsxwriter, wrapt, urllib3, typing-extensions, types-setuptools, traitlets, traceback2, tqdm, tomli, threadpoolctl, tensorboard-data-server, sympy, sqlalchemy, smmap, six, shellingham, setuptools, setproctitle, pyyaml, python-gdcm, pyqt5-sip, pyparsing, pygments, pydicom, psutil, protobuf, portalocker, pluggy, platformdirs, pillow, packaging, ordered-set, numpy, num2words, networkx, mdurl, MarkupSafe, lxml, loguru, kiwisolver, joblib, interface-meta, iniconfig, idna, humanize, humanfriendly, grpcio, graphviz, future, fsspec, fonttools, filelock, exceptiongroup, cython, cycler, coverage, click, charset-normalizer, certifi, bids-validator, astor, absl-py, yacs, wquantiles, werkzeug, unittest2, transforms3d, tifffile, setuptools-scm, sentry-sdk, scipy, requirements-parser, requests, python-dateutil, pytest, pyqt5, onnx, nibabel, matplotlib-inline, markdown-it-py, lazy-loader, jinja2, importlib-resources, importlib-metadata, imageio, imagecodecs, h5py, gitdb, docker-pycreds, Deprecated, deepdiff, csv-diff, contourpy, connected-components-3d, coloredlogs, trx-python, torch, scikit-learn, scikit-image, rich, pytest-cov, pytest_console_scripts, pandas, onnxruntime, matplotlib, markdown, gitpython, dicom2nifti, wandb, typer, torchvision, tensorboard, seaborn, pystrum, nilearn, monai, formulaic, dynamic-network-architectures, dipy, batchgenerators, pybids, neurite, acvl-utils, voxelmorph, torchio, nnunetv2, ivadomed
Successfully installed Deprecated-1.2.14 MarkupSafe-2.1.5 SimpleITK-2.3.1 absl-py-2.1.0 acvl-utils-0.2 argparse-1.4.0 astor-0.8.1 batchgenerators-0.25 bids-validator-1.14.6 certifi-2024.6.2 charset-normalizer-3.3.2 click-8.1.7 coloredlogs-15.0.1 connected-components-3d-3.16.1 contourpy-1.2.1 coverage-7.5.3 csv-diff-1.1 cycler-0.12.1 cython-3.0.10 deepdiff-7.0.1 dicom2nifti-2.4.11 dictdiffer-0.9.0 dipy-1.8.0 docker-pycreds-0.4.0 docopt-0.6.2 dynamic-network-architectures-0.3.1 exceptiongroup-1.2.1 filelock-3.15.1 flatbuffers-24.3.25 fonttools-4.53.0 formulaic-0.3.4 fsspec-2024.6.0 future-1.0.0 gitdb-4.0.11 gitpython-3.1.43 graphviz-0.20.3 grpcio-1.64.1 h5py-3.11.0 humanfriendly-10.0 humanize-4.9.0 idna-3.7 imagecodecs-2024.6.1 imageio-2.34.1 importlib-metadata-7.1.0 importlib-resources-6.4.0 iniconfig-2.0.0 interface-meta-1.3.0 ivadomed-2.9.10 jinja2-3.1.4 joblib-1.4.2 kiwisolver-1.4.5 lazy-loader-0.4 linecache2-1.0.0 loguru-0.7.2 lxml-5.2.2 markdown-3.6 markdown-it-py-3.0.0 matplotlib-3.9.0 matplotlib-inline-0.1.7 mdurl-0.1.2 monai-1.3.1 mpmath-1.3.0 networkx-3.2.1 neurite-0.2 nibabel-5.2.1 nilearn-0.10.4 nnunetv2-2.4.2 num2words-0.5.13 numpy-1.26.4 onnx-1.16.1 onnxruntime-1.18.0 ordered-set-4.1.0 packaging-24.1 pandas-1.5.3 pillow-10.3.0 platformdirs-4.2.2 pluggy-1.5.0 portalocker-2.8.2 protobuf-4.25.3 psutil-6.0.0 pybids-0.15.5 pydicom-2.4.4 pygments-2.18.0 pyparsing-3.1.2 pyqt5-5.12.3 pyqt5-sip-12.12.2 pystrum-0.4 pytest-8.2.2 pytest-cov-5.0.0 pytest_console_scripts-1.4.1 python-dateutil-2.9.0.post0 python-gdcm-3.0.24.1 pytz-2024.1 pyyaml-6.0.1 requests-2.32.3 requirements-parser-0.9.0 rich-13.7.1 scikit-image-0.24.0 scikit-learn-1.5.0 scipy-1.13.1 seaborn-0.13.2 sentry-sdk-2.6.0 setproctitle-1.3.3 setuptools-69.5.1 setuptools-scm-8.1.0 shellingham-1.5.4 six-1.16.0 smmap-5.0.1 sqlalchemy-1.3.24 sympy-1.12.1 tensorboard-2.17.0 tensorboard-data-server-0.7.2 threadpoolctl-3.5.0 tifffile-2024.6.18 tomli-2.0.1 torch-2.2.2 torchio-0.19.7 torchvision-0.17.2 tqdm-4.66.4 traceback2-1.4.0 traitlets-5.14.3 transforms3d-0.4.2 trx-python-0.2.9 typer-0.12.3 types-setuptools-70.0.0.20240524 typing-extensions-4.12.2 unittest2-1.1.0 urllib3-2.2.2 voxelmorph-0.2 wandb-0.17.2 werkzeug-3.0.3 wquantiles-0.6 wrapt-1.16.0 xlsxwriter-3.2.0 xlwt-1.3.0 yacs-0.1.8 zipp-3.19.2
Installing spinalcordtoolbox...
Obtaining file:///Users/msresearch/spinalcordtoolbox
Preparing metadata (setup.py): started
Preparing metadata (setup.py): finished with status 'done'
Installing collected packages: spinalcordtoolbox
Running setup.py develop for spinalcordtoolbox
Successfully installed spinalcordtoolbox-6.4.dev0
Creating launchers for Python scripts...
Installing binaries...
sct_download_data -d binaries_osx -k
--
Spinal Cord Toolbox (git-master-a631c4d978cbd1d8a5e14da4b7a30e244eca2f9c)
sct_download_data -d binaries_osx -k
--
Trying URL: https://github.com/spinalcordtoolbox/spinalcordtoolbox-binaries/releases/download/r20221018/spinalcordtoolbox-binaries_osx.tar.gz
Downloading: spinalcordtoolbox-binaries_osx.tar.gz
Status: 100%|██████████| 65.3M/65.3M [00:04<00:00, 14.5MB/s]
Creating temporary folder (/var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-04_install-data_iafcabfs)
Unzip data to: /var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-04_install-data_iafcabfs
Copying data to: /Users/msresearch/spinalcordtoolbox/bin
Removing temporary folders...
Done!
All requirements installed!
Installing data...
mkdir -p /Users/msresearch/spinalcordtoolbox/data
sct_download_data -d PAM50
--
Spinal Cord Toolbox (git-master-a631c4d978cbd1d8a5e14da4b7a30e244eca2f9c)
sct_download_data -d PAM50
--
Trying URL: https://github.com/spinalcordtoolbox/PAM50/releases/download/r20240215/PAM50-r20240215.zip
Downloading: PAM50-r20240215.zip
Status: 100%|██████████| 104M/104M [00:07<00:00, 14.6MB/s]
Creating temporary folder (/var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-13_install-data_qhg25lfh)
Unzip data to: /var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-13_install-data_qhg25lfh
Copying data to: /Users/msresearch/spinalcordtoolbox/data/PAM50
Removing temporary folders...
Done!
sct_download_data -d deepseg_sc_models
--
Spinal Cord Toolbox (git-master-a631c4d978cbd1d8a5e14da4b7a30e244eca2f9c)
sct_download_data -d deepseg_sc_models
--
Trying URL: https://github.com/spinalcordtoolbox/deepseg_sc_models/releases/download/r20180610/20220325_deepseg_sc_models_onnx.zip
Downloading: 20220325_deepseg_sc_models_onnx.zip
Status: 100%|██████████| 19.5M/19.5M [00:01<00:00, 15.2MB/s]
Creating temporary folder (/var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-15_install-data_hxlj1mpj)
Unzip data to: /var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-15_install-data_hxlj1mpj
Copying data to: /Users/msresearch/spinalcordtoolbox/data/deepseg_sc_models
Removing temporary folders...
Done!
sct_download_data -d deepseg_gm_models
--
Spinal Cord Toolbox (git-master-a631c4d978cbd1d8a5e14da4b7a30e244eca2f9c)
sct_download_data -d deepseg_gm_models
--
Trying URL: https://github.com/spinalcordtoolbox/deepseg_gm_models/releases/download/r20180205/20220325_deepseg_gm_models_onnx.zip
Downloading: 20220325_deepseg_gm_models_onnx.zip
Status: 100%|██████████| 2.24M/2.24M [00:00<00:00, 14.1MB/s]
Creating temporary folder (/var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-16_install-data_cat_29ik)
Unzip data to: /var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-16_install-data_cat_29ik
Copying data to: /Users/msresearch/spinalcordtoolbox/data/deepseg_gm_models
Removing temporary folders...
Done!
sct_download_data -d deepseg_lesion_models
--
Spinal Cord Toolbox (git-master-a631c4d978cbd1d8a5e14da4b7a30e244eca2f9c)
sct_download_data -d deepseg_lesion_models
--
Trying URL: https://github.com/spinalcordtoolbox/deepseg_lesion_models/releases/download/r20180613/20220325_deepseg_lesion_models_onnx.zip
Downloading: 20220325_deepseg_lesion_models_onnx.zip
Status: 100%|██████████| 5.35M/5.35M [00:00<00:00, 13.3MB/s]
Creating temporary folder (/var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-18_install-data_28dkxfl4)
Unzip data to: /var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-18_install-data_28dkxfl4
Copying data to: /Users/msresearch/spinalcordtoolbox/data/deepseg_lesion_models
Removing temporary folders...
Done!
sct_download_data -d deepreg_models
--
Spinal Cord Toolbox (git-master-a631c4d978cbd1d8a5e14da4b7a30e244eca2f9c)
sct_download_data -d deepreg_models
--
Trying URL: https://github.com/ivadomed/multimodal-registration/releases/download/r20220512/models.zip
Downloading: models.zip
Status: 100%|██████████| 158M/158M [00:09<00:00, 16.0MB/s]
Creating temporary folder (/var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-28_install-data_1w9wslk9)
Unzip data to: /var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-28_install-data_1w9wslk9
Copying data to: /Users/msresearch/spinalcordtoolbox/data/deepreg_models
Removing temporary folders...
Done!
sct_download_data -d PAM50_normalized_metrics
--
Spinal Cord Toolbox (git-master-a631c4d978cbd1d8a5e14da4b7a30e244eca2f9c)
sct_download_data -d PAM50_normalized_metrics
--
Trying URL: https://github.com/spinalcordtoolbox/PAM50-normalized-metrics/archive/refs/tags/r20230222.zip
Downloading: PAM50-normalized-metrics-r20230222.zip
Status: 6.92MB [00:00, 8.05MB/s]
Creating temporary folder (/var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-31_install-data_0b80ly4s)
Unzip data to: /var/folders/mm/vhlf215s7k338w7srsxw2chm0000gn/T/sct_2024-06-19_11-59-31_install-data_0b80ly4s
Copying data to: /Users/msresearch/spinalcordtoolbox/data/PAM50_normalized_metrics
Removing temporary folders...
Done!
Status: 100%|██████████| 18.0M/18.0M [00:01<00:00, 15.1MB/s]
Validate installation...
--
Spinal Cord Toolbox (git-master-a631c4d978cbd1d8a5e14da4b7a30e244eca2f9c)
sct_check_dependencies
--
SYSTEM INFORMATION
------------------
SCT info:
- version: git-master-a631c4d978cbd1d8a5e14da4b7a30e244eca2f9c
- path: /Users/msresearch/spinalcordtoolbox
OS: osx (macOS-10.16-x86_64-i386-64bit)
CPU cores: Available: 8, Used by ITK functions: 8
RAM: Total: 8192MB, Used: 644MB, Available: 1014MB
OPTIONAL DEPENDENCIES
---------------------
Check FSLeyes version...............................[OK] (1.0.13)
MANDATORY DEPENDENCIES
----------------------
Check Python executable.............................[OK]
Using bundled python 3.9.19 (main, May 6 2024, 14:46:57)
[Clang 14.0.6 ] at /Users/msresearch/spinalcordtoolbox/python/envs/venv_sct/bin/python
Check if data are installed.........................[OK]
Check if dipy is installed........................../Users/msresearch/spinalcordtoolbox/spinalcordtoolbox/scripts/sct_check_dependencies.py:163: UserWarning: Private repos not supported. Skipping.
for req in requirements.parse(requirements_txt):
[OK] (1.8.0)
Check if ivadomed is installed......................[OK] (2.9.10)
Check if matplotlib is installed....................[OK] (3.9.0)
Check if matplotlib-inline is installed.............[OK]
Check if monai is installed.........................
Installation validation Failed!
Installation failed!
Please find the file "/Users/msresearch/spinalcordtoolbox/install_sct_log.txt",
then upload it as a .txt attachment in a new topic on SCT's forum:
--> https://forum.spinalcordmri.org/c/sct
(base) msresearch@MSs-MacBook-Pro spinalcordtoolbox %
|
Ah, yes! There has been a misunderstanding. There is no need to re-run (you can rerun sct_check_dependencies after installing onnx, and it should no longer crash, indicating that the broken installation has been fixed) |
@joshuacwnewton - It works now! I successfully ran the full script and got results very similar, though not exactly the same, as Julien's above. The slight differences in the numbers might be due to the different SCT versions we're using. I will run the script for the rest of the subjects and do QC. Hopefully, we can submit the revised manuscript soon! Thank you and your team for your very kind help! |
Yay! I'm so glad things are working now. Thank you so much for your patience, and for providing lots of useful debugging information to help narrow down the issue. |
This PR implements the following features:
Warning
The script is now calling sct_deepseg (to segment the PSIR image), which requires SCT v6.3 or later.
TODO:
Fixes #91