Giter VIP home page Giter VIP logo

Comments (2)

oesteban avatar oesteban commented on August 14, 2024

It looks like we're moving from passing a dictionary of fieldmaps and metadata to passing a PyBIDS BIDSFile object that provides access to these things.

I am concerned that we are tying the methods, which are general, too closely to a BIDS organizational scheme. While I think ingesting BIDS datasets is good, this tool will almost never be used in isolation, because you aren't generally going to want to susceptibility-correct non-motion-corrected files. From the perspective of benchmarking and making comparisons, too much BIDS integration may reduce flexibility, as well.

The change is only for the workflow that orchestrates the available fieldmaps. I've been back and forth with this - whether it should be part of fMRIPrep's codebase or offered here for other tools to reuse.

Right now it is probably an overkill but in the near future we can think of averaging several solutions or allowing more complex IntendedFor prescriptions.

This is partly inspired by Neurostars #5207, which asks about the selection process as an isolable tool. By tying too closely to BIDS, we may be making this less usable in isolation.

When attempting to use in isolation, one should directly access the appropriate workflow. I don't think this particular change affects that.

There's also a concern with relying on PyBIDS data structures like BIDSFile. From FitLins work, I can tell you that keeping in sync with the PyBIDS API can be difficult.

Yes, I'm also concerned with this. Perhaps, I accepted this friction because the BIDSFile object is not to be passed down the line to subworkflows.

I think an interface or function to populate the available fieldmaps and metadata from BIDS is a good thing to provide, but I would think that it would be ideal if the actual workflows simply worked with nipype inputs and some vanilla Python data structures (e.g., dict).

I'll try to think this through, it might be possible to find a common ground where the interaction with PyBIDS can be scoped into a function that returns the fieldmap correction schedule with vanilla Python structure.

from sdcflows.

oesteban avatar oesteban commented on August 14, 2024

The preferred interface now is lists of pairs (str path, metadata dict). Please reopen if there is something else to do here. SDCFlows also provides a convenience method to generate these from a pyBIDS get_fieldmap() call.

from sdcflows.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.