Introduction

Digital image segmentation is the process of assigning distinct labels to different objects in an image. The level of detail indicated by the labeling is related to the application at hand. To perform object identification in digital or continuous, moving or still images, humans make use of high-level reasoning and knowledge, as well as of different visual cues, such as shadowing, occlusion, parallax motion, and the relative size of objects. Aside from the difficulty of inserting this type of reasoning into a computer program, the task of segmenting out an object from its background in an image becomes particularly hard for a computer when, instead of the brightness values, what distinguishes the object from the background is some textural property, or when the image is corrupted by noise and/or inhomogeneos illumination.

Segmentation algorithms can be divided into three categories according to their user-program interactivity: manual, semiautomatic, and automatic. In manual algorithms, users can make use of some computer routines (e.g., drawing tools) to isolate and segment one or more objects. In semiautomatic algorithms, users usually select some points or areas that will be used to collect information for the characterization of the objects to be segmented. Finally, the automatic

1 Doctoral Program in Computer Science, The Graduate Center, CUNY, 365 5th Avenue, New York, NY

2 Department of Computer and Information Science, University of Pennsylvania, Levine Hall, 3330 Walnut Street, Philadelphia, PA

algorithms perform the whole segmentation process without any user intervention, usually by obtaining all information necessary to perform the segmentation from prior knowledge about the class of problems to which the segmentation at hand belongs.

Algorithms can be also be classified according to how they solve the segmentation problem. Point-based algorithms make a local decision about a point's membership to an object. This decision can be based solely on the point's brightness value or on the brightness values of a small neighborhood surrounding the point. A widely used and very simple point-based segmentation algorithm is thresholding, where a user selects one or two brightness values that are interpreted as lower and/or upper values of the brightness of the object to be segmented. Then, all pixels whose values are in the specified brightness range are considered to be part of the object. It is easy to see that algorithms of this type are very sensitive to noise, to inhomogeneous illumination, and are not appropriate for segmenting textured objects.

Edge-based segmentation algorithms usually work in two steps by first detecting edges in the image and then grouping or linking them into boundaries of objects based on the orientation of the edges and on prior knowledge regarding the expected shape of objects. Common edge detection procedures include the use of gradient operators, Laplacians or the Canny edge detector [1], while edge linking can be performed locally by searching small local pixel neighborhoods or globally by making use of the Hough Transform [2], for example. Other edge-based segmentation algorithms use active contour models, such as snakes [3] or balloons [4]. Snakes are energy-minimizing splines guided by external constraint forces and pushed by image forces (edges) toward image features, while balloons use image forces to stop their inflated curve models on image features. There are also global optimization algorithms [5-7] that segment images by minimizing various energy functions defined in terms of pixel labels and prior knowledge.

Region-based algorithms are subdivided into region growing and split-and-merge algorithms. Region growing algorithms, as the name suggests, start with preselected seed points forming the initial regions that grow according to some predefined rules until the whole image is labeled. Split-and-merge algorithms begin by subdividing an image into arbitrary disjoint regions, and then split and/or merge them repeatedly until some preset conditions are satisfied. The methods of balloons [4,8] and level sets [9,10] can also be considered region growing methods since they make use of contour models that inflate from an initial position to segment objects in a scene.

In this work we present a multiseeded fuzzy segmentation algorithm, which is a greedy semiautomatic region growing algorithm based on the fuzzy segmentation algorithm of [11] but is capable of efficiently segmenting multiple objects simultaneously.

0 0

Post a comment