<?xml version="1.0" encoding="utf-8"?>
<executable>
  <category>
  Segmentation
  </category>
  <title>
  Simple region growing
  </title>
  <description>
  A simple region growing segmentation algorithm based on intensity statistics. To create a list of fiducials (Seeds) for this algorithm, click on the tool bar icon of an arrow pointing to a starburst fiducial to enter the 'place a new object mode' and then use the fiducials module. This module uses the Slicer3 Command Line Interface (CLI) and the ITK filters CurvatureFlowImageFilter and ConfidenceConnectedImageFilter.
  </description>
  <version>0.1.0.$Revision$(alpha)</version>
  <documentation-url></documentation-url>
  <license></license>
  <contributor>Jim Miller</contributor>
  <acknowledgements>This command module was derived from Insight/Examples (copyright) Insight Software Consortium</acknowledgements>
  <parameters advanced="true">
    <label>Smoothing Parameters</label>
    <description>Parameters to denoise the image prior to segmenting</description>
    <integer>
       <name>smoothingIterations</name>
       <label>Smoothing iterations</label>
       <longflag>--smoothingIterations</longflag>
       <description>Number of smoothing iterations</description>
       <default>5</default>
    </integer>

    <double>
        <name>timestep</name>
        <label>Timestep</label>
        <longflag>--timestep</longflag>
        <description>Timestep for curvature flow</description>
        <default>0.0625</default>
        <constraints>
           <minimum>0.001</minimum>
           <maximum>1</maximum>
           <step>0.0001</step>
        </constraints>
    </double>
  </parameters>

  <parameters>
    <label>Segmentation Parameters</label>
    <description>Parameters to prescribe the region growing</description>

    <integer>
      <name>iterations</name>
      <longflag>--iterations</longflag>
      <description>Number of iterations of region growing</description>
      <label>Number of iterations</label>
      <default>5</default>
      <constraints>
        <minimum>0</minimum>
        <maximum>100</maximum>
      </constraints>
    </integer>

    <double>
      <name>multiplier</name>
      <longflag>--multiplier</longflag>
      <description>Number of standard deviations to include in intensity model</description>
      <label>Multiplier</label>
      <default>2.5</default>
      <constraints>
        <minimum>0</minimum>
        <maximum>10</maximum>
      </constraints>
    </double>

    <integer>
      <name>neighborhood</name>
      <longflag>--neighborhood</longflag>
      <description>The radius of the neighborhood over which to calculate intensity model</description>
      <label>Neighborhood Radius</label>
      <default>1</default>
    </integer>

    <integer>
      <name>labelvalue</name>
      <longflag>--labelvalue</longflag>
      <description>The integer value (0-255) to use for the segmentation results. This will determine the color of the segmentation that will be generated by the Region growing algorithm</description>
      <label>Output Label Value</label>
      <default>2</default>
      <constraints>
        <minimum>1</minimum>
        <maximum>255</maximum>
      </constraints>
    </integer>

    <point coordinateSystem="ras" multiple="true">
      <name>seed</name>
      <label>Seeds</label>
      <longflag>--seed</longflag>
      <description>Seed point(s) for region growing</description>
      <default>0,0,0</default>
    </point>

  </parameters>

  <parameters>
    <label>IO</label>
    <description>Input/output parameters</description>
    <image>
      <name>inputVolume</name>
      <label>Input Volume</label>
      <channel>input</channel>
      <index>0</index>
      <description>Input volume to be filtered</description>
    </image>
    <image type="label">
      <name>outputVolume</name>
      <label>Output Volume</label>
      <channel>output</channel>
      <index>1</index>
      <description>Output filtered</description>
    </image>
  </parameters>

</executable>
