niak icon indicating copy to clipboard operation
niak copied to clipboard

add support for non-uniformity correction

Open pbellec opened this issue 3 years ago • 0 comments

this would be based on AFNI.

TODO

  • [ ] update niak docker container to add afni.
  • [ ] create bricks for distortion correction
  • [ ] run tests
  • [ ] add brick to the preprocessing pipeline

Resources:

Example of docker file for AFNI nipype interfaces for Qwarp and QwarpPlusMinus.

pbellec avatar Feb 14 '22 15:02 pbellec

Thank you for contributing to aeon

I have added the following labels to this PR based on the title: [ $\color{#EC843A}{\textsf{maintenance}}$ ]. I have added the following labels to this PR based on the changes made: [ $\color{#5209C9}{\textsf{distances}}$, $\color{#2C2F20}{\textsf{testing}}$ ]. Feel free to change these if they do not properly represent the PR.

The Checks tab will show the status of our automated tests. You can click on individual test runs in the tab or "Details" in the panel below to see more information if there is a failure.

If our pre-commit code quality check fails, any trivial fixes will automatically be pushed to your PR unless it is a draft.

Don't hesitate to ask questions on the aeon Slack channel if you have any.

aeon-actions-bot[bot] avatar Mar 27 '24 17:03 aeon-actions-bot[bot]

One key change worth documenting is in the cache script there is this step:

      - name: Install CPU version of pytorch on linux
        uses: nick-fields/retry@v3
        if: steps.cache.outputs.cache-hit != 'true' && runner.os == 'Linux'
        with:
          timeout_minutes: 30
          max_attempts: 3
          command: python -m pip install torch --index-url https://download.pytorch.org/whl/cpu

I found the default pip install torch to be multiple gbs in size because it installs all the GPU dependencies (which we dont use in the CI). I instead opt to only install the CPU dependencies for the cache which is only 200mbs of size. This allowed us to stay under the 10gb limit

chrisholder avatar Mar 27 '24 18:03 chrisholder

is this sped up? image

TonyBagnall avatar Mar 27 '24 20:03 TonyBagnall

The caching doesn't exist until merged onto main (as the cache's need to be made on main).

This is a run on my fork using the pip cache: image

chrisholder avatar Mar 27 '24 21:03 chrisholder

This is the usage on this branch that doesn't have any pip caching: image

Overall the caching saves a hour over all tests

chrisholder avatar Mar 27 '24 21:03 chrisholder

Even with the comments and questions in the review, I really like the idea of this and hope it works out. Thanks for the work.

MatthewMiddlehurst avatar Mar 28 '24 01:03 MatthewMiddlehurst