Introduction to Segmentation

Introduction

In partial fulfillment of ELEC 539, we designed and implemented an image segmentation method based on region-growing techniques. The algorithm has been implemented in C, and the program is run through a Matlab interface.

We chose to study the interesting problem of Image Segmentation. We discovered a sufficient amount of literature to provide us with a suitable background. In addition, we were given the opportunity to work with a leader in the image processing field, Dr. Kenneth Castleman. He provided us with expert advice and direction, and gave us some real medical images for testing our algorithms.

Image Segmentation is a subset of an expansive field of Computer Vision which deals with the analysis of the spatial content of an image. In particular, it is used to separate regions from the rest of the image, in order to recognize them as objects. It is a method used in the vast field of Artificial Intelligence.

Region Growing is an approach to image segmentation in which neighboring pixels are examined and added to a region class if no edges are detected. This process is iterated for each boundary pixel in the region. If adjacent regions are found, a region-merging algorithm is used in which weak edges are dissolved and strong edges are left in tact.

Region Growing offers several advantages over conventional segmentation techniques. Unlike gradient and Laplacian methods, the borders of regions found by region growing are perfectly thin (since we only add pixels to the exterior of our region) and connected. The algorithm is also very stable with respect to noise. Our region will never contain too much of the background, so long as the parameters are defined correctly. Other techniques that produce connected edges, like boundary tracking, are very unstable. Most importantly, membership in a region can be based on multiple criteria. We can take advantage of several image properties, such as low gradient or gray level intensity value, at once.

There are, however, several disadvantages to region growing. First and foremost, it is very expensive computationally. It takes both serious computing power (processing power and memory usage) and a decent amount of time to implement the algorithms efficiently.


Contents
Introduction
Development
Membership Criteria
Implementation
Conclusions

Last Updated 05/07/97 by Waqas Akram (wildcat@owlnet.rice.edu)