Blood Vessels (HELP)

Hi Guys, I know that there are a lot of topics but I’ve been trying to segment blood vessels. I’ve been trying to segment liver vessels, coronary artery and aorta for one week nonstop but I’am unsuccessful. I would like to know what is the best method for this one. I tried Vesselness Filtering, Level Set Segmentation and sometimes I don’t really know if I understand what I’m doing. Do you have guys some step-by-step manual how to do what I need ? Actually my main goal is to segment liver (done) then I would segment tumor which is located in the liver (done) and then I would finally segment the vessels which lead to the tumor. I’ve segmented liver and tumor already but I need the vessels. Thank you a lot for your response and I would appreciate it if anyone know the answer for my issue.

1 Like

It would help if you provided some screenshots of the the data you are trying to segment and what kind of results you are getting.

Vessels in the liver can be hard to get, but if you have a good contrast enhanced CT they show up very well and should be possible to segment with thresholding. Also a typical liver CTA will have multiple studies related to the different phases of contrast (arterial, venous…) This looks like a nice summary page.)

1 Like

Do you use contrast agent? Without that, segmenting liver vessels is really hard. You can then use the Segment editor with vesselness filtering result as master volume and trace the vessels using Paint effect with thresholding. Level set is only for making the vessel segmentation result smoother, but it requires a reasonably good quality input, which you will not likely to get without contrast agent.

@lcoram you have segmented a lot of liver images with Slicer, do you have any further advice?

1 Like

As Andras says, its rather difficult to segment vessels without contrast enhanced images.

Our repo is public now, so if you want to have a try at compiling and using our vessel segmentation module you can (I am still dealing with some bugs, code refactoring, documentation, etc. so its not really “released” yet):
You can let me know if you come across any problems, we hope to release a more tested version this fall (along with information about how to use the modules). Basically you can try preprocessing your image to increase the vessel contrast, then use the vessel segmentation section: select portal or hepatic and place 2 seeds (1st one higher in the vessel and 2nd one slightly lower down to give the algorithm a direction to start) and try running the segmentation.

A postdoctoral fellow has worked on the vessel segmentation algorithm that is implemented as an ITK filter. We have generally worked with contrast enhanced CT images… so the image preprocessing is tailored more towards that (but you can adjust the inputs and see if you can get something to work with non-contrast images).


I think that there is a contrast agent but I’m not so skilled in this field because I’ve never segmented arteries or veins at all. So as @lcoram and @lassoan said I need contrast enhanced CT image, but I think that this one is contrast enhanced, do you agree ? So Guys the best way how to do what I need is to segment vessels by using Thresholding in the Segment Editor ? As I said, I’m not so skilled in this field so every advice is useful for me :slight_smile:

Well, I am not sure how effective it is to segment the vessels with thresholding - but it could work if they are a differentiable enough intensity vs the parenchyma. Like I said previously, it may help to use certain ITK filters to preprocess the image to further enhance the vessel / parenchyma contrast. Our module implements a seed based vessel segmentation algorithm:

You place seeds in the veins (portal or hepatic) and then the algorithm tries to move down the vessel tree. This may be more accurate / localized if you are segmenting vessels, vs the more general method of using thresholding.

1 Like