[Insight-users] error using SliceBySliceImageFilter and WatershedFilter

Sara Rolfe smrolfe at u.washington.edu
Thu Oct 11 17:02:34 EDT 2012


Hi Brad,

Thanks for your suggestion.  When I swap in the  
MorphologicalWatershedImageFilter it works correctly.  I think you're  
right that there's a bug in the WatershedImageFilter causing this  
behavior.

Thanks,
Sara


On Oct 11, 2012, at 12:15 PM, Bradley Lowekamp wrote:

> Hello Sara,
>
> At first glance I don't see any thing wrong with your code. You may  
> have encountered a bug with itk::WatershedImageFilter when it is  
> heavily re-use, but that would require some detailed checking.
>
> As a quick fix you could try the  
> itk::MorphologicalWatershedImageFilter which is in review instead  
> and see if you get the results you are looking for.
>
> Brad
>
> On Oct 11, 2012, at 2:54 PM, Sara Rolfe <smrolfe at u.washington.edu>  
> wrote:
>
>> Hello,
>>
>> I am attempting to do a slice-by-slice watershed segmentation of a  
>> 3D image.  First, I got the watershed segmentation working  
>> correctly on a 2D image.  Next, I tried to implement it with the  
>> SliceBySliceImageFilter.  I connected the SliceBySliceImageFilter  
>> to a pipeline with the gradient filter as the input filter and the  
>> watershed filter as the output.  Running gave me a continuous  
>> output of the following error:
>>
>> WaterShedFilter_SBS(5879,0xa0689720) malloc: *** error for object  
>> 0x48c187c: Non-aligned pointer being freed
>> *** set a breakpoint in malloc_error_break to debug
>> ...
>>
>> I have read the article on the slice-by-slice filter http://www.insight-journal.org/browse/publication/133 
>>  and have gotten it working with the gradient filter alone and a  
>> pipeline of two gradient filters.  However, when I put in the  
>> watershed filter alone or with the gradient filter, I get the above  
>> error.  I'd appreciate any advice.  An excerpt of my code is below.
>>
>> Thanks,
>> Sara
>>
>>
>> const int inputDim =3;
>> const int sliceDim =2;
>> typedef itk::Image<float, inputDim>													InputImageType;
>> typedef itk::Image<unsigned long, inputDim>												 
>> OutputImageType;
>> typedef itk::Image<float, sliceDim>													SliceFloatImageType;
>> typedef itk::ImageFileReader< InputImageType >												ReaderType;
>> typedef itk::GradientMagnitudeImageFilter< SliceFloatImageType,
>> 	SliceFloatImageType >														GradientMagnitudeImageFilterType;
>> typedef itk::WatershedImageFilter<SliceFloatImageType>											 
>> WatershedFilterType;
>> typedef itk::SliceBySliceImageFilter< InputImageType,
>> 	OutputImageType,GradientMagnitudeImageFilterType,
>> 	WatershedFilterType >														SliceBySliceFilterType;
>>
>> 	InputImageType::Pointer inputImage = reader->GetOutput();
>>
>> 	GradientMagnitudeImageFilterType::Pointer  
>> gradientMagnitudeImageFilter =  
>> GradientMagnitudeImageFilterType::New();
>>
>> 	WatershedFilterType::Pointer watershedFilter =  
>> WatershedFilterType::New();
>> 	watershedFilter->SetThreshold(threshold);
>> 	watershedFilter->SetLevel(level);
>> 	watershedFilter->SetInput(gradientMagnitudeImageFilter- 
>> >GetOutput());
>> 	
>> 	SliceBySliceFilterType::Pointer sliceBySliceFilter =  
>> SliceBySliceFilterType::New();
>> 	sliceBySliceFilter -> SetInput(inputImage);
>> 	sliceBySliceFilter -> SetInputFilter(gradientMagnitudeImageFilter);
>> 	sliceBySliceFilter -> SetOutputFilter(watershedFilter);
>> 	sliceBySliceFilter->Update();
>>
>> _____________________________________
>> Powered by www.kitware.com
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Kitware offers ITK Training Courses, for more information visit:
>> http://www.kitware.com/products/protraining.php
>>
>> Please keep messages on-topic and check the ITK FAQ at:
>> http://www.itk.org/Wiki/ITK_FAQ
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.itk.org/mailman/listinfo/insight-users
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.itk.org/pipermail/insight-users/attachments/20121011/bab2006c/attachment.htm>


More information about the Insight-users mailing list