This paper presents a new method for edge-preserving color image denoising based on the tensor voting framework, a robust perceptual grouping technique used to extract salient information from noisy data. The tensor voting framework is adapted to encode color information through tensors in order to propagate them in a neighborhood by using a specific voting process. This voting process is specifically designed for edge-preserving color image denoising by taking into account perceptual color differences, region uniformity and edginess according to a set of intuitive perceptual criteria. Perceptual color differences are estimated by means of an optimized version of the CIEDE2000 formula, while uniformity and edginess are estimated by means of saliency maps obtained from the tensor voting process. Measurements of removed noise, edge preservation and undesirable introduced artifacts, additionally to visual inspection, show that the proposed method has a better performance than the state-of-the-art image denoising algorithms for images contaminated with CCD camera noise.