How to adjust a subtly adjustable surface to cut both sides? (See the picture)

Hello, when I was using 3D slicer, there was one operation I didn’t know how to implement:
In the following two pictures, in Figure 1, I can cut both sides of the surface after subtle adjustment (Figure 2). In 3D slicer, I know, such as the volume clip plugin, but every time you move a point, the entire surface will change greatly. Another plugin surface markup, its surface is very good, but I don’t know how to use it for effective segmentation?
Thanks for answering!


The surface moves a lot because the markup control point is snapped to the cutting surface. Make sure you disable this feature in Markups module → Display → Advanced → 3D Display → Placement mode: unconstrained.

If you want to use this for cutting segmentations then you may find Surface cut effect (provided by SegmentEditorExtraEffects extension) useful.

There is also a tool specifically developed for creating liver resections - see GitHub - ALive-research/Slicer-Liver: 3D Slicer extension for liver analysis and therapy planning

Thank you very much! If you can see the short video attachment I uploaded (the video has been accelerated to save you time), it demonstrates the effects of a commercial software called MIMICS.
This is cutting part of the lung lobe, so a more accurate plane is needed.

According to your method, I used the surface cut function, and it seems that the effect is not close to MIMICS, the surface I generated is very rough (even if the smooth is cancelled, the effect is still very stiff).

I would like to ask you, can the surface cut function or other tools achieve similar effects in the video? /_ \

Or is there no similar segmentation tool in the video?

Thank you very much again for your answer, and I apologize for my unclear description.

1 Like

Would this module be helpful? It’s somehow close to your video’s content: use a warpable plane.

3 Likes

In general, Slicer has much more and more powerful tools than MIMICS, but it is not always easy to find the most relevant tool and they are not always as simple and polished.

Surface cut effect works well for planning and guiding breast lumpectomy, but it is not well suited for liver resection planning, because it uses a closed surface.

As I wrote above, for liver resection planning, I would recommend the Liver module of SlicerLiver extension. It not just provides a way to specify a curved resection plane, but it can also visualizes distance from the tumor, subdivide the liver based on vasculature, measure volumes, etc. @RafaelPalomar can help with any questions that you may have.

You can use TotalSegmentator, MONAI Auto3DSeg or RVX Liver for liver, tumor, and vessel segmentation.

2 Likes

Yes, I think it will help. After I have created the surface, how do I split the models on both sides of the surface?

I didn’t find a help manual in the instructions.

(For example, in the picture, I want to strictly follow the position of the surface, divided into two parts. Of course, this is just an example, I don’t apply it to cutting blood vessels)

I have the same problem. I have also seen this plug-in. I can use SurfaceMarkup to create an unclosed surface, but I have not found how to use the created surface for segmentation. :sob:

Yes! I also think that 3D slicer is more powerful than Mimics and can combine more operations.

But the Liver module can’t be applied directly to some free segmentation: removing part of the lung, for example, or dividing the sides of a curved surface strictly according to the surface. (I’m not using it to cut livers.)

For this kind of cutting, I don’t think AI can directly help me at the moment

Thank you very much for your answer!


The Liver extension can compute volumes, distances, etc. based on this surface.

What is your overall goal and what are some specific steps that you are considering to do to achieve these goals?

@rbumm has done a lot of lung surgery planning with Slicer, so he may also have suggestions if you describe what you want to do.

Thank you, @lassoan, for mentioning our Slicer-Liver extension.

Hi @CheerfulMinions!

Currently, it is not possible to split the segmentation of the resected and remaining lobes using a cutting surface. However, you can utilize our Liver Segment section to segment the lobes and plan a resection. This process involves placing control points on the vessels (1), generating the centerlines (2), and computing the vascular territories(3) - please see the figure below and you can also find more information in this preprint. We have successfully applied this strategy to lung resection, as demonstrated here.

@RafaelPalomar, please feel free to add any additional insights if I’ve missed something.
I’m currently updating the tutorial for our extension and integrating new functionalities, so stay tuned! If you’d like to try it out and need assistance, don’t hesitate to reach out to either me or Rafael.

1 Like

@CheerfulMinions, @chir.set, @lassoan, @dalbenzioG, this is a very interesting discussion.

Slicer-Liver has functionality to plan resections, perform liver classification based on liver vasculature and do volumetry analysis of resections, liver segments, etc. The way it works may not resemble workflows of other applications. For instance, our resection plans are based on visualization of resection surfaces with the possibility to do volumetry, but we don’t explicitly cut the mesh on resected/remnant sub-meshes to visualize them in different colors. Reasons: (1) we think it unnecessarily complicates the visualization (having resection surfaces and different colored areas is redundant; transparent colors are perceived differently depending on the background they have); (2) volumetric calculations are more precise in image-space than in possibly simplified meshes and that’s what we use for volumetry analysis.

If you strictly adhere to anatomical resections, the approach @dalbenzioG, illustrated is valid and you don’t need to set any resection surface, you just need to use the segments classification tool in Slicer-Liver.

If you would like non-anatomical resections it may be possible already to get the remnant/resected segmentations from the volumetry analysis in Slicer-Liver. @RuoyanMeng, do we expose the subvolumes of the liver as Slicer Segmentations during the volumetry analysis? If not, would it be difficult to save and expose them for this type of analysis?

Project week is around the corner, it may be a good avenue to joint efforts for refining/adding this functionality.

1 Like

Currently, we don’t expose the subvolumes to the user. We can add this as an optional output in the LiverVolumetry, so when the user places ROI points on resected and remaining lobes we can generate a new segmentation image that labels the resected and remaining lobes. I opened an issue, @CheerfulMinions you are welcome to add more description of the functionality you would like.

3 Likes