[vtkusers] image island removal and hole filling

Karthik Krishnan karthik.krishnan at kitware.com
Mon Dec 6 13:34:01 EST 2010


Or you could process the pipeline in ITK, if you are willing to
incorporate another toolkit..

itk::ConnectedThresholdImageFilter ->
VotingBinaryHoleFillingImageFilter (or its iterative version)


On Mon, Dec 6, 2010 at 11:49 PM, David Gobbi <david.gobbi at gmail.com> wrote:
> I think I made a mistake... I should have told you to use
> ThresholdByLower(1).  Other than that, your code looks fine.
>   David
>
> On Mon, Dec 6, 2010 at 11:13 AM, Jonathan Morra <jonmorra at gmail.com> wrote:
>>
>> I just got your class in my version of vtk and up and running in Java, and
>> it's not working for me.  I was wondering what I'm doing wrong, could you
>> help me out?
>> Thanks
>>             // We have to remove all the islands not connected to the
>> center
>>             // and then fill the holes in the resulting mask
>>             vtkPoints seedPoints = new vtkPoints();
>>
>>  seedPoints.InsertNextPoint(panel.getPicker().GetPickPosition());
>>             vtkImageFloodFill fill = new vtkImageFloodFill();
>>             fill.SetInput(binaryImage);
>>             fill.SetSeedPoints(seedPoints);
>>             fill.ThresholdByUpper(1);
>>             fill.Update();
>>             binaryImage = fill.GetOutput();
>> On Fri, Dec 3, 2010 at 11:27 AM, Jonathan Morra <jonmorra at gmail.com>
>> wrote:
>>>
>>> Fantastic, thanks for your help!
>>>
>>> On Fri, Dec 3, 2010 at 11:13 AM, David Gobbi <david.gobbi at gmail.com>
>>> wrote:
>>>>
>>>> Hi Jonathan,
>>>> I put my flood-fill filter on github, and tested it to make sure it
>>>> still works:
>>>> http://github.com/dgobbi/VTK/tree/flood-fill/Imaging/
>>>>
>>>> The interface is just like the vtkThresholdFilter, except that it
>>>> has a method called SetSeedPoints() to allow you to set your
>>>> seeds.  For a binary image, call ThresholdByUpper(1) so that
>>>> you can set seeds inside any non-zero islands that you want
>>>> to keep in your output.
>>>> I'll probably contribute this class to VTK after I have brought
>>>> it up-to-date (it was originally written for VTK 4).
>>>>   David
>>>>
>>>> On Thu, Dec 2, 2010 at 3:39 PM, Jonathan Morra <jonmorra at gmail.com>
>>>> wrote:
>>>>>
>>>>> Thanks, let me know where I can download it from.
>>>>>
>>>>> On Thu, Dec 2, 2010 at 2:36 PM, David Gobbi <david.gobbi at gmail.com>
>>>>> wrote:
>>>>>>
>>>>>> For Step 1, I have a VTK flood-fill class that do the job.  I'll
>>>>>> upload it to
>>>>>> gerrit so that you can try it out.  I don't think anything exists for
>>>>>> your
>>>>>> Step 2, though.
>>>>>>   David
>>>>>>
>>>>>> On Thu, Dec 2, 2010 at 3:14 PM, Jonathan Morra <jonmorra at gmail.com>
>>>>>> wrote:
>>>>>>>
>>>>>>> I have a binary vtkImageData class and I want to do 2 things with it,
>>>>>>> and I don't know how.
>>>>>>> 1.  I want to remove all islands from the image except one.  I want
>>>>>>> to identify the island not to be removed by a pixel location.  I have seen
>>>>>>> vtkImageIslandRemoval2D, and I don't think that'll work for me, because I do
>>>>>>> not know anything about the island's size that I want to keep (it could be
>>>>>>> big, small, or in the middle), all that I know is one point which
>>>>>>> is guaranteed to be interior to one island, and that's the island I want to
>>>>>>> keep.
>>>>>>> 2.  I want to do hole filling on the output of step 1 and I don't
>>>>>>> know how to do that.  I saw vtkFillHolesFilter but that appears only to work
>>>>>>> on poly data.  I'd like something analogous to that for vtkImageData.
>>>>>>> If anyone knows how to do these things, I'd appreciate it.  Also, if
>>>>>>> it matters, I'm coding in Java.
>>>>>>> Thanks
>>>>>>> _______________________________________________
>>>>>>> Powered by www.kitware.com
>>>>>>>
>>>>>>> Visit other Kitware open-source projects at
>>>>>>> http://www.kitware.com/opensource/opensource.html
>>>>>>>
>>>>>>> Please keep messages on-topic and check the VTK FAQ at:
>>>>>>> http://www.vtk.org/Wiki/VTK_FAQ
>>>>>>>
>>>>>>> Follow this link to subscribe/unsubscribe:
>>>>>>> http://www.vtk.org/mailman/listinfo/vtkusers
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the VTK FAQ at:
> http://www.vtk.org/Wiki/VTK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
>
>



More information about the vtkusers mailing list