scilus / scilpy

The Sherbrooke Connectivity Imaging Lab (SCIL) Python dMRI processing toolbox
Other
62 stars 60 forks source link

BundleSeg exploration viewer for filtering #1035

Open frheault opened 1 month ago

frheault commented 1 month ago

Quick description

Implemented a new BundleSeg slider feature for filtering Improved code to limit RAM usage by processing FreeSurfer surfaces (FSS) in chunks, making it easier to handle larger datasets.

New Features:

Performance Improvements: Slight speed optimization, especially for large datasets. For example, processing a 2GB tractogram with 6M streamlines and 51 atlas bundles takes approximately 5 minutes on 4 processes. RAM usage is now optimized, allowing for smoother handling of large subjects on machines with limited resources (e.g., 5 large subjects processed on 4 CPUs with 32GB RAM).

Note: Using more than 4 processes (e.g., 8 or 16) doesn't significantly improve speed in this scenario.

image Title: ...

Type of change

Check the relevant options.

Provide data, screenshots, command line to test (if relevant)

...

Checklist

pep8speaks commented 1 month ago

Hello @frheault, Thank you for updating !

Line 152:80: E501 line too long (81 > 79 characters) Line 163:80: E501 line too long (85 > 79 characters) Line 177:80: E501 line too long (80 > 79 characters) Line 261:80: E501 line too long (81 > 79 characters) Line 319:80: E501 line too long (83 > 79 characters)

Line 210:80: E501 line too long (81 > 79 characters) Line 277:80: E501 line too long (84 > 79 characters) Line 286:80: E501 line too long (84 > 79 characters) Line 375:80: E501 line too long (81 > 79 characters)

Line 192:80: E501 line too long (80 > 79 characters) Line 217:80: E501 line too long (80 > 79 characters) Line 292:80: E501 line too long (80 > 79 characters) Line 406:80: E501 line too long (80 > 79 characters) Line 458:80: E501 line too long (81 > 79 characters) Line 465:80: E501 line too long (80 > 79 characters)

Line 25:80: E501 line too long (80 > 79 characters)

Comment last updated at 2024-11-19 14:02:24 UTC
codecov[bot] commented 1 month ago

Codecov Report

Attention: Patch coverage is 18.96956% with 346 lines in your changes missing coverage. Please review.

Project coverage is 68.08%. Comparing base (e7337af) to head (6ec2906).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #1035 +/- ## ========================================== - Coverage 68.93% 68.08% -0.86% ========================================== Files 438 439 +1 Lines 22889 23219 +330 Branches 3106 3135 +29 ========================================== + Hits 15779 15809 +30 - Misses 5793 6088 +295 - Partials 1317 1322 +5 ``` | [Components](https://app.codecov.io/gh/scilus/scilpy/pull/1035/components?src=pr&el=components&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=scilus) | Coverage Δ | | |---|---|---| | [Scripts](https://app.codecov.io/gh/scilus/scilpy/pull/1035/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=scilus) | `68.47% <3.90%> (-1.37%)` | :arrow_down: | | [Library](https://app.codecov.io/gh/scilus/scilpy/pull/1035/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=scilus) | `67.52% <48.27%> (-0.14%)` | :arrow_down: |

🚨 Try these New Features:

frheault commented 1 month ago

@GuillaumeTh Testing BundleSeg on a random big tractogram with the new --exploration_mode option and then using the viewer would be great for a tumor case showcase.