# Algorithm used for growing seeds

**URL:** <https://discourse.itk.org/t/algorithm-used-for-growing-seeds/3134>\
**Category:** Beginner Questions\
**Tags:** simpleitk\
**Created:** [May 31, 2020, 7:26pm UTC](https://discourse.itk.org/t/algorithm-used-for-growing-seeds/3134 "2020-05-31T19:26:02Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![flaviu2](https://discourse.itk.org/letter_avatar_proxy/v4/letter/f/74df32/32.png) [@flaviu2](https://discourse.itk.org/u/flaviu2)\
**Post date:** [May 31, 2020, 7:26pm UTC](https://discourse.itk.org/t/algorithm-used-for-growing-seeds/3134/1 "2020-05-31T19:26:02Z")

</div>

I’ve seen here an example of how to segment a liver with 3ds slicer: [https://www.youtube.com/watch?v=R-lBsqAvSTA](https://www.youtube.com/watch?v=R-lBsqAvSTA) (at the end of the movie is liver isolation).

And I saw that is used a lot of seeds points for inside liver and a lots of seeds points from outside of liver. Is there any method to know what **SimpleITK/ITK** methods has been used for that segmentation ? I know, maybe is a reverse engineering, but I really need only core **simpleitk** methods that complete that liver segmentation … I need this for a tooth segmentation which could be simplest … could you help me a little bit ?  
Thank you.

---

<div class="post-metadata">

**Author:** ![flaviu2](https://discourse.itk.org/letter_avatar_proxy/v4/letter/f/74df32/32.png) [@flaviu2](https://discourse.itk.org/u/flaviu2)\
**Post date:** [June 1, 2020, 9:12am UTC](https://discourse.itk.org/t/algorithm-used-for-growing-seeds/3134/2 "2020-06-01T09:12:38Z")

</div>

Idea is that I saw at least **two ITK filters** that has been implied on growing seed algorithm, and as far as I know t_here is no SimpleITK filter which take two seeds array_ as input (one for inside organ, and one for outside).

---

<div class="post-metadata">

**Author:** ![flaviu2](https://discourse.itk.org/letter_avatar_proxy/v4/letter/f/74df32/32.png) [@flaviu2](https://discourse.itk.org/u/flaviu2)\
**Post date:** [June 1, 2020, 10:30am UTC](https://discourse.itk.org/t/algorithm-used-for-growing-seeds/3134/3 "2020-06-01T10:30:48Z")

</div>

The demo reveal that liver segmentation is made it in two steps:

1. Set seeds points for the organ which should be isolated (liver, tooth, whatever). So, in which ITK algorithm is used these seeds points ?
2. Set seeds points for _outside_ of the organ. So, in which ITK algorithm is used these seeds points ? I didn’t saw any ITK algorithm that accept 2 seeds points as input. Of course, this is because there is used two ore more filters in order to to that. But what filter are used for inside seeds points, and what filter for outside seed points ?

---

<div class="post-metadata">

**Author:** ![blowekamp](https://discourse.itk.org/user_avatar/discourse.itk.org/blowekamp/32/79_2.png) [@blowekamp](https://discourse.itk.org/u/blowekamp)\
**Post date:** [June 1, 2020, 12:39pm UTC](https://discourse.itk.org/t/algorithm-used-for-growing-seeds/3134/4 "2020-06-01T12:39:09Z")

</div>

[https://simpleitk.org/doxygen/latest/html/classitk\_1\_1simple\_1\_1IsolatedConnectedImageFilter.html](https://simpleitk.org/doxygen/latest/html/classitk_1_1simple_1_1IsolatedConnectedImageFilter.html)

---

<div class="post-metadata">

**Author:** ![zivy](https://discourse.itk.org/user_avatar/discourse.itk.org/zivy/32/1726_2.png) [@zivy](https://discourse.itk.org/u/zivy)\
**Post date:** [June 1, 2020, 12:47pm UTC](https://discourse.itk.org/t/algorithm-used-for-growing-seeds/3134/5 "2020-06-01T12:47:13Z")

</div>

Hello @flaviu2,

There are many algorithms that use two sets of seed points to perform segmentation, so that level of description is not enough to identify a specific algorithm (there is the whole family of graph cut based algorithms - not available in SimpleITK).

Another segmentation filter in SimpleITK that uses two sets of seed points  
is [CollidingFrontsImageFilter](https://simpleitk.org/doxygen/latest/html/classitk_1_1simple_1_1CollidingFrontsImageFilter.html).

I would suggest that you inquire in the [Slicer discourse](https://discourse.slicer.org/) with respect to which algorithm was actually used in the demo and then see if that set of filters is available in ITK/SimpleITK.

---

<div class="post-metadata">

**Author:** ![lassoan](https://discourse.itk.org/user_avatar/discourse.itk.org/lassoan/32/27_2.png) [@lassoan](https://discourse.itk.org/u/lassoan)\
**Post date:** [June 2, 2020, 2:49am UTC](https://discourse.itk.org/t/algorithm-used-for-growing-seeds/3134/6 "2020-06-02T02:49:47Z")

</div>

For reference, the question posted on Slicer forum was answered here: [https://discourse.slicer.org/t/algorithm-used-for-growing-seeds/11817/2](https://discourse.slicer.org/t/algorithm-used-for-growing-seeds/11817/2)
