Newbie: Help segmenting & extracting bones from CT stack

Hi there,

I’ve just started toggling around with ImageJ in the last few weeks so I apologize in advance for the generality of this question.

I’m looking to describe sheep knee morphology, focusing separately on the distal femur, patella and proximal tibia. I have CT images of these structures, but I need to segment the patella away from the femur in order to analyze the articulating surfaces. I’ve tried cutting the patella away, in every single image in the stack, but I end up compressing the stack along the z-axis when doing so. I think this has to do with altering the pixels in the specific images within the stack? I’ve been playing around with weka segmentation too, assigning different classes to the three bones and surrounding soft tissue, but I’m not sure how I would even go about extracting these segments from there.

My end goal is to create 3D surface plots of the femur, patella and tibia separately. I can do this from the original stack of DICOM files, but haven’t been able to do so yet successfully with the altered images.

I’m looking for broad strokes of advice here, plugins to use, etc. Thank you all for your time and I appreciate any advice that you can throw my way!

Welcome! Neat project.

Do you mind posting an image, or a link to one? That might help provide good advice.

Hi @morucci,

Sounds like your z-pixel spacing is getting lost. Make sure your image has the same spacing as the original DICOMs. You can read the DICOM header with [I], and set pixel spacing with [Shift]+[P].

We’ve done a lot of manual tracing of bones. It’s a bit of a pain. Weka might be able to help you, but in my limited experience it’s better at picking out particular textures in the image (background, soft tissue, cortical bone, trabecular bone) than gross anatomical structures. Try the ROI interpolator in the ROI manager - it may speed you up by a few times. Draw an ROI on every 5th or 10th slice and run interpolate - if there aren’t any sticking out bits and the bone surfaces are smooth, you should get a pretty OK envelope to do your segmentation.

It’s also worth considering what you are actually trying to do. Do you need fancy ROIs exactly on the boundaries of your bone? Or is it enough to get rid of everything apart from one bone, that you can then segment into a mask, which you can then apply to the original image, or merge with masks of the other two images? It may be quicker to draw rough ROIs that you fill with background pixel value to delete e.g. tibia and femur, leaving patella whose pixels you can ID very quickly by applying a threshold.