<div class="gmail_quote"><div>What do you mean by &quot;failed&quot;?!!</div><div><br></div><div>Did you get errors or just didn&#39;t get the results you desired?</div><div><br></div><div>Parameter tuning is of course time consuming and an error-prone process but it can be done easier</div>


<div><br></div><div>if you would have prior knowledge about the components (pipeline) of the segmentation method.</div><div><br></div>To get more information about the available segmentation methods in ITK it&#39;s very helpful to read<div>


<br></div><div>the ITK software guide, specially the &quot;Segmentation&quot; chapter (chapter 9). </div><div><br></div><div>You also could do a little search on the mailing list  and see previous discussions about the segmentation</div>


<div><br></div><div>method you want to use, level-set methods certainly has been discussed frequently!</div><div><br></div><div>Following are some of my posts on this subject,</div><div><br></div><div><br></div><div>------------------------------------------------------</div>

<div><br></div><div><span style="font-family:&#39;Times New Roman&#39;;font-size:medium"><pre>&quot;<span style="font-family:arial;white-space:normal;font-size:small">GeodesicActiveContours processing time and SignedDanielssonDistanceMap<span style="font-family:monospace;font-size:medium;white-space:pre-wrap">&quot;</span></span></pre>

<pre>You don&#39;t need to use the fastMarching filter if you are using the DanielssonDistanceMap
and vice versa.
If you want to lower the computation time you can decrease the number of iterations or 
assign lower values for the maximum allowed RMS.
The initialDistance parameter is the distance between the seed points and the desired
initial contour.</pre><pre>Note that the assigned Alpha and Beta values for the sigmoid filter can have a significant</pre><pre><span style="font-family:&#39;Times New Roman&#39;;white-space:normal"><pre>effect on the results. It is best to choose the Beta close to the initial contour value and 
assign the Alpha in which an acceptable range of values around the Beta would be
mapped.</pre><font face="arial"><span style="font-size:small">&quot;on tuning Laplacian Level Set Segmentation (LaplacianSegmentationLevelSetImageFilter.cxx)&quot;</span></font><br>
<pre><span style="font-family:&#39;Times New Roman&#39;;white-space:normal"><pre>For better convergence it is best to have a good initial estimation
of the level set as a seed image. Larger number of iterations alone
does not guarantee the convergence.
Basically using the diffusion filter improves the quality of the
segmentation, however over-diffusing the images can cause loss of 
details. 
You can use the resulting image (SpeedImage.mha) to determine that 
to what extent you want to diffuse the input image. Increasing the 
number of diffusion iterations and higher values for the conductance
will give a more diffused image.
Propagation weight determines the relative amount emphasis on 
the propagation speed and with higher values results in narrower 
surfaces, opposing to the curvature weight (curvature scaling) which 
with higher values gains smoother surfaces.
The isovalue I think is best to be assigned as halfway between the
maximum and minimum values in the seed image. 
Also, Premature elimination might be the result of the low maximum 
allowed RMS.
As for number of iterations for both diffusion and segmentation after
couple of tries and assigning different values you should be able to
find the best fit for your application.</pre><font face="arial"><span style="font-size:small">&quot;handle watershed oversegmentation&quot;</span></font></span></pre></span></pre>
<pre><span style="font-family:&#39;Times New Roman&#39;;white-space:normal"><pre>The level of details in watershed segmentation is controlled by a
smoothing step. It is most likely that the parameter setting
for the smoothing step in your application is causing an under-smoothing
effect. Usually for smoothing prior to the watershed segmentation an 
anisotropic diffusion filter is used. The level of smoothing in anisotropic 
diffusion filter is controlled by three parameters, number of iterations, 
time step and conductivity. Increasing the number of iterations and the 
conductivity factor can smooth more edges.
However, depending on your images better results might be achievable 
using a different smoothing method.</pre><pre><br></pre><pre>------------------------------------------</pre><pre><br></pre><pre>There are sure more discussions on the mailing list, I just included some I wrote</pre><pre>
<br></pre><pre>in previous discussions.</pre><pre><br></pre><pre>One little thing to add, the time step for the diffusion filter should be less than</pre><pre><br></pre><pre>1/(2^N), N being image dimensions. Usually something around 0.125 works fine (for 2D images).</pre>

<pre><br></pre><pre>Also note that the described segmentation methods in the ITK software guide are just </pre><pre><br></pre><pre>examples and you can replace any of the used components with other filters better suited</pre>

<pre><br></pre><pre>to your application.</pre><pre><br></pre><pre>By the &quot;middle bright region&quot; do you mean the cerebral hemisphere, White Matter or the white</pre><pre><br></pre><pre>region (tumor?!!) in the middle of the right lobe?</pre>

<font color="#888888"><pre><br></pre><pre>Dawood</pre><pre><br></pre></font></span></pre></span></div><div><div></div><div class="h5"><div><br></div><div>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;</div>

<div>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;</div>

<div><br></div><div><br><div class="gmail_quote">On Tue, Jun 21, 2011 at 10:18 AM, amit satish <span dir="ltr">&lt;<a href="mailto:amitsatish.unde@teamta.in" target="_blank">amitsatish.unde@teamta.in</a>&gt;</span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><u></u>


  
  

<div bgcolor="#ffffff" text="#000000">
On 6/18/2011 5:40 PM, Dawood Al Masslawi wrote:
<blockquote type="cite">Hi Amit,
  <div><br>
  </div>
  <div>In addition to what Kevin said, select the Alpha and Beta values
such that the regions you want to </div>
  <div><br>
  </div>
  <div>segment would be emphasized in the resulting image, for an
instance, make the bright regions brighter </div>
  <div><br>
  </div>
  <div>if you want to segment the bright regions.</div>
  <div><br>
  </div>
  <div>Choose the value for Sigma based on how much detail you want to
include in the segmented image, </div>
  <div><br>
  </div>
  <div>lower values will result in more details and higher values will
smooth more details hence resulting in less </div>
  <div><br>
  </div>
  <div>details in the segmented image.</div>
  <div><br>
  </div>
  <div>Assigning the seed points and the threshold by users
(radiologists in your case) can be done using Graphical User Interface </div>
  <div><br>
  </div>
  <div>tools such as FLTK or Qt and VTK, but it&#39;s probably better to
get your application up and running before developing a GUI.</div>
  <div><br>
  </div>
  <div>Hope that helps,</div>
  <div><br>
  </div>
  <div>Dawood</div>
  <div><br>
  </div>
  <div><br>
  </div>
  <div>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;</div>



  <div>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;<br clear="all">



  <br>
  </div>
  <div><br>
  <span style="font-family:&#39;Times New Roman&#39;;font-size:medium">
  <pre>On 06/17/2011 01:39 AM, <a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">amitsatish.unde at teamta.in</a> wrote:
&gt;<i> I am using ItK fast marching for liver tumor segmentation. I want to select manually seed point and output is segmented tumor. My problems is as below,
</i>&gt;<i> 1.can you specify exact value of alpha,beta and sigma for all examples?
</i>&gt;<i> <a href="http://2.it" target="_blank">2.it</a>&#39;s very difficult to give threshold value everytime. I am trying to implement a method such that radiologists will choose seed point in tumor region and our algorithm will give exact boundary of tumor. All other parameters i want to set by me.
</i>&gt;<i>
</i>&gt;<i>
</i>&gt;<i> Regards,
</i>&gt;<i> Amit
</i>
The parameters used in the software guide for the fast marching
example are listed at the top of the source code :

//  Software Guide : BeginCommandLineArgs
//    INPUTS: {BrainProtonDensitySlice.png}
//    OUTPUTS: {FastMarchingImageFilterOutput5.png}
//    81 114 1.0  -0.5  3.0   100 100
//  Software Guide : EndCommandLineArgs
//  Software Guide : BeginCommandLineArgs
//    INPUTS: {BrainProtonDensitySlice.png}
//    OUTPUTS: {FastMarchingImageFilterOutput6.png}
//    99 114 1.0  -0.5  3.0   100 100
//  Software Guide : EndCommandLineArgs
//  Software Guide : BeginCommandLineArgs
//    INPUTS: {BrainProtonDensitySlice.png}
//    OUTPUTS: {FastMarchingImageFilterOutput7.png}
//    56 92 1.0  -0.3  2.0   200 100
//  Software Guide : EndCommandLineArgs
//  Software Guide : BeginCommandLineArgs
//    INPUTS: {BrainProtonDensitySlice.png}
//    OUTPUTS: {FastMarchingImageFilterOutput8.png}
//    OUTPUTS: [FastMarchingFilterOutput1.png]
//    OUTPUTS: [FastMarchingFilterOutput2.png]
//    OUTPUTS: [FastMarchingFilterOutput3.png]
//    40 90 0.5  -0.3  2.0   200 100
//  Software Guide : EndCommandLineArgs

Unfortunately, the parameters are there for a reason, one value
does not always work well for all images.

My advice to you is to take the example programs and to cut them
up into the smallest usable pieces so that you can actually look
at the images at each step. For the fast marching example you&#39;d
end up with 5 tiny programs :

reader -&gt; smoother           -&gt; writer
reader -&gt; gradient magnitude -&gt; writer
reader -&gt; sigmoid            -&gt; writer
reader -&gt; fast marching      -&gt; writer
reader -&gt; threshold          -&gt; writer

Take a typical example of your images and open it up in ParaView
(or your viewer of choice).

You&#39;ll probably find that the intensity profile through the
object you&#39;re interested in is bumpy :
                                                 oo
                              oooooo   oo    oo
        o          oo                  oo           o         o
oooo ooo oo    ooo                             ooooo oooo

adjust the parameters of the smoothing filter until the profile
looks as much like this as possible:

                                ooooooooooooo
                              o                          o
ooooooooooooooo                              ooooooooo


adjust the parameters of the gradient magnitude filter until it
looks like this :
                              o                            o
                            o  o                        o  o
oooooooooooooo      ooooooooooo      oooooooo


sigmoid :

ooooooooooooooo oooooooooooooo oooooooooo

                              o                            o

fast :

                              o                            o
                                 o                       o
                                   o                   o
                                     o               o
                                        o          o
                                           o     o
                                              oo

the point is LOOK at the intermediate images.</pre>
  </span><br>
  </div>
</blockquote>
I am now totally confusing. I am not understanding which is good
methods for segmentation because decision of various parameter is
critical.<br>
I tried for threshold level set segmentation, geodesic active contour
for tumor boundary detection but i failed every time. Please explain
briefly how to choose exact parameter for above methods.<br>
I have attached image in which i want to segment middle bright region.<br>
</div>

</blockquote></div><br></div></div></div></div><br>