An iterative approach that partitions an image into piecewiseconstant regions is presented. Each iteration consists of three steps. The first step extracts edges from the image. The extracted edges, which must exhibit high connectivity, are computed using a Laplacian-like morphological edge detector in the first iteration and a simple gradient thresholding in subsequent iterations. After the first iteration, the edge extractor operates on a piecewise-constant image for which the edge detection problem is well defined and well posed. In the second step, a fast averaging of connected pixels within closed boundaries defines the regions in the image. Finally, edge pixels (both true and spurious edge pixels) are each assigned to an underlying region. The iterative application of the three steps simplifies an input image in a diffusion-like manner. The advantages of this algorithm are that both local and regionbased information is incorporated, convergence occurs in a few iterations, and the component operations are relatively simple.