Shape skeletons have been used in computer vision to represent shapes and discover their salient features. Earlier attempts were based on morphological approach in which a shape is eroded successively and uniformly until it is reduced to its skeleton. The main difficulty with this approach is its sensitivity to noise and several approaches have been proposed for dealing with this problem. In this paper, we propose a new method based on diffusion to smooth out the noise and extract shape skeletons in a robust way. In the process, we also obtain segmentation of the shape into parts. The main tool for shape analysis is a function called the ''edge-strength'' function. Its level curves are smoothed analogs of the successive shape outlines obtained during the morphological erosion. The new method is closely related to the popular method of curve evolution, but has several advantages over it. Since the governing equation is linear, the implementation is simpler and faster, The same equation applies to problems in higher dimension, Unlike most other methods, the new method is applicable to shapes which may have junctions such as triple points. Another advantage is that the method is robust with respect to gaps in the shape outline. Since it is seldom possible to extract complete shape outlines from a noisy grayscale image, this is obviously a very important feature, The key point is that the edge strength may be calculated from grayscale images without first extracting the shape outline. Thus the method can be directly applied to grayscale images. (C) 1997 Academic Press.