[ITK-users] Binary Fill hole Image Filter for 3D Image

Dženan Zukić dzenanz at gmail.com
Sat Feb 4 14:46:25 EST 2017


Hi Abdelkhalek,

try using binary opening/closing
<https://itk.org/Doxygen/html/classitk_1_1BinaryMorphologicalClosingImageFilter.html>,
which are implemented as binary dilation and erosion.

https://itk.org/Doxygen/html/group__MathematicalMorphologyImageFilters.html
Regards,
Dženan

On Sat, Feb 4, 2017 at 2:43 PM, Abdelkhalek Bakkari <
bakkari.abdelkhalek at hotmail.fr> wrote:

> Hi Dzenan,
>
>
> My goal is to obtain the big contour of the 3D image. For this reason, I
> tried to use Binary Fill hole Image Filter  and after the
> BinaryContourImageFilter.
>
> Could you provide me another way using ITK, please?
>
>
> Best regards,
>
>
>
>
> ------------------------------
> *From:* Dženan Zukić <dzenanz at gmail.com>
> *Sent:* 04 February 2017 20:03
> *To:* Abdelkhalek Bakkari
> *Cc:* insight-users
> *Subject:* Re: Binary Fill hole Image Filter for 3D Image
>
> Hi Abdelkhalek,
>
> your image does not have any holes! The input and output images are binary
> identical (examined using file compare tool). If I modify your input image
> to also contain a real hole (not connected to image edge or the
> background), it gets filled properly. See attached.
>
> Regards,
> Dženan
>
> On Sat, Feb 4, 2017 at 1:28 PM, Abdelkhalek Bakkari <
> bakkari.abdelkhalek at hotmail.fr> wrote:
>
>>
>>
>>
>>
>> Dear ITK-users,
>>
>> I tried to adopt the BinaryFillholeImageFilter for 3D image (contour.mha).
>> Unfortunately,  the result which I obtained is not what I expect.
>>
>> The fragment of  code which I used is :
>>
>>                                                 // Lecture of the
>> contour.mha
>>                                                 typedef itk::Image<
>> unsigned char, 3 > UCharImageType;
>>                                                typedef
>> itk::ImageFileReader<UCharImageType> ImageReaderType;
>>                                        ImageReaderType::Pointer reader =
>> ImageReaderType::New();
>>                                         reader->SetFileName("contour.m
>> ha");
>>                                         reader->Update();
>>
>>                                                // Binary Fill Hole Image
>> Filter
>>                                                 typedef
>> itk::BinaryFillholeImageFilter< UCharImageType > FilterType;
>> FilterType::Pointer filter = FilterType::New();
>> filter->SetInput( reader->GetOutput() );
>> filter->SetForegroundValue( itk::NumericTraits< unsigned char >::min() );
>> filter->Update();
>>                                                 // Save the
>> BinaryFillHoleImage
>> {
>> typedef itk::ImageFileWriter<UCharImageType> ImageWriterType;
>> ImageWriterType::Pointer writer = ImageWriterType::New();
>> writer->SetFileName("BinaryFillHoleImage.mha");
>> writer->SetInput(filter->GetOutput());
>> try{
>> writer->Update();
>> }catch(itk::ExceptionObject &e){
>> std::cerr << e << std::endl;
>> }
>> }
>>
>>
>>
>> Thank you in advance.
>>
>> Kind regards,
>>
>>
>> Abdelkhalek Bakkari
>> Ph.D candidate in Computer Science
>> Institute of Applied Computer Science
>> Lodz University of Technology, Poland
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/insight-users/attachments/20170204/9247857a/attachment.html>


More information about the Insight-users mailing list