Representing the image as a surface, an inhomogeneous diffusion algorithm is developed, evolving the surface at a speed proportional to its mean curvature, reducing noise while preserving image structure. An adaptive scaling parameter increases the speed of the diffusion. The properties of a discrete algorithm are demonstrated experimentally