The classic connected components labelling algorithm requires a minimum of 2 passes through an image. This paper presents a modification of this algorithm that allows the resolution of merged labels to be deferred. This enables the subsequent data analysis step to be combined with the labelling procedure, with the result that connected components can be analysed in a single pass by gathering data on the regions as they are built. This avoids the need for buffering the image, making the algorithm ideally suited for processing streamed images on an FPGA or other embedded system with limited memory. It is shown that an FPGA-based design could use 1 clock cycle per pixel with a small overhead to manage merging of “U” shaped components. It is demonstrated that the worst case overhead is 20% of the image, although for typical images the overhead is less than 1%.
[1]
Marek Gorgon,et al.
Handel-C implementation of classical component labelling algorithm
,
2004,
Euromicro Symposium on Digital System Design, 2004. DSD 2004..
[2]
D. Bailey.
Raster Based Region Growing
,
1991
.
[3]
Azriel Rosenfeld,et al.
Sequential Operations in Digital Picture Processing
,
1966,
JACM.
[4]
Viktor K. Prasanna,et al.
Parallel Architectures and Algorithms for Image Component Labeling
,
1992,
IEEE Trans. Pattern Anal. Mach. Intell..
[5]
Danny Crookes,et al.
An FPGA-Based Image Connected Component Labeller
,
2003,
FPL.
[6]
Arie Shoshani,et al.
Optimizing connected component labeling algorithms
,
2005,
SPIE Medical Imaging.
[7]
Danny Crookes,et al.
FPGA implementation of image component labeling
,
1999,
Optics East.