Dear All.<div><br></div><div>I&#39;m using Watershed filter on my work about segmentation. But it often crashed and i can not find the reason. Please Help~</div><div><br></div><div>Error message is :&nbsp;&quot;list iterator not dereferencable&quot;</div>
<div><br></div><div>Try my best to explain the problem.</div><div><br></div><div>This is the part of my program</div><div><br></div><div>.....</div><div>//A SigmoidImageFilter&nbsp;executed.</div><div><br></div><div><div>typedef &nbsp;itk::WatershedImageFilter&lt; InternalImageType &gt; WatershedFilterType; //&nbsp;InternalImageType--&gt; image&lt;float, 2&gt;;</div>
<div>WatershedFilterType::Pointer watershedFilter = WatershedFilterType::New();</div><div>watershedFilter-&gt;SetInput( sigmoidFilter-&gt;GetOutput() );</div><div>watershedFilter-&gt;SetThreshold( _threshold );</div><div>
watershedFilter-&gt;SetLevel( _level ); &nbsp;//both threshold and &nbsp;level is between 0~1</div><div>watershedFilter-&gt;Update();</div></div><div><br clear="all"><div>When going to this step:&nbsp;SegmentTreeGenerator&lt;TScalarType&gt;::CompileMergeList(SegmentTableTypePointer segments,&nbsp;</div>
<div>SegmentTreeTypePointer mergeList)</div><div>{</div><div>&nbsp; &nbsp;//.....</div><div>&nbsp; &nbsp;</div><div>&nbsp; &nbsp;for (segment_ptr = segments-&gt;Begin(); segment_ptr != segments-&gt;End();</div><div>&nbsp; &nbsp; &nbsp; &nbsp;++segment_ptr)</div><div>&nbsp; &nbsp; {</div>
<div>&nbsp; &nbsp; labelFROM = (*segment_ptr).first;</div><div>&nbsp; &nbsp; &nbsp;&nbsp;</div><div>&nbsp; &nbsp; labelTO</div><div>&nbsp; &nbsp; &nbsp; = m_MergedSegmentsTable-&gt;RecursiveLookup((*segment_ptr).second.edge_list.front().label);</div><div><br></div><div>&nbsp; &nbsp;//.....</div>
<div>}</div><div><br></div><div>then I found that the segment_ptr -&gt; hash_table only have one element. Thus the list crashed.</div><div>the&nbsp;variable segment is copy of the input which is defined &quot; &nbsp;typename SegmentTableType::Pointer input = this-&gt;GetInputSegmentTable(); &quot; in the&nbsp;SegmentTreeGenerator::GenerateData() part.</div>
<div><br></div><div>I&#39;m not clear about the&nbsp;internal implement of this function. Therefore i can&#39;t find the reason why it crashed.</div><div>Please HELP!</div><div>THANKS.</div><div><br></div><div><br></div>-- <br>
Nothing but a MADAOŁĄ<br><br>
</div>