willi3by / dbsipy

0 stars 0 forks source link

Unstable DBSI Fitting #2

Open jrf1024 opened 1 month ago

jrf1024 commented 1 month ago

I want to express my gratitude for sharing the computation code. After reviewing your code and testing it with my own data, I have a few questions and would greatly appreciate your guidance.

  1. I noticed there is an dbsipy_updates folder. As a user, I am a bit confused about whether I should use the dbsi_gpt.ipynb code within that folder for testing, or stick with the original testing.py code. Could you provide a simple tutorial on which one to use?
  2. When testing with my data, I found that the Optimized c_Nplus1 value is unstable. It changes with different iteration counts and even varies significantly when the same iteration count is repeated. How can I determine the fitting effectiveness, ensure convergence, and verify the accuracy of the calculated parameters?
  3. Lastly, the resulting scaled_f_values are as follows: array([0.10485103, 0.05952385, 0.08900899, 0.01468119, 0.04437302, 0.13862663, 0.03267206, 0.05920171, 0.03132044, 0.03277356, 0.02048, 0.02148274, 0.01587558, 0.02205877, 0.03587038, 0.0539678, 0.00162026, 0.07877419, 0.04929704, 0.02540034, 0.00725697, 0.06088345]). Could you please explain what each of these values represents?
  4. Some testing files. dbsi_gpt.ipynb.zip

Thank you very much for your assistance.

willi3by commented 1 month ago

@jrf1024 Thanks for your interest in this code! This code is actually still under active development and is not fully functional yet. We are working on completing the functionality in the near future though, hopefully within the next month or two. Feel free to open a branch to develop the code if you want, the more people working on it the better! Otherwise, I would recommend checking back in about a month. I can answer 3 though. the scaled f values are the relative fiber fraction for each of the components of the model. In the current implementation, this corresponds to the number of anisotropic fibers resolved in the first fit plus the number of isotropic components in the defined isotropic spectrum. Hopefully that makes sense.