Hi Hebah,
You don’t need to install Surfa separately. It is part of your Freesurfer installation. Surfa Volume takes .mgz/.mgh, .nii/.nii.gz formats.
Once you sourced your Freesurfer environment, use ‘fspython’ to access the Python distribution shipped with your Freesurfer. https://surfer.nmr.mgh.harvard.edu/fswiki/SetupConfiguration_Mac https://surfer.nmr.mgh.harvard.edu/fswiki/SetupConfiguration_Linux
What I showed in previous message was from an interactive fspython session. You can write your own python scripts to use Surfa. On Surfa github, there are some documentations on how to use the library. In your sourced Freesurfer environment, use ‘fspython’ to run your scripts.
Best,
Yujing
From: Hebah Tanveer hebah.tanveer@biotexmedical.com Sent: Tuesday, June 18, 2024 10:32 AM To: Huang, Yujing YHUANG43@mgh.harvard.edu Subject: Re: [Freesurfer] Brain in a Box
External Email - Use Caution Hi, Yujing! I am new to the field of neuroimaging and want to better understand how to run Surfa. I'll need to install Python+IDE, C+IDE, and then run pip install surfa in my computer's command window? What is the file format of the slice images that Surfa will intake?
Best, Hebah
On Tue, Jun 18, 2024 at 7:26 AM Huang, Yujing <YHUANG43@mgh.harvard.edumailto:YHUANG43@mgh.harvard.edu> wrote: I'm wondering if the bbox() implementation in Surfa (https://github.com/freesurfer/surfa/tree/master) will achieve the task?
surfa.image.framed.bbox() (https://github.com/freesurfer/surfa/blob/master/surfa/image/framed.py#L203) computes the bounding box of the image data greater than zero.
I tried it on bert orig.mgz,
import surfa as sf bert='/usr/local/freesurfer/dev/subjects/bert/mri/orig.mgz' vol=sf.load_volume(bert) vol
sf.Volume(shape=(256, 256, 256), dtype=uint8)
vol.shape
(256, 256, 256)
bbox=vol.bbox() bbox
(slice(47, 207, None), slice(3, 255, None), slice(3, 252, None))
Yujing
-----Original Message----- From: freesurfer-bounces@nmr.mgh.harvard.edumailto:freesurfer-bounces@nmr.mgh.harvard.edu <freesurfer-bounces@nmr.mgh.harvard.edumailto:freesurfer-bounces@nmr.mgh.harvard.edu> On Behalf Of Wighton, Paul Sent: Monday, June 17, 2024 5:34 PM To: Freesurfer support list <freesurfer@nmr.mgh.harvard.edumailto:freesurfer@nmr.mgh.harvard.edu> Subject: Re: [Freesurfer] Brain in a Box
Hi Hebah,
Interesting application. You could try running mri_synthstrip then analyse the resulting binary mask to determine the first and last slices in each direction.
-Paul
________________________________________ From: freesurfer-bounces@nmr.mgh.harvard.edumailto:freesurfer-bounces@nmr.mgh.harvard.edu <freesurfer-bounces@nmr.mgh.harvard.edumailto:freesurfer-bounces@nmr.mgh.harvard.edu> on behalf of Hebah Tanveer <hebah.tanveer@biotexmedical.commailto:hebah.tanveer@biotexmedical.com> Sent: Monday, June 17, 2024 5:18 PM To: freesurfer@nmr.mgh.harvard.edumailto:freesurfer@nmr.mgh.harvard.edu Subject: [Freesurfer] Brain in a Box
External Email - Use Caution
I'm trying to determine the smallest rectangular prism that a brain will fit in based on its MRI scan. My strategy is as follows: I am moving through the brain axially, sagittally, and coronally to see where the brain "starts" appearing and "stops" appearing. Then, I'm subtracting the amount of no-brain slices from the total number of slices and multiplying the result by the slice thickness.
This should get me the length (sagittal plane), width (coronal plane), and height (axial plane) of a box that contains the brain.
Is there a function within FreeSurfer that can automate this process of determining "first and last sight of brain" ? It is quite time consuming to manually check hundreds of patients!
Best, Hebah
_______________________________________________ Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edumailto:Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
_______________________________________________ Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edumailto:Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://www.massgeneralbrigham.org/complianceline https://www.massgeneralbrigham.org/complianceline . Please note that this e-mail is not secure (encrypted). If you do not wish to continue communication over unencrypted e-mail, please notify the sender of this message immediately. Continuing to send or respond to e-mail after receiving this message means you understand and accept this risk and wish to continue to communicate over unencrypted e-mail.
You can also use mri_mask, eg, after running synthstrip, eg mri_mask -bb 0 stripped.mgz stripped.mgz stripped.crop.mgz -bb 0 means to create a tight (0) fitting bounding box around the non-zero voxels. The output stripped.crop.mgz will be the cropped output
On 6/18/2024 11:00 AM, Huang, Yujing wrote:
Hi Hebah,
You don’t need to install Surfa separately. It is part of your Freesurfer installation. Surfa Volume takes .mgz/.mgh, .nii/.nii.gz formats.
Once you sourced your Freesurfer environment, use ‘fspython’ to access the Python distribution shipped with your Freesurfer.
https://surfer.nmr.mgh.harvard.edu/fswiki/SetupConfiguration_Mac
https://surfer.nmr.mgh.harvard.edu/fswiki/SetupConfiguration_Linux
What I showed in previous message was from an interactive fspython session. You can write your own python scripts to use Surfa. On Surfa github, there are some documentations on how to use the library. In your sourced Freesurfer environment, use ‘fspython’ to run your scripts.
Best,
Yujing
*From:*Hebah Tanveer hebah.tanveer@biotexmedical.com *Sent:* Tuesday, June 18, 2024 10:32 AM *To:* Huang, Yujing YHUANG43@mgh.harvard.edu *Subject:* Re: [Freesurfer] Brain in a Box
* External Email - Use Caution *
Hi, Yujing! I am new to the field of neuroimaging and want to better understand how to run Surfa. I'll need to install Python+IDE, C+IDE, and then run pip install surfa in my computer's command window? What is the file format of the slice images that Surfa will intake?
/Best, /*Hebah*
On Tue, Jun 18, 2024 at 7:26 AM Huang, Yujing YHUANG43@mgh.harvard.edu wrote:
I'm wondering if the bbox() implementation in Surfa (https://github.com/freesurfer/surfa/tree/master) will achieve the task? surfa.image.framed.bbox() (https://github.com/freesurfer/surfa/blob/master/surfa/image/framed.py#L203) computes the bounding box of the image data greater than zero. I tried it on bert orig.mgz, >>> import surfa as sf >>> bert='/usr/local/freesurfer/dev/subjects/bert/mri/orig.mgz' >>> vol=sf.load_volume(bert) >>> vol sf.Volume(shape=(256, 256, 256), dtype=uint8) >>> vol.shape (256, 256, 256) >>> bbox=vol.bbox() >>> bbox (slice(47, 207, None), slice(3, 255, None), slice(3, 252, None)) Yujing -----Original Message----- From: freesurfer-bounces@nmr.mgh.harvard.edu <freesurfer-bounces@nmr.mgh.harvard.edu> On Behalf Of Wighton, Paul Sent: Monday, June 17, 2024 5:34 PM To: Freesurfer support list <freesurfer@nmr.mgh.harvard.edu> Subject: Re: [Freesurfer] Brain in a Box Hi Hebah, Interesting application. You could try running mri_synthstrip then analyse the resulting binary mask to determine the first and last slices in each direction. -Paul ________________________________________ From: freesurfer-bounces@nmr.mgh.harvard.edu <freesurfer-bounces@nmr.mgh.harvard.edu> on behalf of Hebah Tanveer <hebah.tanveer@biotexmedical.com> Sent: Monday, June 17, 2024 5:18 PM To: freesurfer@nmr.mgh.harvard.edu Subject: [Freesurfer] Brain in a Box External Email - Use Caution I'm trying to determine the smallest rectangular prism that a brain will fit in based on its MRI scan. My strategy is as follows: I am moving through the brain axially, sagittally, and coronally to see where the brain "starts" appearing and "stops" appearing. Then, I'm subtracting the amount of no-brain slices from the total number of slices and multiplying the result by the slice thickness. This should get me the length (sagittal plane), width (coronal plane), and height (axial plane) of a box that contains the brain. Is there a function within FreeSurfer that can automate this process of determining "first and last sight of brain" ? It is quite time consuming to manually check hundreds of patients! Best, Hebah _______________________________________________ Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer _______________________________________________ Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://www.massgeneralbrigham.org/complianceline <https://www.massgeneralbrigham.org/complianceline> . Please note that this e-mail is not secure (encrypted). If you do not wish to continue communication over unencrypted e-mail, please notify the sender of this message immediately. Continuing to send or respond to e-mail after receiving this message means you understand and accept this risk and wish to continue to communicate over unencrypted e-mail.
Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
freesurfer@nmr.mgh.harvard.edu