Dear FreeSurfer Group,
I have a brief question about how thresholding is conducted in TRACULA. I am looking to threshold path.pd.nii.gz for use as a mask in other analyses. However, I am having difficulty determining the threshold to use to create an appropriate mask. The FreeSurfer literature and wiki suggest that the optimal threshold is 20% of the maximum value. However, this differs from the apparent thresholding used to create the merged_avg file and pathstats.overall.txt.
For example, when I load my merged_avg into freeview, the automatic threshold for the forceps major for a given subject is 39.4, and when I threshold path.pd.nii.gz at 39.4, the volume is 679 voxels. This volume matches the volume seen in pathstats.overall.txt. Given that 20% of the maximum is 39.4, I should expect the maximum threshold to have an intensity of 197. However, the maximum threshold is 509, making 39.4 only 7.74% of the maximum value. This suggests that I should threshold path.pd.nii.gz at 101.8. While I used the forceps major as an example, this issue persists across tracts and across subjects. There doesn't appear to be any clear pattern which suggests the tracts are thresholded at a consistent value for all tracts; for one subject, the reported 20% of max is in actuality anywhere from 6.43% to 15.11% of the actual maximum value. I also attempted to force dmri_mergepaths to give me the appropriate maximum value by running the command with a --thresh value of 1. However, the output still opened in freeview with a reported maximum intensity of 197. I am using tracula in FreeSurfer 6.0.
How does TRACULA conduct its thresholding within dmri_mergepaths and dmri_pathstats? Why does there appear to be a discrepancy between the reported maximum value and the actual maximum value? And what threshold should I use to create my mask for use outside of FreeSurfer? Thank you for your help.
Best, Duncan Cleveland University of Minnesota
Hi Duncan - We actually use a "robust max", i.e., the 99th percentile of the values in path.pd.nii.gz. This is to avoid cases where the absolute max is an outlier, which would cause the threshold to be too high and the isosurface in freeview to be generated from too few voxels.
Best,
a.y
________________________________ From: freesurfer-bounces@nmr.mgh.harvard.edu freesurfer-bounces@nmr.mgh.harvard.edu on behalf of Duncan Cleveland clev0136@umn.edu Sent: Tuesday, December 5, 2017 10:07:02 AM To: freesurfer@nmr.mgh.harvard.edu Subject: [Freesurfer] Thresholding in Tracula
Dear FreeSurfer Group,
I have a brief question about how thresholding is conducted in TRACULA. I am looking to threshold path.pd.nii.gz for use as a mask in other analyses. However, I am having difficulty determining the threshold to use to create an appropriate mask. The FreeSurfer literature and wiki suggest that the optimal threshold is 20% of the maximum value. However, this differs from the apparent thresholding used to create the merged_avg file and pathstats.overall.txt.
For example, when I load my merged_avg into freeview, the automatic threshold for the forceps major for a given subject is 39.4, and when I threshold path.pd.nii.gz at 39.4, the volume is 679 voxels. This volume matches the volume seen in pathstats.overall.txt. Given that 20% of the maximum is 39.4, I should expect the maximum threshold to have an intensity of 197. However, the maximum threshold is 509, making 39.4 only 7.74% of the maximum value. This suggests that I should threshold path.pd.nii.gz at 101.8. While I used the forceps major as an example, this issue persists across tracts and across subjects. There doesn't appear to be any clear pattern which suggests the tracts are thresholded at a consistent value for all tracts; for one subject, the reported 20% of max is in actuality anywhere from 6.43% to 15.11% of the actual maximum value. I also attempted to force dmri_mergepaths to give me the appropriate maximum value by running the command with a --thresh value of 1. However, the output still opened in freeview with a reported maximum intensity of 197. I am using tracula in FreeSurfer 6.0.
How does TRACULA conduct its thresholding within dmri_mergepaths and dmri_pathstats? Why does there appear to be a discrepancy between the reported maximum value and the actual maximum value? And what threshold should I use to create my mask for use outside of FreeSurfer? Thank you for your help.
Best, Duncan Cleveland University of Minnesota
freesurfer@nmr.mgh.harvard.edu