|
|
|
|
|
|
|
|
|
Connected components labeling - algorithms in Mathematica, Java, C++ and C#.
|
|
|
|
|
|
Organization: | University of Southern Maine |
Department: | Electrical Engineering |
Organization: | Universität Leipzig |
Department: | Department for Computer Graphics and Image Processing |
|
|
|
|
|
|
2004 International Mathematica Symposium
|
|
|
|
|
|
Banff, Canada
|
|
|
|
|
|
Image segmentation is an important processing step in numerous image processing applications. A multitude of techniques and algorithms fall into this broad category from simple thresholding, to edge-detection, connected components labeling and watershed transformations. Of all these techniques, connected components labeling and analysis is a relatively simple grouping algorithm that has been used for many years to isolate, measure and identify potential object regions in an image. It is widely used in industrial and biomedical applications where an image often consists of objects against a contrasting background. Such images may be cast into binary form, yielding data that retains useful shape and size information for the objects under observation. The labeling operation assigns a unique name or number to all 1-pixels that belong to the same connected component of the image. As a result of the labeling, individual components can be extracted from the image programmatically and therefore are available for further processing and analysis. A variety of region labeling algorithms have been described in the literature. In this paper we will demonstrate Mathematica implementations of selected algorithms. Several alternative implementations will be presented. The unique contribution of this paper lies in a detailed discussion of realizations and comparison of performance of a selected algorithm in several compiled languages. The languages include C++, Java, and C#.
|
|
|
|
|
|
|
|
|
|
|
|
image processing, image segmentation, connected components, watershed transformations, region labeling
|
|
|
|
|
|
|
|
|
|
|
|
|
| | | | | |
|