Removing shadows from single color images is an important problem in computer vision. In this paper, we propose a novel shadow removal approach, which could effectively remove shadows from textured surfaces, yielding high quality shadow-free images. Our approach aims at calculating scale factors to cancel the effect of shadows. Based on the regional gray edge hypothesis, which assumes the average of the reflectance differences in a region is achromatic, the scale factors can be computed without the restrictions that former algorithms need. The experimental results show that the proposed algorithm is effective.