Hi Linda,
With your permission, I am adding the DIPY mailing list, so others can
weigh in and/or benefit from the discussion.
My hunch is that the noise you are seeing in the ventricles is due to
artifacts/noise. Do you do any removal of Gibbs ringing artifacts or any
denoising of the data before analyzing it with fwdti?
Cheers,
Ariel
On Wed, Jul 1, 2020 at 12:22 PM Linda Jasmine Hoffman <tuf72977(a)temple.edu>
wrote:
> Good afternoon DIPY experts,
>
> My name is Linda Hoffman, and I'm the lab manager for Dr. Ingrid Olson's
> Cognitive Neuroscience Lab at Temple University. I have been working on
> implementing a DIPY-based free-water elimination (FWE) pipeline that my
> labmate, Katie Jobson, adapted from your website
> <https://dipy.org/documentation/1.0.0./examples_built/reconst_fwdti/> in
> order to extract free-water corrected (FWC) scalar maps from a HYDI dataset
> that I'm analyzing. For your reference, I am ultimately planning to
> calculate FWC DTI metrics for the fornix and genu of the corpus callosum
> after performing probabilistic tractography. I have preprocessed my data
> using FSL version 6.0 and MRtrix3 on a linux machine.
>
> While I have successfully extracted FWC FA, MD, RD, and AD maps from my
> data using this pipeline, there still seems to be a disproportionate amount
> of noise in the ventricles, especially when comparing my output to your
> examples on the website linked above. This is the case even after
> eliminating voxels with a water volume fraction (WVF) exceeding 70%. In
> light of this, I was wondering if you may be able to address the following
> questions:
>
> - Is the amount of ventricular noise post-FWE in my scalar maps within
> a normal range? Will this preclude me from extracting valid FWC DTI
> metrics from the fornix and the genu? Here are some screenshots from a
> representative subject's scalar maps:
>
> *FA map with WVF elimination at a threshold of 70%*
> [image: fa_70.png]
> *MD map with WVF elimination at a threshold of 70%*
> [image: md_70.png]
> *RD map with WVF elimination at a threshold of 70%*
> [image: rd_70.png]
> *AD map with WVF elimination at a threshold of 70%*
> [image: ad_70.png]
>
>
> - If this noise is not within an acceptable range, how might I be able
> optimize our DIPY script so that I can perform a better FWE? I tried
> comparing the results from using a stricter WVF threshold of 60% as well as
> using no WVF thresholding to the above results. Using a stricter threshold
> did not completely eliminate the noise problem, but it did help a little
> bit. However, I'm not sure if there is a precedent for this level of
> thresholding in the literature, or if it is actually appropriate.
> Screenshots from a representative subject are listed below:
>
> *FA map with WVF elimination at a threshold of 60%*
> [image: fa_60.png]
>
> *MD map with WVF elimination at a threshold of 60%*
> [image: md_60.png]
> *FA map with No WVF elimination threshold*
> [image: fa_none.png]
> *MD map with No WVF elimination threshold*
> [image: md_none.png]
>
> I have attached a zip file with the following information for your
> reference:
>
> 1. Input data from a representative subject. This includes DWI
> volumes collected at b values between 0 to 2000. This is contained in the *subject_data
> *subfolder.
> 2. Scalar maps collected with a WVF thresholding rate of 70% (*F>.7*),
> 60% (*F>.6*), and with no thresholding (*no_F_threshold*).
> 3. Three versions of the DIPY script I've been using - each one
> accounts for a different rate of WVF thresholding. These scripts are contained
> in the *dipy_fwe_script_versions* subfolder.
>
> I sincerely appreciate all of your time and consideration, and look
> forward to hearing from you soon!
>
> Kind regards,
> Linda
>
> dipyfwe.zip
> <https://drive.google.com/a/temple.edu/file/d/1yvLYeB-cUNqBoce-43ler0-zf_vG8…>
> --
> *Lab Manager*
> *Cognitive Neuroscience Lab*
> Temple University
> 1701 N. 13th St.
> Philadelphia, PA 19122
>
> *Pronouns: * She/Her
> *Phone*: (215) 204-1708
> *Email*: tuf72977(a)temple.edu
>

Dear Experts,
1. Seeking guidance on ROI analysis on IVIM data.
2. I'll also be highly obliged if someone can also guide me for performing Varpro. PFA execution script for perusal.
Thank you.
Best Regards,
Amitkumar J. Choudhari,
Asst. Prof., Dept of Radiodiagnosis,
Tata Memorial Hospital.
>>> ivimfit_vp = ivimmodel_vp.fit(data_slice)
/home/amitjc/.local/lib/python3.8/site-packages/cvxpy/expressions/expression.py:516<http://expression.py:516/>: UserWarning:
This use of ``*`` has resulted in matrix multiplication.
Using ``*`` for matrix multiplication has been deprecated since CVXPY 1.1.
Use ``*`` for matrix-scalar and vector-scalar multiplication.
Use ``@`` for matrix-matrix and matrix-vector multiplication.
Use ``multiply`` for elementwise multiplication.
warnings.warn(__STAR_MATMUL_WARNING__, UserWarning)
/home/amitjc/.local/lib/python3.8/site-packages/cvxpy/expressions/expression.py:516<http://expression.py:516/>: UserWarning:
This use of ``*`` has resulted in matrix multiplication.
Using ``*`` for matrix multiplication has been deprecated since CVXPY 1.1.
Use ``*`` for matrix-scalar and vector-scalar multiplication.
Use ``@`` for matrix-matrix and matrix-vector multiplication.
Use ``multiply`` for elementwise multiplication.
warnings.warn(__STAR_MATMUL_WARNING__, UserWarning)
/home/amitjc/.local/lib/python3.8/site-packages/cvxpy/expressions/expression.py:516<http://expression.py:516/>: UserWarning:
This use of ``*`` has resulted in matrix multiplication.
Using ``*`` for matrix multiplication has been deprecated since CVXPY 1.1.
Use ``*`` for matrix-scalar and vector-scalar multiplication.
Use ``@`` for matrix-matrix and matrix-vector multiplication.
Use ``multiply`` for elementwise multiplication.
warnings.warn(__STAR_MATMUL_WARNING__, UserWarning)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/amitjc/.local/lib/python3.8/site-packages/dipy/reconst/multi_voxel.py", line 33, in new_fit
fit_array[ijk] = single_voxel_fit(self, data[ijk])
File "/home/amitjc/.local/lib/python3.8/site-packages/dipy/reconst/ivim.py<http://ivim.py/>", line 610, in fit
res = least_squares(self.nlls_cost, x_f, bounds=(bounds),
File "/home/amitjc/.local/lib/python3.8/site-packages/scipy/optimize/_lsq/least_squares.py", line 795, in least_squares
raise ValueError("`x0` is infeasible.")
ValueError: `x0` is infeasible.

Hi DIPY Experts,
I had a few questions regarding the Manjon localpca implementation using DIPY.
1) In the case of multiple b=0 volumes, is the noise estimated from just the b=0 volumes? In the case of only one b=0 volume is the noise then estimated from the diffusion weighted images instead?
2) Are the images registered using an affine transform so that the images are roughly aligned prior to noise estimation and localPCA? If so, are the affine transforms just stored as part of the header and not applied to create a new image in order to preserve the uncorrelated nature of the noise?
3) Some data such as those from GE scanners sometimes upsample the data during reconstruction. If this is true, then the assumption of spatial independence of noise is not held true and when running the localPCA (Matlab version) the results did not look much more different than the inputs. In this situation, is there another denoising technique you recommend that could handle this situation?
Thanks,
Ajay