Image denoising technology is one of the forelands in the field of computer graphic and computer vision. Non-local means method is one of the great performing methods which arouse tremendous research. In this paper, an improved weighted non-local means algorithm for image denoising is proposed. The non-local means denoising method replaces each pixel by the weighted average of pixels with the surrounding neighborhoods. The proposed method evaluates on testing images with various levels noise. Experimental results show that the algorithm improves the denoising performance.