FSLeyes and determining slice number for the CSA at slice level command


The program is working well for me so far, thank you. My two questions are:

  1. I am not able to see some of my results because I do not have FSLeyes on my computer. I’m worried about downloading this program because the last time I attempted to download some new program (freesurfer) it messed up my terminal and I was no longer able to process my SCT commands at all. I’m sure it was probably something that could have been fixed, however I was not able to determine the cause or fix it myself or after talking to someone who has more experience with computers. Ultimately I had to download the SCT on an alternate work station. I am worried that something similar could happen if I download FSLeyes. Do you think this could happen again or if not, would you recommend a certain version of FSLeyes that might be most likely not to do something like that?

  2. Where do I find the exact slice numbers I should use when I put in my sct_process_segmentation -i t2_seg.nii -z 2:13 -perslice 1 -o csa_perslice.csv command? Is it on the quality control check from sct_deepseg_sc -i t2.nii -c t2 -ofolder deepseg -qc ~/qc_singleSubj command? Thanks!


Hi Claire,

Thank you for your questions!

  1. Since you are working on a Windows machine, I would actually not recommend FSLeyes, because FSL itself does not easily support Windows. While it is possible to install FSLeyes on Windows, the installation process is quite involved, requiring the use of a virtualized Linux system within your Windows computer. :sweat:

    Instead, I would recommend using ITKSnap as an image viewer, since it natively supports Windows with a simple installer. Plus, SCT has updated its commands to be compatible with ITKSnap: At the end of every SCT tool, an ITKSnap command should be outputted for viewing the results.

    Regarding installation issues: I personally have not encountered any issues installing FSLeyes or ITKSnap alongside SCT, so I think you should be safe here. (I haven’t ever used Freesurfer though – As an SCT developer, I am curious as to what happened in the past to mess up your terminal!)

  2. Which slices you should specify depends on your goal, i.e. if you want to compute CSA for specific regions, specific vertebral levels, etc. In other words, you are free to customize the command to your liking – there’s no “right” answer here. :slight_smile:

    I would recommend taking a look at the “Computing shape metrics for PAM50-registered data” tutorial to see a detailed explanation of all of the different ways you can change the command to achieve certain goals.

Kind regards,

Hi Joshua,

Thank you very much for your answers, they were extremely helpful. Regarding the slices, I do know my area of interest is C2-5 but I’m just not sure where can I find the actual corresponding slice numbers? Is it something I have to retrieve from my PACS or is it something that I will find on one of the pieces of processed data? Thanks for your time,

Ahh, this clarifies things greatly. :slight_smile:

As far as SCT commands go, there are two main ways to quickly get a mapping between vertebral levels and axial slice numbers:

A) Using sct_label_vertebrae to directly determine the vertebral levels for a given anat image + cord segmentation.
B) Registering an image to the PAM50 template, then warping the template’s “vertebral level” file back to the subject’s coordinate space using sct_warp_template.

Both options will generate a vertebral level file (i.e. a mask of the spinal cord, with specific axial slices given the values 2, 3, 4, etc. corresponding to C2, C3, C4, etc.)

Once you have a vertebral level file, you can pass it directly to sct_process_segmentation, which will let you specify vertebral levels directly in the command using e.g. -vert 2:5, eliminating the need to specify slice numbers.

Such a command would look something like this:

sct_process_segmentation -i t2_seg.nii.gz -perslice 1 -vert 2:5 -vertfile ./label/template/PAM50_levels.nii.gz -o csa_perslice_C2-C5.csv

(Where -vertfile is the vertebral level file generated via methods A or B.)

Then, in the output CSV file, you will see the individual slices (thanks to -perslice 1), but constrained to only the vertebral levels of note (in this case, C2:C5 as mentioned).

Kind regards,

Thank you very much, I will try it out!