[Insight-users] Object Labeling - Attribute representing neighborhood
Richard Beare
richard.beare at gmail.com
Thu Apr 8 19:35:10 EDT 2010
Hi,
I've done something like this in the past to implement translocation
assay measurement. The idea there is that you start with cell nuclei
and want to measure expression levels in a donut around them.
As you suggest, simply dilating the objects is a simple way to start,
but there are issues. One is maintaining the labels, and the other is
dealing with the situation in which the objects are closer to each
other than the border thickness you are interested in.
Here's the approach I used:
1) Binarize your label map
2) Compute the distance transform.
3) Use the original label map as markers and apply a watershed
transform using the distance transform as the control image. The
result of this is a voronoi tesselation (roughly, depending on how
good your distance transform is) and the labels are preserved by the
watershed. This also deals with the case of objects being close
together.
4) Finally create a mask by thresholding your distance transform at
the border thickness you are after. Apply this mask to the watershed
output. Remove the original seeds if you want only the borders.
I think this should do what you are after.
On Fri, Apr 9, 2010 at 4:55 AM, Luis Ibanez <luis.ibanez at kitware.com> wrote:
> Hi Christian,
>
> Thanks for the detailed description of what you are trying to do.
>
>
> I'm wondering if the following class is what you are looking for:
>
> itkLabelContourImageFilter.txx
>
> http://public.kitware.com/Insight/Doxygen/html/classitk_1_1LabelContourImageFilter.html
> "Labels the pixels on the border of the objects in a labeled image. "
>
>
> Regards,
>
>
> Luis
>
>
> ----------------------------------------------------------------------------------------
> On Tue, Apr 6, 2010 at 6:52 AM, Christian Werner
> <christian.werner at rwth-aachen.de> wrote:
>> Hello!
>>
>> I am currently working with Gaetens Object Labeling/Measuring. It really
>> does a good job and I am glad that it seemlessly integrates into my
>> software. Now that I have analyzed how I could improve my object evalution,
>> I was looking for a way to qualify the neighborhood of an object. It seems
>> that this is a very characteristic trait of every ROI. Looking at all
>> pixels/voxels contained in the bounding box and e.g. take their average
>> would already give a rough estimate. Objects that e.g. differ in the
>> variance in the values of their neighboring elements could be easily
>> distinguished, even if all other attributes would suggest that they are of
>> the same type (roundness, size, ...). At least this is what I could need for
>> my analyzing purposes.
>>
>> Despite of the "simple" solution of the boundnig box I thought of several
>> ways to realize this. One could for example dilate all objects to a certain
>> degree, then subtract the original object to obtain a thick layer
>> surrounding the object. This layer would be an object itself and you could
>> just go ahead and qualify this layer as any other object. But this would
>> mean that you have to somehow make a correspodance between all layers and
>> all objects that they belong to. Assuming that the labeling itself is
>> already consistent (layers will get same IDs as the object), everything
>> would just be fine, but I doubt that you can trust that this is always the
>> case.
>>
>> Maybe there is already another way to qualify the neighborhood? I didn't get
>> to find such funcionality when looking through the paper.
>>
>> Best regards,
>> Christian
>>
>>
>> _____________________________________
>> 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.html
>>
>> 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
>>
> _____________________________________
> 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.html
>
> 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
>
More information about the Insight-users
mailing list