[Insight-users] BinaryErodeImageFilter - strange behaviour

Jens Kaftan mailinglist at tus-wickrath.de
Tue Jan 3 04:30:06 EST 2006


Hi Gaeton,

sorry, I must have forgotten. I am using version 2.4.0.

Thanks,
Jens.

>
>
>Hi Jens,
>
>Can you tell us which ITK version you're using ? The implementation of 
>BinaryErodeImageFilter have change in the 2.4 release
>
>Regards
>
>Gaetan
>
>On Monday 02 January 2006 19:56, mailinglist at tus-wickrath.de wrote:
>> Hi,
>>
>> the behaviour of the "itkBinaryErodeImageFilter" depending on the size of
>> the StructuringElementSize is quite strange, and I am not sure if this
>> might be a problem with the filter of with my application. I do use an
>> BinaryBallStructuringElement with varying radius. While the filter works
>> most of the times as expected, there is usually one stucturingelement-size
>> inbetween, where the filter output is exactly like the input, although this
>> result is obviously wrong. For example:
>> The input (binary image) is of size 10x12, while the boundary lines/columns
>> have only zero elements. Applying an structuring element with radius=3
>> causes that only one pixel unequal zero remains of the input image.
>> Performing an erosion with radius=4,5,6 or radius=8,9,10 on the same input
>> image causes logicaly that the ouput image contains only zero values. But
>> performing an erosion with radius=7 produces an output image which is equal
>> with the input. The same happend by using an input image of size 37x25 and
>> an structuring element with an radius of exactly 10.
>>
>> Following a code fragment which is supposed to show roughly the main
>> algorithm pipeline (it is pretty much like the example within the ITK
>> Software Guide):
>>
>> typedef itk::Image< unsigned int, 2 > BinaryMaskType;
>> typedef itk::BinaryBallStructuringElement<unsigned int, 2>
>> MorphStructuringElementType; typedef
>> itk::BinaryErodeImageFilter<BinaryMaskType, BinaryMaskType,
>> MorphStructuringElementType> ErodeFilterType;
>>
>> ErodeFilterType::Pointer binaryErode = ErodeFilterType::New();
>> MorphStructuringElementType structuringElement;
>> for(int radius = 1;  radius<15; radius++)
>> {
>>    binaryErode->SetInput( bbMask );
>>    structuringElement.SetRadius(radius);
>>    structuringElement.CreateStructuringElement();
>>    binaryErode->SetKernel( structuringElement );
>>    binaryErode->Update();
>>    // Now analyze the ouput...
>> }
>>
>> Thanks a lot!
>> Jens.
>> _______________________________________________
>> Insight-users mailing list
>> Insight-users at itk.org
>> http://www.itk.org/mailman/listinfo/insight-users


More information about the Insight-users mailing list