<protocol VERSION="4">
<blocks>
<block CommandLineID="" ID="1984806368" blockType="plugins.adufour.blocks.tools.input.Sequence" className="plugins.adufour.blocks.tools.input.Sequence" collapsed="false" definedName="Select Image" height="61" keepsResults="true" width="489" xLocation="8" yLocation="14">
<variables>
<input>
<variable ID="input sequence" name="sequence" runtime="false" value="Active Sequence" visible="true"/>
</input>
<output/>
</variables>
</block>
<block CommandLineID="" ID="1674525596" blockType="plugins.adufour.blocks.tools.input.Integer" className="plugins.adufour.blocks.tools.input.Integer" collapsed="false" definedName="Select channel containing cell shape" height="64" keepsResults="true" width="486" xLocation="10" yLocation="81">
<variables>
<input>
<variable ID="integer" name="integer" runtime="false" value="2" visible="true"/>
</input>
<output/>
</variables>
</block>
<block CommandLineID="" ID="372403712" blockType="plugins.adufour.blocks.tools.input.Integer" className="plugins.adufour.blocks.tools.input.Integer" collapsed="false" definedName="Select Number of class for HK-Mean sensitivity (4 by default)" height="64" keepsResults="true" width="485" xLocation="9" yLocation="145">
<variables>
<input>
<variable ID="integer" name="integer" runtime="false" value="4" visible="true"/>
</input>
<output/>
</variables>
</block>
<block CommandLineID="" ID="1674883673" blockType="plugins.adufour.blocks.tools.input.Integer" className="plugins.adufour.blocks.tools.input.Integer" collapsed="false" definedName="Select pixel dilation for smoothing/erosion if any (0 by default)" height="64" keepsResults="true" width="499" xLocation="6" yLocation="218">
<variables>
<input>
<variable ID="integer" name="integer" runtime="false" value="0" visible="true"/>
</input>
<output/>
</variables>
</block>
<block ID="809461265" blockType="plugins.stef.roi.bloc.property.SetROIColor" className="plugins.stef.roi.bloc.RoiBlocks" collapsed="false" definedName="Select channel for cell mask (blue by default)" height="85" keepsResults="true" width="503" xLocation="7" yLocation="291">
<variables>
<input>
<variable ID="rois" name="ROI(s)" runtime="false" value="No ROI" visible="true"/>
<variable ID="color" name="Color" runtime="false" value="java.awt.Color[r=26,g=5,b=255]" visible="true"/>
</input>
<output/>
</variables>
</block>
<workflow ID="1592247404" blockType="plugins.adufour.blocks.lang.WorkFlow" className="plugins.adufour.blocks.lang.WorkFlow" collapsed="true" definedName="Work flow" height="525" keepsResults="true" width="559" xLocation="548" yLocation="48">
<blocks>
<block CommandLineID="" ID="121677470" blockType="plugins.adufour.blocks.tools.input.Sequence" className="plugins.adufour.blocks.tools.input.Sequence" collapsed="false" definedName="Sequence" height="61" keepsResults="true" width="185" xLocation="59" yLocation="25">
<variables>
<input>
<variable ID="input sequence" name="sequence" runtime="false" visible="true"/>
</input>
<output/>
</variables>
</block>
<block ID="1138790362" blockType="plugins.tprovoost.sequenceblocks.extract.ExtractChannel" className="plugins.tprovoost.sequenceblocks.SequenceBlocks" collapsed="false" definedName="Select Cell shape channel" height="108" keepsResults="true" width="266" xLocation="54" yLocation="97">
<variables>
<input>
<variable ID="sequence" name="Sequence" runtime="false" visible="true"/>
<variable ID="channel" name="Channel" runtime="false" visible="true"/>
</input>
<output>
<variable ID="extracted" name="Extracted" runtime="false" visible="true"/>
</output>
</variables>
</block>
<block ID="567992346" blockType="plugins.adufour.hierarchicalkmeans.HierarchicalKMeans" className="plugins.adufour.hierarchicalkmeans.HierarchicalKMeans" collapsed="false" definedName="HK-Means" height="277" keepsResults="true" width="362" xLocation="129" yLocation="232">
<variables>
<input>
<variable ID="Input" name="Input" runtime="false" visible="true"/>
<variable ID="Gaussian pre-filter" name="Gaussian pre-filter" runtime="false" value="0.0" visible="true"/>
<variable ID="Frame" name="Frame" runtime="false" value="0" visible="true"/>
<variable ID="Number of classes" name="Intensity classes" runtime="false" visible="true"/>
<variable ID="Min size (px)" name="Min object size (px)" runtime="false" value="100" visible="true"/>
<variable ID="Max size (px)" name="Max object size (px)" runtime="false" value="10000000" visible="true"/>
<variable ID="Final threshold" name="Min object intensity" runtime="false" value="0.0" visible="true"/>
</input>
<output>
<variable ID="binary sequence" name="binary sequence" runtime="false" visible="true"/>
<variable ID="output regions" name="list of ROI" runtime="false" visible="true"/>
</output>
</variables>
</block>
<block ID="80938729" blockType="plugins.adufour.blocks.tools.roi.DilateROI" className="plugins.adufour.blocks.tools.roi.DilateROI" collapsed="false" definedName="Dilate ROI" height="180" keepsResults="true" width="204" xLocation="94" yLocation="722">
<variables>
<input>
<variable ID="input ROI" name="List of ROI" runtime="false" visible="true"/>
<variable ID="X radius" name="Along X" runtime="false" visible="true"/>
<variable ID="Y radius" name="Along Y" runtime="false" visible="true"/>
<variable ID="Z radius" name="Along Z" runtime="false" visible="true"/>
<variable ID="unit" name="Unit" runtime="false" value="PIXELS" visible="true"/>
</input>
<output>
<variable ID="output ROI" name="Dilated ROI" runtime="false" visible="true"/>
</output>
</variables>
</block>
<block ID="1809243121" blockType="plugins.adufour.blocks.tools.roi.ErodeROI" className="plugins.adufour.blocks.tools.roi.ErodeROI" collapsed="false" definedName="Erode ROI" height="180" keepsResults="true" width="204" xLocation="334" yLocation="726">
<variables>
<input>
<variable ID="input ROI" name="List of ROI" runtime="false" visible="true"/>
<variable ID="X radius" name="Along X" runtime="false" visible="true"/>
<variable ID="Y radius" name="Along Y" runtime="false" visible="true"/>
<variable ID="Z radius" name="Along Z" runtime="false" visible="true"/>
<variable ID="unit" name="Unit" runtime="false" value="PIXELS" visible="true"/>
</input>
<output>
<variable ID="output ROI" name="Eroded ROI" runtime="false" visible="true"/>
</output>
</variables>
</block>
<block ID="212637474" blockType="plugins.adufour.blocks.tools.roi.MergeROI" className="plugins.adufour.blocks.tools.roi.MergeROI" collapsed="false" definedName="Merge ROI" height="105" keepsResults="true" width="210" xLocation="611" yLocation="767">
<variables>
<input>
<variable ID="List of ROI" name="List of ROI" runtime="false" visible="true"/>
<variable ID="Merge operation" name="Merge operation" runtime="false" value="OR" visible="true"/>
</input>
<output>
<variable ID="Merged ROI" name="Merged ROI" runtime="false" visible="true"/>
</output>
</variables>
</block>
<block ID="2000223721" blockType="plugins.stef.roi.bloc.property.GetROIProperty" className="plugins.stef.roi.bloc.RoiBlocks" collapsed="false" definedName="Get ROI property" height="108" keepsResults="true" width="207" xLocation="929" yLocation="858">
<variables>
<input>
<variable ID="roi" name="ROI" runtime="false" visible="true"/>
<variable ID="property" name="Property" runtime="false" value="name" visible="true"/>
</input>
<output>
<variable ID="value" name="Value" runtime="false" visible="true"/>
</output>
</variables>
</block>
<block ID="1176816615" blockType="plugins.tprovoost.sequenceblocks.infos.Dimensions" className="plugins.tprovoost.sequenceblocks.SequenceBlocks" collapsed="false" definedName="Dimensions" height="171" keepsResults="true" width="298" xLocation="77" yLocation="933">
<variables>
<input>
<variable ID="sequence" name="Sequence" runtime="false" visible="true"/>
</input>
<output>
<variable ID="width" name="Width" runtime="false" visible="true"/>
<variable ID="height" name="Height" runtime="false" visible="true"/>
<variable ID="size C" name="Size C" runtime="false" visible="true"/>
<variable ID="size Z" name="Size Z" runtime="false" visible="true"/>
<variable ID="size T" name="Size T" runtime="false" visible="true"/>
</output>
</variables>
</block>
<block ID="1076500463" blockType="plugins.stef.roi.bloc.RoiToSequence" className="plugins.stef.roi.bloc.RoiToSequence" collapsed="false" definedName="ROI to Sequence" height="208" keepsResults="true" width="204" xLocation="571" yLocation="893">
<variables>
<input>
<variable ID="ROI(s)" name="ROI(s)" runtime="false" visible="true"/>
<variable ID="Size X" name="Size X" runtime="false" visible="true"/>
<variable ID="Size Y" name="Size Y" runtime="false" visible="true"/>
<variable ID="Size C" name="Size C" runtime="false" value="0" visible="true"/>
<variable ID="Size Z" name="Size Z" runtime="false" value="0" visible="true"/>
<variable ID="Size T" name="Size T" runtime="false" value="0" visible="true"/>
</input>
<output>
<variable ID="Sequence" name="Sequence" runtime="false" visible="true"/>
</output>
</variables>
</block>
<block ID="1592947026" blockType="plugins.adufour.blocks.tools.Display" className="plugins.adufour.blocks.tools.Display" collapsed="false" definedName="Display after dilate Erode" height="357" keepsResults="true" width="541" xLocation="965" yLocation="980">
<variables>
<input>
<variable ID="object" name="object" runtime="false" type="icy.sequence.Sequence" visible="true"/>
</input>
<output/>
</variables>
</block>
<block CommandLineID="" ID="1760223538" blockType="plugins.adufour.blocks.tools.input.Integer" className="plugins.adufour.blocks.tools.input.Integer" collapsed="false" definedName="Integer" height="64" keepsResults="true" width="147" xLocation="931" yLocation="544">
<variables>
<input>
<variable ID="integer" name="integer" runtime="false" visible="true"/>
</input>
<output/>
</variables>
</block>
<block CommandLineID="" ID="1672893094" blockType="plugins.adufour.blocks.tools.input.Text" className="plugins.adufour.blocks.tools.input.Text" collapsed="false" definedName="Text" height="64" keepsResults="true" width="130" xLocation="925" yLocation="646">
<variables>
<input>
<variable ID="text" name="text" runtime="false" value="Classes-Ch" visible="true"/>
</input>
<output/>
</variables>
</block>
<block ID="1735388957" blockType="plugins.adufour.blocks.tools.text.AppendText" className="plugins.adufour.blocks.Blocks" collapsed="false" definedName="Append text" height="130" keepsResults="true" width="179" xLocation="1102" yLocation="654">
<variables>
<input>
<variable ID="input" name="input" runtime="false" visible="true"/>
<variable ID="Separator" name="Separator" runtime="false" visible="true"/>
<variable ID="Suffix" name="Suffix" runtime="false" visible="true"/>
</input>
<output>
<variable ID="output" name="output" runtime="false" visible="true"/>
</output>
</variables>
</block>
<block ID="25624154" blockType="plugins.stef.roi.bloc.property.SetROIProperties" className="plugins.stef.roi.bloc.RoiBlocks" collapsed="false" definedName="Set ROI properties" height="210" keepsResults="true" width="216" xLocation="1442" yLocation="586">
<variables>
<input>
<variable ID="rois" name="ROI(s)" runtime="false" visible="true"/>
<variable ID="name" name="Name" runtime="false" visible="true"/>
<variable ID="suffix" name="Number suffix" runtime="false" visible="true"/>
<variable ID="color" name="Color" runtime="false" visible="true"/>
<variable ID="opacity" name="Opacity" runtime="false" value="0.8" visible="true"/>
<variable ID="stroke" name="Stroke" runtime="false" value="2.0" visible="true"/>
<variable ID="showName" name="Show name" runtime="false" value="false" visible="true"/>
</input>
<output/>
</variables>
</block>
<block ID="1078928425" blockType="plugins.adufour.blocks.tools.Display" className="plugins.adufour.blocks.tools.Display" collapsed="false" definedName="Display raw hk-mean" height="310" keepsResults="true" width="376" xLocation="518" yLocation="237">
<variables>
<input>
<variable ID="object" name="object" runtime="false" type="icy.sequence.Sequence" visible="true"/>
</input>
<output/>
</variables>
</block>
<block ID="1244875060" blockType="plugins.adufour.blocks.tools.Display" className="plugins.adufour.blocks.tools.Display" collapsed="false" definedName="Display" height="54" keepsResults="true" width="245" xLocation="1330" yLocation="817">
<variables>
<input>
<variable ID="object" name="object" runtime="false" type="java.lang.String" visible="true"/>
</input>
<output/>
</variables>
</block>
<block CommandLineID="" ID="310499953" blockType="plugins.adufour.blocks.tools.input.Text" className="plugins.adufour.blocks.tools.input.Text" collapsed="false" definedName="Text" height="64" keepsResults="true" width="397" xLocation="1298" yLocation="915">
<variables>
<input>
<variable ID="text" name="text" runtime="false" visible="true"/>
</input>
<output/>
</variables>
</block>
<block ID="1245284818" blockType="plugins.adufour.blocks.tools.roi.AddROIToSequence" className="plugins.adufour.blocks.tools.roi.AddROIToSequence" collapsed="false" definedName="Add ROI to sequence" height="108" keepsResults="true" width="305" xLocation="1181" yLocation="429">
<variables>
<input>
<variable ID="target sequence" name="Source" runtime="false" visible="true"/>
<variable ID="input rois" name="ROI to add" runtime="false" visible="true"/>
<variable ID="replace existing" name="Overwrite" runtime="false" value="false" visible="true"/>
</input>
<output/>
</variables>
</block>
</blocks>
<links>
<link dstBlockID="1138790362" dstVarID="sequence" srcBlockID="121677470" srcVarID="input sequence"/>
<link dstBlockID="1176816615" dstVarID="sequence" srcBlockID="121677470" srcVarID="input sequence"/>
<link dstBlockID="1245284818" dstVarID="target sequence" srcBlockID="121677470" srcVarID="input sequence"/>
<link dstBlockID="567992346" dstVarID="Input" srcBlockID="1138790362" srcVarID="extracted"/>
<link dstBlockID="1735388957" dstVarID="Suffix" srcBlockID="1138790362" srcVarID="channel"/>
<link dstBlockID="1078928425" dstVarID="object" srcBlockID="567992346" srcVarID="binary sequence"/>
<link dstBlockID="80938729" dstVarID="input ROI" srcBlockID="567992346" srcVarID="output regions"/>
<link dstBlockID="1760223538" dstVarID="integer" srcBlockID="567992346" srcVarID="Number of classes"/>
<link dstBlockID="1076500463" dstVarID="Size X" srcBlockID="1176816615" srcVarID="width"/>
<link dstBlockID="1076500463" dstVarID="Size Y" srcBlockID="1176816615" srcVarID="height"/>
<link dstBlockID="1809243121" dstVarID="input ROI" srcBlockID="80938729" srcVarID="output ROI"/>
<link dstBlockID="1809243121" dstVarID="X radius" srcBlockID="80938729" srcVarID="X radius"/>
<link dstBlockID="1809243121" dstVarID="Y radius" srcBlockID="80938729" srcVarID="Y radius"/>
<link dstBlockID="1809243121" dstVarID="Z radius" srcBlockID="80938729" srcVarID="Z radius"/>
<link dstBlockID="1076500463" dstVarID="ROI(s)" srcBlockID="1809243121" srcVarID="output ROI"/>
<link dstBlockID="212637474" dstVarID="List of ROI" srcBlockID="1809243121" srcVarID="output ROI"/>
<link dstBlockID="1592947026" dstVarID="object" srcBlockID="1076500463" srcVarID="Sequence"/>
<link dstBlockID="25624154" dstVarID="rois" srcBlockID="212637474" srcVarID="Merged ROI"/>
<link dstBlockID="2000223721" dstVarID="roi" srcBlockID="212637474" srcVarID="Merged ROI"/>
<link dstBlockID="310499953" dstVarID="text" srcBlockID="2000223721" srcVarID="value"/>
<link dstBlockID="25624154" dstVarID="name" srcBlockID="2000223721" srcVarID="value"/>
<link dstBlockID="1735388957" dstVarID="input" srcBlockID="1760223538" srcVarID="integer"/>
<link dstBlockID="25624154" dstVarID="suffix" srcBlockID="1735388957" srcVarID="output"/>
<link dstBlockID="1244875060" dstVarID="object" srcBlockID="1735388957" srcVarID="output"/>
<link dstBlockID="1245284818" dstVarID="input rois" srcBlockID="25624154" srcVarID="rois"/>
<link dstBlockID="1735388957" dstVarID="Separator" srcBlockID="1672893094" srcVarID="text"/>
</links>
<variables>
<input>
<variable ID="2000223721:roi" blockID="2000223721" value="1 ROI" visible="false"/>
<variable ID="2000223721:property" blockID="2000223721" value="name" visible="false"/>
<variable ID="1592947026:object" blockID="1592947026" value="Sequence: ROI conversion - 1392 x 1040 x 1 x 1 - 1 ch (8 bits)" visible="false"/>
<variable ID="25624154:rois" blockID="25624154" value="1 ROI" visible="false"/>
<variable ID="25624154:name" blockID="25624154" value="HK-Means detection #1 dilated[0,0] eroded[0,0]" visible="false"/>
<variable ID="25624154:suffix" blockID="25624154" value="4Classes-Ch2" visible="false"/>
<variable ID="25624154:color" blockID="25624154" value="java.awt.Color[r=26,g=5,b=255]" visible="true"/>
<variable ID="25624154:opacity" blockID="25624154" value="0.8" visible="false"/>
<variable ID="25624154:stroke" blockID="25624154" value="2.0" visible="false"/>
<variable ID="25624154:showName" blockID="25624154" value="false" visible="false"/>
<variable ID="1138790362:sequence" blockID="1138790362" value="Active Sequence" visible="false"/>
<variable ID="1138790362:channel" blockID="1138790362" value="2" visible="true"/>
<variable ID="1078928425:object" blockID="1078928425" value="Sequence: Synapse - channel: 2_HK-Means - 1392 x 1040 x 1 x 1 - 1 ch (16 bits)" visible="false"/>
<variable ID="1735388957:input" blockID="1735388957" value="4" visible="false"/>
<variable ID="1735388957:Separator" blockID="1735388957" value="Classes-Ch" visible="false"/>
<variable ID="1735388957:Suffix" blockID="1735388957" value="2" visible="false"/>
<variable ID="1244875060:object" blockID="1244875060" value="4Classes-Ch2" visible="false"/>
<variable ID="567992346:Input" blockID="567992346" value="Synapse - channel: 2" visible="false"/>
<variable ID="567992346:Gaussian pre-filter" blockID="567992346" value="0.0" visible="false"/>
<variable ID="567992346:Frame" blockID="567992346" value="0" visible="false"/>
<variable ID="567992346:Number of classes" blockID="567992346" value="4" visible="true"/>
<variable ID="567992346:Min size (px)" blockID="567992346" value="100" visible="false"/>
<variable ID="567992346:Max size (px)" blockID="567992346" value="10000000" visible="false"/>
<variable ID="567992346:Final threshold" blockID="567992346" value="0.0" visible="false"/>
<variable ID="1760223538:integer" blockID="1760223538" value="4" visible="false"/>
<variable ID="310499953:text" blockID="310499953" value="HK-Means detection #1 dilated[0,0] eroded[0,0]" visible="false"/>
<variable ID="1245284818:target sequence" blockID="1245284818" value="Active Sequence" visible="false"/>
<variable ID="1245284818:input rois" blockID="1245284818" value="1 ROI" visible="false"/>
<variable ID="1245284818:replace existing" blockID="1245284818" value="false" visible="false"/>
<variable ID="121677470:input sequence" blockID="121677470" value="Active Sequence" visible="true"/>
<variable ID="212637474:List of ROI" blockID="212637474" value="2 ROI" visible="false"/>
<variable ID="212637474:Merge operation" blockID="212637474" value="OR" visible="false"/>
<variable ID="1809243121:input ROI" blockID="1809243121" value="2 ROI" visible="false"/>
<variable ID="1809243121:X radius" blockID="1809243121" value="0" visible="false"/>
<variable ID="1809243121:Y radius" blockID="1809243121" value="0" visible="false"/>
<variable ID="1809243121:Z radius" blockID="1809243121" value="0" visible="false"/>
<variable ID="1809243121:unit" blockID="1809243121" value="PIXELS" visible="false"/>
<variable ID="1076500463:ROI(s)" blockID="1076500463" value="2 ROI" visible="false"/>
<variable ID="1076500463:Size X" blockID="1076500463" value="1392" visible="false"/>
<variable ID="1076500463:Size Y" blockID="1076500463" value="1040" visible="false"/>
<variable ID="1076500463:Size C" blockID="1076500463" value="0" visible="false"/>
<variable ID="1076500463:Size Z" blockID="1076500463" value="0" visible="false"/>
<variable ID="1076500463:Size T" blockID="1076500463" value="0" visible="false"/>
<variable ID="1176816615:sequence" blockID="1176816615" value="Active Sequence" visible="false"/>
<variable ID="80938729:input ROI" blockID="80938729" value="2 ROI" visible="false"/>
<variable ID="80938729:X radius" blockID="80938729" value="0" visible="true"/>
<variable ID="80938729:Y radius" blockID="80938729" value="0" visible="true"/>
<variable ID="80938729:Z radius" blockID="80938729" value="0" visible="true"/>
<variable ID="80938729:unit" blockID="80938729" value="PIXELS" visible="false"/>
<variable ID="1672893094:text" blockID="1672893094" value="Classes-Ch" visible="false"/>
</input>
<output>
<variable ID="2000223721:value" blockID="2000223721" visible="false"/>
<variable ID="1138790362:extracted" blockID="1138790362" visible="false"/>
<variable ID="1735388957:output" blockID="1735388957" visible="false"/>
<variable ID="567992346:binary sequence" blockID="567992346" visible="false"/>
<variable ID="567992346:output regions" blockID="567992346" visible="false"/>
<variable ID="212637474:Merged ROI" blockID="212637474" visible="false"/>
<variable ID="1809243121:output ROI" blockID="1809243121" visible="false"/>
<variable ID="1076500463:Sequence" blockID="1076500463" visible="false"/>
<variable ID="1176816615:width" blockID="1176816615" visible="false"/>
<variable ID="1176816615:height" blockID="1176816615" visible="false"/>
<variable ID="1176816615:size C" blockID="1176816615" visible="false"/>
<variable ID="1176816615:size Z" blockID="1176816615" visible="false"/>
<variable ID="1176816615:size T" blockID="1176816615" visible="false"/>
<variable ID="80938729:output ROI" blockID="80938729" visible="false"/>
</output>
</variables>
</workflow>
</blocks>
<links>
<link dstBlockID="1592247404" dstVarID="121677470:input sequence" srcBlockID="1984806368" srcVarID="input sequence"/>
<link dstBlockID="1592247404" dstVarID="1138790362:channel" srcBlockID="1674525596" srcVarID="integer"/>
<link dstBlockID="1592247404" dstVarID="567992346:Number of classes" srcBlockID="372403712" srcVarID="integer"/>
<link dstBlockID="1592247404" dstVarID="80938729:X radius" srcBlockID="1674883673" srcVarID="integer"/>
<link dstBlockID="1592247404" dstVarID="80938729:Y radius" srcBlockID="1674883673" srcVarID="integer"/>
<link dstBlockID="1592247404" dstVarID="80938729:Z radius" srcBlockID="1674883673" srcVarID="integer"/>
<link dstBlockID="1592247404" dstVarID="25624154:color" srcBlockID="809461265" srcVarID="color"/>
</links>
</protocol>
