Conversation

teanijarv
  • added Hybrid Surface and Volume Segmentation ('hsvs') option to the 5TT image generation class
  • removed the in_file existing requirement (exists=True -> exists=False) for 5ttgen because hsvs requires a directory not a file as input
  • changed '-inverse' parameter location from 1 to 2 in mrtransform class (to make it possible to insert it in the command together with other parameters)

- Added 'hsvs' option for 5ttgen function
- Changed '-inverse' parameter location from 1 to 2 (otherwise cannot use together with -linear)
@teanijarvteanijarv changed the title ENH: added 'hsvs' option to 5ttgen ENH: added 'hsvs' option to 5ttgen + mrtransform fix Feb 20, 2024
argstr="%s",
position=-3,
mandatory=True,
desc="tissue segmentation algorithm",
)
in_file = File(
exists=True, argstr="%s", mandatory=True, position=-2, desc="input image"
exists=False, argstr="%s", mandatory=True, position=-2, desc="input image"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So it seems like you need either a file or a directory, not a missing file.

in_file = traits.Either(
    File(exists=True),
    Directory(exists=True),
    argstr="%s", mandatory=True, position=-2, desc="input image / directory"
)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! I added this solution now. :)

@@ -822,7 +823,7 @@ class MRTransformInputSpec(MRTrix3BaseInputSpec):
)
invert = traits.Bool(
argstr="-inverse",
position=1,
position=2,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This means -invert will appear after all of the things with position=1. Does it need to come last, before in_files/out_file?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed the position change for now, but I just added this previously because if I wanted to use -inverse with some other parameter and they both had 'position=1' then only one would show up on the command. But it can also be fixed by just using inputs.args string.

@codecovCodecov

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 63.15%. Comparing base (42302ed) to head (7fc44fd).
Report is 7 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #3630   +/-   ##
=======================================
  Coverage   63.15%   63.15%           
=======================================
  Files         308      308           
  Lines       40825    40825           
  Branches     5656     5656           
=======================================
  Hits        25781    25781           
  Misses      14031    14031           
  Partials     1013     1013           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@effigieseffigies merged commit 46e1df6 into nipy:master Mar 17, 2024
@effigieseffigies mentioned this pull request Mar 20, 2024
6 tasks
@effigieseffigies mentioned this pull request Oct 31, 2024
6 tasks
Sign up for free to join this conversation on . Already have an account? Sign in to comment
None yet
None yet

Successfully merging this pull request may close these issues.