-
Notifications
You must be signed in to change notification settings - Fork 11
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
Inconsistency of tissue-specific alpha values #40
Comments
Just noticed that the updated values cited above are also a feature of the updated branch that merged @eleonoracarpino's changes. Both setups (see updated default.yaml waiting to be merged) would be inconsistent with our target settings as described in the comment above. |
The current comment explains Not sure if this is true, or whether this directly specifies the Update: it is used in two functions:
|
As per the example above:
Thus, Note that in the previous default_config, medium.alpha_power_true = 1.2 was specified in the comment for 250kHz transducers. I do not know where this value came from. TLDR: |
Donders-Institute#40 Tissue parameters and transducer specifications previously mixed 250 and 500 kHz parameters.
Commit fd82fb4 adjusts the default config to the 500kHz parameters described above. Instructions of what parameters to adjust for other fundamental frequencies (e.g., 250/300 kHz) remains largely missing. |
I wonder whether there is a significant bug regarding the alpha values. In multiple parts of the current code, the medium mask creation seems to not extract the proper |
Here is the table with the ITRUSST benchmarks. Notably, these are the frequency-specific alphas at 500 kHz. At 1 MHz, values should be higher. Based on Eleonora's discussion above alpha should be updated for both cortical and trabecular bone. Bone (overall): 13.3 dB/cm at 1 MHz [Pinton et al., 2012] 0.3–1 Np/cm = 2.6 - 8 dB/cm [500kHz, Hüter et al., 1952] References Pinton, Gianmarco, et al. "Attenuation, scattering, and absorption of ultrasound in the skull bone." Medical physics 39.1 (2012): 299-307. T. F. Hüter, “Messung der Ultraschallabsorption im menschlichen Webb, T. D., Leung, S. A., Ghanouni, P., Dahl, J. J., Pelc, N. J., & Pauly, K. B. (2021). Acoustic Attenuation: Multifrequency Measurement and Relationship to CT and MR Imaging. IEEE transactions on ultrasonics, ferroelectrics, and frequency |
Based on these values, the following
The skin and brain setup is largely consistent with the previous default config (except that they may not have been properly used to the bug noted above), with the only deviation being that If the bug about reading in Perhaps relatedly, the calculation of
|
Try to fix part of issue Donders-Institute#40 (for layered solution); save estimated attenuation coefficients as debug output
Based on Fig 2 in https://pubs.aip.org/asa/jasa/article/136/4/1499/905255/Modeling-power-law-absorption-and-dispersion-in, absorption coefficients should increase with fundamental frequency. My current results rather double the absorption for 500 kHz. Edit: Nevermind, I became confused by the processing steps. The values above are the 53.2*0.5MHz^2 = 13.3 So I think my updated setup may work as expected now (for the binary skull implementation; the deviation for pseudoCTs as described above remains unresolved; perhaps a scaling factor is needed there as the config expects values specified for 0.5 MHz, not 1 MHz). |
From Carpino et al. (2024). Transcranial ultrasonic stimulation of the human amygdala to modulate threat learning. MSc thesis. The absorption coefficients in the The error of reading in |
RE: pseudoCT, the Given
we need to convert the pseudoCT-based attenuation
This step seems to be missing from Yakuub et al.'s implementation as well however. Intuitively, this should underestimate the attenuation given that the attenuation refers to values measured at 500 kHz and thus would understimate attenuation at 1 MHz by an exponential I suppose it should always be
but then the exponent really matters when computing solutions for any other central frequency beyond 500 kHz. For 500 kHz, this should lead to good convergence with the binary skull
|
Just a bit more background info on how the parameters work within the pipeline:
In theory, as long as prefactors and exponents in the config are specified to result in the desired attenuation at the specified fundamental frequency, this conversion should not have too much of an impact. I am not yet convinced that it doesn't have an impact in practice, e.g., by affecting the stability of solutions. |
Thank you for diving into this to such an extent! To ensure future users that are not familiar with these issues, however, it might be good to create separate blocks of medium properties (so |
Sounds like a good feature improvement. Intuitively, it should also be possible to settle on one particular value that holds across frequencies. Ultimately, the formula already considers fundamental frequency (alpha = a x freq ^ b). The problem is that we then also have to have a valid-ish estimate of exponent b (which now is chosen arbitrarily to match the fundamental frequency of interest). |
I wasn't aware that it might be possible to settle on a set of values that hold for all fundamental frequencies. In that scenario using one set for all frequencies would indeed be preferred. However, if we cannot find a way to not vary b for different frequencies the proposed solution could be a foolproof fit. |
@KTZ228 The following may serve as a general definition and to a large extent converges with the definition used within k-Plan:
|
The values used by k-plan are documented here. |
Frequency-specific calculation of attenuation/absorption
|
Hi all,
I noticed inconsistent comments in the config.yaml, and a potential source for errors when setting the attenuation coefficient. Despite presumed dependence on the fundamental frequency, values are currently hardcoded and relate to 250kHz fundamental frequency (cohering with
source_freq_hz
) instead of the specifieddefault_freq
of 500k. These parameters can be overwritten by a study-specific script, but this seems like a pretty significant source of potential deviations in acoustic intensity and heating. Would be best to always calculate frequency-specific values, or at least document this as a specification to look out for.Here is @eleonoracarpino's original comments in our internal channels (12th Oct. 2023):
The text was updated successfully, but these errors were encountered: