Take the 2-minute tour ×
Signal Processing Stack Exchange is a question and answer site for practitioners of the art and science of signal, image and video processing. It's 100% free, no registration required.

This is now a second time I am attempting to ask this very important but simple question here. What I want to know is can you do deconvolution by convolving a signal. It is often stated that, for example by cutting and boosting the same frequency on an equalizer the result is the original signal. Is that the case? Can convolution be removed by convolving? That would certainly brake the identity that the convolved signal must be n+m-1 in length. I tried this with an equalizer and the results seem to be close to perfect, just some quantization distortion.

If the above can be done, I can not arrive at this conclusion. For example If I convolve (1) with (1, 1) the result is (1, 1). I can not find any impulse response that if convolved with (1, 1) would result in (1).

So what is the truth here?

share|improve this question
add comment

2 Answers 2

Since convolution describes the operation of a linear time-invariant (LTI) system, the question is if the effect of an LTI system can be compensated by another LTI system. In the discrete-time domain you can use the $\mathcal{Z}$-transform to analyze LTI systems. If a signal $x(n)$ (with $\mathcal{Z}$-transform $X(z)$) is filtered by a system with impulse response $h(n)$ (with $\mathcal{Z}$-transform $H(z)$), then the $\mathcal{Z}$-transform of the resulting output signal $y(n)$ is given by

$$Y(z)=X(z)H(z)$$

Recovering $X(z)$ from $Y(z)$ can theoretically be done by

$$X(z)=\frac{Y(z)}{H(z)}$$

except at points $z$ where $H(z)=0$. The above equation corresponds to convolution with an impulse response $g(n)$ with $\mathcal{Z}$-transform

$$G(z)=\frac{1}{H(z)}\tag{1}$$

The question is if this system can be realized by a causal and stable filter. This is indeed the case if $H(z)$ is a minimum-phase system. Assuming rational transfer functions (which we always get when discrete-time systems consist of adders, multipliers, and delay elements), this means that $H(z)$ is a causal and stable system with all its zeros inside the unit circle of the complex plane (its poles are of course also inside the unit circle because of stability). Due the inversion in (1), the zeros of $H(z)$ are the poles of $G(z)$ and vice versa, i.e. if the zeros of $H(z)$ are inside the unit circle, then $G(z)$ is stable. One more thing that can be seen from (1) is that if $H(z)$ is an FIR system, then $G(z)$ is IIR. Nevertheless, in practice equalization if often done by FIR filters, which approximate the inverse filter in some optimal sense.

Let's look at a simple example. Assume an FIR system

$$h(n)=\delta(n)-a\delta(n-1),\quad |a|<1$$

Then we have

$$H(z)=1-az^{-1}$$

$H(z)$ is a minimum-phase system because it has one pole at $z=0$ and a zero at $z=a$, which is inside the unit circle if $|a|<1$. The inverse system is given by

$$G(z)=\frac{1}{1-az^{-1}}=\sum_{n=0}^{\infty}a^nz^{-n}$$

the impulse response of which is

$$g(n)=a^n,\quad n\ge 0$$

which is of course IIR.

So in this case the convolution

$$y(n)=(x*h)(n)=x(n)-ax(n-1)$$

can be perfectly compensated for by the convolution

$$x(n)=(y*g)(n)=\sum_{k=0}^{\infty}g(k)y(n-k)=\sum_{k=0}^{\infty}a^ky(n-k)$$

Note that exact deconvolution of a minimum-phase FIR system can only be achieved by an IIR system. The only systems that can be inverted (exactly) by FIR systems are all-pole IIR systems, i.e. systems with all their zeros at the origin of the complex plane (like $g(n)$ in the example above). Note however that in practice exact compensation is usually not the goal. E.g., in digital communications, almost all (linear) equalizers are implemented by transversal (FIR) filters, because they can be adapted more easily and because they are always stable.

share|improve this answer
    
Thanks. So the answer to my question is that the result of convolution is in fact not always the length of the convolved signals -1. However, it seems like to deconvolve a FIR response you need to do convolution with IIR. Equalizers can't possibly change the impulse length based on if they are cutting or boosting, correct? –  Tony Jun 5 at 6:24
    
Could you say something about the properties of the inverse. For example, if $ H $ is FIR, must $ G $ be an IIR, mus it be infinite, etc... Great Answer! –  Drazick Jun 5 at 6:26
    
Further, the result seem to be quite difficult to calculate. What do you think would be the answer (in time domain) to what does (1, 1) need to be convolved with for the end result to be (1, +infinite number of 0s I guess). I think the answer is 1, -1, 1, -1 in an infinite sequence, but just want to be sure. There is no easy way to solve this in time domain, is there? Indeed, it's true that the filter's impulse response length is different for cuts than boosts. I guess short FIR filters are unable to deconvolve then. –  Tony Jun 5 at 6:56
    
@Tony: You are right about the deconvolution of (1,1). The problem is that the inverse filter is not stable. Note that infinite impulse responses can be implemented efficiently using recursive structures, so the example I gave can be easily implemented in the time-domain. If deconvolution is (approximately) possible using short FIR filters solely depends on the characteristics of the original filter to be compensated for. E.g., you can turn my example around, i.e. use $g(n)$ as the first filter. Then it can be deconvolved (exactly) by $h(n)$, a simple 2-tap FIR filter. –  Matt L. Jun 5 at 8:01
    
@Drazick: I added some comments at the end of my answer. –  Matt L. Jun 5 at 8:13
show 10 more comments

What you want is $$x(t) = (x(t)\otimes h(t))\otimes h'(t)$$ where $\otimes$ denotes convolution. Taking $Z$ transform, $$X(z) = X(z) \times H(z) \times H'(z)$$ or $$H'(z) = \frac{1}{H(z)} \tag{1}$$

So you can deconvolve a convolution sum if you you have inverse transfer function as expressed in (1).

For causal and stable system, the ROC of $H'(z)$ must extend to infinity and ROC should contain the unit circle.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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