Image denoising is an important first step to provide cleaned images for follow-up tasks such as image segmentation and object recognition. Many image denoising filters have been proposed, with most of the filters focusing on one particular type of additive or multiplicative noise. In this article, we propose a novel neighborhood regression approach. Using the neighboring pixels as predictors, our approach has superb performance over multiple types of noises, including Gaussian, Poisson, Gaussian and Poisson, salt & pepper, and stripped noise. Our L 2 regression filter can be parallelized to significantly speed up the denoising process to process a large number of noisy images. Meanwhile, our regression approach does not need tuning parameters or any training images, and it does not need any prior knowledge of the variance of the noise. Instead, our regression filter can accurately estimate the variance of the added Gaussian noise. We have performed extensive experiments, comparing our regression filter with the popular denoising filters, including BM3D, median filter, and wavelet filter, to demonstrate the superb performance of our proposed regression filter.