[Insight-users] Attribute opening in 3D images

Richard Beare richard.beare at gmail.com
Mon Dec 22 17:48:46 EST 2008


It sounds like you're after the regions that get clipped off by the
area opening - the traditional way of getting these is to subtract the
output of the attribute opening from the original (producing an area
tophat operation). You can threshold this and label the result.

On Tue, Dec 23, 2008 at 6:21 AM, Gaëtan Lehmann
<gaetan.lehmann at jouy.inra.fr> wrote:
>
> Le 22 déc. 08 à 14:11, David Pastor a écrit :
>
>> Well, i took a look at "Label objetc representation and manipulation with
>> ITK".
>>
>> I guess the output of the AreaOpeningImageFilter is an itk:Image.
>
> that's it
>
>> So I need a filter to obtain a Label Image (itk::Image)
>
> A label image or a binary image, as you prefer: BinaryImageToLabelMapFilter
> will search the connected component for you in case of a binary image.
>
>> from the output of the area opening filter and then use a LabelImage to
>> LabelMap or LabelCollection filter to keep moving with a LabelObject
>> representation of the connected components.
>
> If you want to get the flat regions extracted by the AreaOpeningImageFilter,
> you can use itk::RegionalMaximaImageFilter to have them as a binary image.
> Then convert to a LabelMap with BinaryImageToLabelMapFilter.
>
> Gaëtan
>
>
> PS: LabelMap is the new name of the LabelCollectionImage —
> LabelCollectionImage was too long to type and the word Image is already used
> in several ways in ITK (LabelImage, BinaryImage, …) so LabelCollectionImage
> can be seen as a new special content of an Image. Be sure to read the last
> version of the article!
> Also, the last version of the sources is here:
> http://voxel.jouy.inra.fr/darcs/contrib-itk/binaryAttributeMorphology/binaryAttributeMorphology.tar.gz
>
>>
>>
>> David
>>
>> ----- Original Message ----- From: "David Pastor"
>> <david.pastor at die.upm.es>
>> To: <Richard.Beare at ieee.org>; "Gaëtan Lehmann"
>> <gaetan.lehmann at jouy.inra.fr>
>> Cc: "Dan Mueller" <dan.muel at gmail.com>; <insight-users at itk.org>
>> Sent: Monday, December 22, 2008 12:49 PM
>> Subject: Re: [Insight-users] Attribute opening in 3D images
>>
>>
>>> Yes, very useful both packages. As I only need area opening I'll try with
>>> the Richard's implementation that should be faster.
>>>
>>> I've seen what u mean with the coding styles, but I expect it won't be a
>>> problem.
>>>
>>> Just to get it clear to myself, the output is just an image where the
>>> peaks are thresholded to the level that satisfy the lamda and the rest image
>>> is left as the original. So at the end we obtain a set of flat regions
>>> (connected sets) with area = Lambda (with different gray leves) and the
>>> background original image.
>>>
>>> At this point a I need to get a label objects collection for further
>>> processing. I need an alternative filter to
>>> "itk::BinaryImageToLabelCollectionImageFilter" for an image with flat
>>> regions at different levels. Could it be ConnectedComponentsImageFilter?
>>>
>>> On the other hand I've seen some related stuff like
>>> itkLabelAttributeOpeningImageFilter and itkShapeAttributeOpeningImageFilter,
>>> but I guess they should be used after converting the image into a label
>>> collection.
>>>
>>> Cheers,
>>> DAvid
>>>
>>>
>>>
>>> ----- Original Message ----- From: "Richard Beare"
>>> <richard.beare at gmail.com>
>>> To: "Gaëtan Lehmann" <gaetan.lehmann at jouy.inra.fr>
>>> Cc: "Dan Mueller" <dan.muel at gmail.com>; "David Pastor"
>>> <david.pastor at die.upm.es>; <insight-users at itk.org>
>>> Sent: Saturday, December 20, 2008 1:05 AM
>>> Subject: Re: [Insight-users] Attribute opening in 3D images
>>>
>>>
>>> Yes, that's right - the one I wrote only does area/volume attribute
>>> operations, which are the ones I have used most commonly (in fact I
>>> suspect exclusively). It uses the algorithm described by Michael
>>> Wilkinson in PAMI. I think I used some non itk coding styles to allow
>>> direct translation of the algorithm.
>>>
>>> On Sat, Dec 20, 2008 at 12:15 AM, Gaëtan Lehmann
>>> <gaetan.lehmann at jouy.inra.fr> wrote:
>>>>
>>>> Le 19 déc. 08 à 12:35, Dan Mueller a écrit :
>>>>
>>>>> Hi David,
>>>>>
>>>>> Richard Beare also contributed some attribute morphology classes
>>>>> (though I'm not sure of the full details/implementation/etc. You'll
>>>>> have to check the paper yourself:
>>>>>
>>>>> http://www.insight-journal.org/browse/publication/203
>>>>>
>>>>
>>>> Err, yes, just forgot to cite this one — I'm using it often though.
>>>> I think it can't handle as much kind of attributes than what can be done
>>>> with component trees, but for the size opening, it gives much efficients
>>>> results.
>>>>
>>>>> Make sure you leave a review!
>>>>>
>>>>> HTH
>>>>>
>>>>> Cheers, Dan
>>>>>
>>>>> 2008/12/19 Gaëtan Lehmann <gaetan.lehmann at jouy.inra.fr>:
>>>>>>
>>>>>> Le 19 déc. 08 à 11:46, David Pastor a écrit :
>>>>>>
>>>>>>> Dear all,
>>>>>>>
>>>>>>> First, just say hello to everybody (this is my first go on the
>>>>>>> mailing
>>>>>>> list).
>>>>>>>
>>>>>>> We are using ITK for some image processing based on morphology and
>>>>>>> I'm
>>>>>>> missing some attribute openings (closings) filters on the API. I'd
>>>>>>> like
>>>>>>> to
>>>>>>> know if there is some ongoing work on that or there is some code that
>>>>>>> i
>>>>>>> can
>>>>>>> reuse to build up a solution.
>>>>>>>
>>>>>>> I've seen there is an implementation of a Priority Queue... but maybe
>>>>>>> it
>>>>>>> would be better to use some other potentially faster implementations
>>>>>>> like
>>>>>>> Max trees or Union Sets algorithms.
>>>>>>>
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I've contributed some code both for the grayscale and the binary case.
>>>>>> The
>>>>>> grayscale version is based on max trees - I've called them component
>>>>>> trees.
>>>>>> Both are usable (and used) now, but the one for the grayscale case
>>>>>> still
>>>>>> lacks some doc.
>>>>>> You can get it from the insight journal or from the main repository to
>>>>>> get
>>>>>> the last improvements/fixes.
>>>>>>
>>>>>> Binary case:
>>>>>>
>>>>>> http://www.insight-journal.org/browse/publication/176
>>>>>> http://voxel.jouy.inra.fr/darcs/contrib-itk/binaryAttributeMorphology/
>>>>>>
>>>>>> Grayscale case:
>>>>>>
>>>>>> http://www.insight-journal.org/browse/publication/210
>>>>>> http://voxel.jouy.inra.fr/darcs/contrib-itk/componentTree/
>>>>>>
>>>>>> Any comments or improvements are welcome!
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Gaëtan
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Gaëtan Lehmann
>>>>>> Biologie du Développement et de la Reproduction
>>>>>> INRA de Jouy-en-Josas (France)
>>>>>> tel: +33 1 34 65 29 66    fax: 01 34 65 29 09
>>>>>> http://voxel.jouy.inra.fr  http://www.mandriva.org
>>>>>> http://www.itk.org  http://www.clavier-dvorak.org
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Insight-users mailing list
>>>>>> Insight-users at itk.org
>>>>>> http://www.itk.org/mailman/listinfo/insight-users
>>>>>>
>>>>>>
>>>>
>>>> --
>>>> Gaëtan Lehmann
>>>> Biologie du Développement et de la Reproduction
>>>> INRA de Jouy-en-Josas (France)
>>>> tel: +33 1 34 65 29 66    fax: 01 34 65 29 09
>>>> http://voxel.jouy.inra.fr  http://www.mandriva.org
>>>> http://www.itk.org  http://www.clavier-dvorak.org
>>>>
>>>>
>>>> _______________________________________________
>>>> Insight-users mailing list
>>>> Insight-users at itk.org
>>>> http://www.itk.org/mailman/listinfo/insight-users
>>>>
>>>>
>>>
>>> --
>>> This message has been scanned for viruses and
>>> dangerous content by MailScanner, and is
>>> believed to be clean.
>>>
>>
>
> --
> Gaëtan Lehmann
> Biologie du Développement et de la Reproduction
> INRA de Jouy-en-Josas (France)
> tel: +33 1 34 65 29 66    fax: 01 34 65 29 09
> http://voxel.jouy.inra.fr  http://www.mandriva.org
> http://www.itk.org  http://www.clavier-dvorak.org
>
>


More information about the Insight-users mailing list