Skip to content
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

DataType and input files #3

Open
francopestilli opened this issue Jan 1, 2018 · 14 comments
Open

DataType and input files #3

francopestilli opened this issue Jan 1, 2018 · 14 comments

Comments

@francopestilli
Copy link
Contributor

It would be great to discuss the needs for the workflow behind this App so to design a proper INPUT/OUTPUT and DataType.
@soichih @aarya22

@francopestilli
Copy link
Contributor Author

I attach our communication here:

INPUTS.
Inputs and out puts should theoretically be a DataType containing multishell DWI data. BVECS/BVALS. Ideally the App should create its own internal files that dipy might need to read these files, for example like the GTAB. Does this make sense to you? Perhaps we can start a thread with Ariel and Soichi about this issue? I Started an issue for us on GitHub.

PARAMETERS.
Parameters should be set by the user but have default that work well with the HCP 3T dataset. For example parameters such as radial order.

OUTPUTS.
Outputs should be all NIFTI files with the same header orientation of the input file. No plots.
We should not be worried if many output files are created, but instead, create as many ask possible.

Below all the outputs for which we should create a NIFTI:
• 1 Mean Squared Displacement (MSD) is a measure of how far protons are able to diffuse. a decrease in MSD indicates protons are hindered/restricted more, as can be seen by the high MSD in the CSF, but low in the white matter.
• 2 Q-space Inverse Variance (QIV) is a measure of variance in the signal, which is said to have higher contrast to white matter than the MSD [Hosseinbor2013]. We also showed that QIV has high sensitivity to tissue composition change in a simulation study [Fick2016b].
• 3 Return to origin probability (RTOP) quantifies the probability that a proton will be at the same position at the first and second diffusion gradient pulse. A higher RTOP indicates that the volume a spin is inside of is smaller, meaning more overall restriction. This is illustrated by the low values in CSF and high values in white matter.
• 4 Return to axis probability (RTAP) is a directional index that quantifies the probability that a proton will be along the axis of the main eigenvector of a diffusion tensor during both diffusion gradient pulses. RTAP has been related to the apparent axon diameter [Ozarslan2013] [Fick2016a] under several strong assumptions on the tissue composition and acquisition protocol.
• 5 Return to plane probability (RTPP) is a directional index that quantifies the probability that a proton will be on the plane perpendicular to the main eigenvector of a diffusion tensor during both gradient pulses. RTPP is related to the length of a pore [Ozarslan2013] but in practice should be similar to that of Gaussian diffusion.
• 6 Non-Gaussian diffusion in every voxel [Ozarslan2013]. This quantity is estimated through the ratio between Gaussian volume (MAPMRI’s first basis function) and the non-Gaussian volume (all other basis functions) of the fitted signal. For this value to be physically meaningful we must use a b-value threshold in the MAPMRI model. This threshold makes the scale estimation in MAPMRI only use samples that realistically describe Gaussian diffusion, i.e., at low b-values.

So 6 NIFTIs as output in the DataType for this App.

@arokem
Copy link

arokem commented Jan 1, 2018 via email

@arokem
Copy link

arokem commented Jan 1, 2018

FWIW, it seems that there are just a couple more unaddressed issues there, mostly around documentation (See e.g., https://github.com/nipy/dipy/pull/1350/files#r148071818).

@aarya22
Copy link
Contributor

aarya22 commented Jan 3, 2018

@arokem I notice that there is no Non-Gaussian Diffusion yet in the mapmri. I think we will have to make this function. @francopestilli We can make all of those outputs now except the last one. The Mapmri workflow also needs to input a model type: (Laplacian, Positivity, Both). Should we have this as a user input for the application? Or should we just keep one as default?

@francopestilli
Copy link
Contributor Author

@aarya22 Sounds good. -1 is acceptable. Model type should be an input the BL App can allow a selection and perhaps we could keep the Laplacian as Default.

@soichih
Copy link
Contributor

soichih commented Jan 4, 2018

For input, this app already takes dwi(& bvecs/bvals) as an input. dipy has a function to generate the gtab easily from bvecs/bvals, so I don't think it needs to be generated outside the app itself?

@aarya22 Please let me know if you need help with adding new parameters via Brainlife GUI - especially the enum parameter which is a bit tricky.

For output, I recommend outputting those nifti-s under "raw" output for now - with an appropriate output datatype tag (maybe like "mrimap"?) When we know exactly which output files should be generated, and have another app that can make use of the output, we can then formalize a new dedicated datatype with specific filename, meaning, etc.

@arokem
Copy link

arokem commented Jan 5, 2018 via email

@francopestilli
Copy link
Contributor Author

Thanks for working on this!

@aarya22
Copy link
Contributor

aarya22 commented Jan 25, 2018

@francopestilli @arokem I was told that having pre-set values for small-delta and big-delta for the mapmri application can lead to a faulty model. Rather the user should know the small-delta and big-delta from the acquisition parameters of the data they are using. You can see the discussion here dipy/dipy#1395

I'm not exactly sure what small-delta and big-delta are or how difficult it might be to acquire these values. Do you think that it is a good idea to include small-delta and big-delta as an input to this application?

@arokem
Copy link

arokem commented Jan 27, 2018 via email

@francopestilli
Copy link
Contributor Author

francopestilli commented Jan 27, 2018 via email

@arokem
Copy link

arokem commented Jan 27, 2018 via email

@francopestilli
Copy link
Contributor Author

francopestilli commented Jan 27, 2018 via email

@arokem
Copy link

arokem commented Jan 27, 2018 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants