Details of OptiC-curve+ PropSeg Implementation

Looking into the source code of SCT, I noticed SCT now uses OptiC by default to set the initial starting point for PropSeg (rather than the Hough transform initially detailed in the PropSeg publication). Further digging through the source code and Optic’s/PropSeg’s respective publications left me with a few questions about how this is implemented:

  1. Is the OptiC-derived center-line only used to guide where PropSeg’s initial cylinder is placed, or does it remain in use throughout the propagation?
  2. Has the performance of initializing a cylinder deformed along the OptiC-derived (or an equivalent) curve, then further deforming it using PropSeg’s optimization procedures been tested yet?

These seem like natural “next steps” for the PropSeg algorithm’s development, and if not I would like to test these as part of a course project within my graduate program. If someone has already tested them, however, I would be very interested in the results so I can refine said project instead.

Thank you in advance!

Kalum Ost

Hi @Kalum_Ost ,

Thank you for reaching out, Great questions!

  1. Is the OptiC-derived center-line only used to guide where PropSeg’s initial cylinder is placed, or does it remain in use throughout the propagation?

Only used for PropSeg’s initialization

  1. Has the performance of initializing a cylinder deformed along the OptiC-derived (or an equivalent) curve, then further deforming it using PropSeg’s optimization procedures been tested yet?

What we tested was the performance of OptiC vs. PropSeg’s “older” method for centerline detection, and OptiC worked better, therefore it is now the default.

These seem like natural “next steps” for the PropSeg algorithm’s development, and if not I would like to test these as part of a course project within my graduate program. If someone has already tested them, however, I would be very interested in the results so I can refine said project instead.

Please note that PropSeg is, in many cases, outperformed by sct_deepseg_sc, hence we don’t put much development in PropSeg anymore. If you are looking for a project for a graduate course, we are currently developing a “soft” spinal cord segmentation model, and we are now in the process of validating it in various datasets, including with spinal cord compression. This model works without centerline detection. It would be great if you could help test this new model! :blush:

Hello @jcohenadad

I would love to contribute to this new segmentation method, via testing or otherwise. I do need to know more details as well, though, as I will need to submit a project proposal document describing the methodology (in broad strokes) to get it approved.

As well, part of the reason I had focused on PropSeg is that some of our (extremely preliminary) tests have actually performed better under PropSeg when predicting disease severity (for what I can only presume is that the PropSeg’s failure state is indicative of certain disease states, resulting in preliminary machine learning models “learning” this and using it to inform their decisions). As such, while deep learning methodologies do perform better overall, the implicit assumptions used by PropSeg on how the spinal cord’s anatomy is anticipated to appear seem to act in our favor in certain circumstances. This is a preliminary result, however, and future results, or this new “soft” segmentation method, may refute this entirely; can’t know until we try!

Thank you for your quick response; look forward to further discussion.

Excellent! I’ll add you as ‘assignee’ to this issue. What is your GH username so I can add you? You will interact with Louis, Naga, Sandrine and Jan on this.

Excellent; my GH Username is SomeoneInParticular. Look forward to this!