Wikipedia - Wiener Deconvolution shows this formula: $$ \ G(f) = \frac{H^*(f)S(f)}{ |H(f)|^2 S(f) + N(f) } $$

Could someone explain the derivation?
Specifically, where does the squaring ($|H(f)|^2$) come from?

  • 4
    $\begingroup$ What exactly is unclear in the "Derivation" section on the same wikipedia page? $\endgroup$
    – jan
    Oct 21, 2013 at 11:51
  • $\begingroup$ @DanSkep, Any chance you review my answer and mark it or say what's missing? $\endgroup$
    – Royi
    Sep 19, 2022 at 11:45
  • $\begingroup$ @Royi Dan was last seen 9 years ago, so I'd be surprised if he resurfaces to review your helpful (+1) answer :) $\endgroup$
    – Gillespie
    Apr 3, 2023 at 17:45

2 Answers 2


The Wiener Filter can also be derived by another (Easier) way.

Let's assume the following model:

$$ y = h \ast x + n $$

Namely the data is a result of a linear combination (Convolution) of $ x $ with Additive Noise.

If we assume the noise model is Gaussian and the input data ($\boldsymbol{x}$) is also formed by a Gaussian distribution then we should try to minimize (MAP Estimator):

$$ \hat{x} = \frac{1}{2 {\sigma}_{n}^{2}} \left\| h \ast x - y \right\|_{2}^{2} + \frac{1}{ 2 {\sigma}_{x}^{2} } \left\| x \right\|_{2}^{2} $$

Since the convolution is Linear Operation and assuming we in finite dimension then it can be rewritten as:

$$ \hat{x} = \frac{1}{2} \left\| H x - y \right\|_{2}^{2} + \frac{{\sigma}_{n}^{2}}{ 2 {\sigma}_{x}^{2} } \left\| x \right\|_{2}^{2} $$

This is just a Tikhonov Regulaized Least Squares with the solution given by:

$$ \hat{x} = \left( {H}^{T} H + \frac{{\sigma}_{n}^{2}}{{\sigma}_{x}^{2}} I \right)^{-1} {H}^{T} y $$

Now, if we use the discrete form of the circular convolution then $ H $ is a circulant matrix which means all can be solved in the Frequency Domain which results in the same equation as above with a simple change:

$$ \ G(f) = \frac{{H}^{*} \left( f \right) S \left( f \right)}{ {\left| H \left( f \right) \right|}^{2} S \left( f \right) + N \left( f \right)} = \frac{{H}^{*} \left( f \right)}{ {\left| H \left( f \right) \right|}^{2} + \frac{N \left( f \right)}{S \left( f \right)}} $$

  • $\begingroup$ Did you assume a Gaussian prior for $x$? I am not sure how the Gaussian-noise assumption is related to MAP estimate? $\endgroup$
    – rando
    Jul 18, 2022 at 20:29
  • $\begingroup$ @rando, The fidelity term is about the noise, The regularization is about the prior (MAP). $\endgroup$
    – Royi
    Jul 19, 2022 at 6:00

As Jan pointed out, the wikipedia article very lucidly explains the derivation of the weiner filter. The goal of the weiner filter is to reduce the mean of the error in prediction. Hence, you would do the same. Write down the estimate of the error and then differentiate it with respect to G(f) to obtain the optimum G(f)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.