<p>It certainly isn't <em>always</em> about low pass filters (see for example <a href="https://en.wikipedia.org/wiki/Noise_reduction#Removal" rel="nofollow noreferrer">here on WP on "Noise Reduction"</a>) <em>but</em> you have to keep in mind that in your case the noise will always have a high frequency because you can basically consider each pixel with a independent noise realization. So any way of removing noise in this situation <em>will</em> have a low pass effect.</p>

CC BY-SA 3.0
2018-03-17T10:02:43.867Z
2018-03-17T10:02:43.867Z
flawr
<blockquote>
  <p>Is denoising ALWAYS about doing a low pass filter / blur?</p>
</blockquote>

<p>No, but this is the most obvious technique. A <em>good</em> denoiser isn't just a filter that runs on the image, but actually performs the reconstruction; i.e. it's a function from random samples to an image, not a function from an image to an image.</p>

<blockquote>
  <p>Or are there other ideas and techniques for removing noise?</p>
</blockquote>

<p>Yes. For years, the main family of denoise techniques worked in two parts. First, a line detection algorithm would detect the true edges in the image. Then, the output in this would set weights in a filter kernel to perform some kind of guided blur, so that the blur would be strongest (i.e. remove more frequencies) where there are no edges, and weakest (i.e. allow high frequencies) where there were edges. This would remove more noise from gradients while preserving edges.</p>

<p>Nowadays, deep learning has provided a new family of techniques. Using the same technique that's producing the noise (i.e. path tracing if you want to denoise path-tracer renders), produce lots of image pairs where one has high noise (few samples) and one has low noise (high sample rate). Feed these pairs into a convolutional network, to train it to produce the low-noise images from the high-noise images. Then feed your high-noise image into the trained network, and enjoy the low-noise output. Variations on this technique include having the network produce a filter kernel for each image patch, instead of learning the output image directly; or classifying an image patch according to its structure (what edges are present), so similar patches can be handled similarly. Some networks can even take the raw samples as input and directly produce a denoised image; others can guide your adaptive sampling algorithm.</p>

CC BY-SA 3.0
2018-03-17T14:43:24.377Z
2018-03-17T14:43:24.377Z
Dan Hulme
<p>When doing random sampling, you can get noisy results if you don't use enough samples like in the shadows below.</p>

<p>I know that if you use high frequency noise (aka blue noise), the noise pattern can be high frequency content only, which can then be low pass filtered (aka blur) to remove the high frequencies and leave just the lower frequency content which would be less noisy.</p>

<p>Is denoising ALWAYS about doing a low pass filter / blur? Or are there other ideas and techniques for removing noise?</p>

<p><a href="https://i.sstatic.net/SmLkV.png" rel="noreferrer"><img src="https://i.sstatic.net/SmLkV.png" alt="enter image description here"></a></p>

CC BY-SA 3.0
2018-03-18T18:56:58.417Z
It turns out a median filter is a really simple way to get pretty decent denoising.
Alan Wolfe
<noise><denoise>
What is the basic idea of denoising?
Alan Wolfe
# What is the basic idea of denoising?

(Asked by: username_0 on 2018-03-17)

When doing random sampling, you can get noisy results if you don't use enough samples like in the shadows below.

I know that if you use high frequency noise (aka blue noise), the noise pattern can be high frequency content only, which can then be low pass filtered (aka blur) to remove the high frequencies and leave just the lower frequency content which would be less noisy.

Is denoising ALWAYS about doing a low pass filter / blur? Or are there other ideas and techniques for removing noise?

[![enter image description here](https://i.sstatic.net/SmLkV.png)](https://i.sstatic.net/SmLkV.png)

**Tags:** noise, denoise

> **Comments:**
> **username_0**: It turns out a median filter is a really simple way to get pretty decent denoising.  

---

## 2 answers

### Answer by username_2 on 2018-03-17. Score: 5 | Accepted answer

> Is denoising ALWAYS about doing a low pass filter / blur?

No, but this is the most obvious technique. A *good* denoiser isn't just a filter that runs on the image, but actually performs the reconstruction; i.e. it's a function from random samples to an image, not a function from an image to an image.

> Or are there other ideas and techniques for removing noise?

Yes. For years, the main family of denoise techniques worked in two parts. First, a line detection algorithm would detect the true edges in the image. Then, the output in this would set weights in a filter kernel to perform some kind of guided blur, so that the blur would be strongest (i.e. remove more frequencies) where there are no edges, and weakest (i.e. allow high frequencies) where there were edges. This would remove more noise from gradients while preserving edges.

Nowadays, deep learning has provided a new family of techniques. Using the same technique that's producing the noise (i.e. path tracing if you want to denoise path-tracer renders), produce lots of image pairs where one has high noise (few samples) and one has low noise (high sample rate). Feed these pairs into a convolutional network, to train it to produce the low-noise images from the high-noise images. Then feed your high-noise image into the trained network, and enjoy the low-noise output. Variations on this technique include having the network produce a filter kernel for each image patch, instead of learning the output image directly; or classifying an image patch according to its structure (what edges are present), so similar patches can be handled similarly. Some networks can even take the raw samples as input and directly produce a denoised image; others can guide your adaptive sampling algorithm.


---

### Answer by username_1 on 2018-03-17. Score: 2

It certainly isn't *always* about low pass filters (see for example [here on WP on "Noise Reduction"](https://en.wikipedia.org/wiki/Noise_reduction#Removal)) *but* you have to keep in mind that in your case the noise will always have a high frequency because you can basically consider each pixel with a independent noise realization. So any way of removing noise in this situation *will* have a low pass effect.


---

