1
$\begingroup$

Suppose we define the Dirichlet kernel as:

$$ \frac{\sin(\pi N x /2)}{\pi N\sin(x /2)} $$

(Note: I'm not entirely sure what the standard definition of the Dirichlet kernel is; mine is slightly different than the Wikipedia one, for example. Comments on this are appreciated as well.)

I belive this can be shown to be an aliased version of a sinc function ($\frac{\sin(\pi x)}{\pi x}$). The Dirichlet kernel can be used as a lowpass interpolation filter, but as shown here, it has poorer frequency characteristics than a truncated windowed sinc.

My question is, in spite of its drawbacks, are there any advantages to using the Dirichlet kernel over a windowed sinc for band limited interpolation? For example, I've heard that it produces better results than a windowed sinc near the edges of a signal (where you get errors when the sinc filter runs over the edge of the data; thus it would be advantageous especially for short signals). I think this is related to treating the signal being interpolated as if it's been replicated (or mirrored) at the ends, but I can't find it worked out anywhere.

$\endgroup$
3
  • $\begingroup$ Is this question about using the advantages of Dirichlet vs. No interpolation or vs. some other interpolation? $\endgroup$ Commented May 18 at 19:02
  • $\begingroup$ @robertbristow-johnson the main alternative I have in mind is a windowed sinc filter for bandlimited interpolation, but there could be others. I've edited the question a bit. $\endgroup$
    – Gillespie
    Commented May 18 at 21:25
  • $\begingroup$ I think that's better, Gillespie, because, especially if $N$ is large, you can have far fewer terms to add up. I would suggest a Kaiser winder. For perfect bandlimited interpolation, it's the Dirichlet thingie for odd $N$, but it's slightly different for even $N$. $\endgroup$ Commented May 18 at 21:29

1 Answer 1

0
$\begingroup$

Just as linear convolution with a Sinc is a perfect interpolator for a band-limited non-periodic waveform, circular convolution with the Dirichlet Kernel provides perfect interpolation for a band-limited periodic waveform.

$\endgroup$
11
  • 2
    $\begingroup$ Dan, is it always? What if the period $N$ is even? Then it's $$\sum_{n=-\infty}^{\infty} x[n] \, \operatorname{sinc}(t-n) = \sum_{n=0}^{N-1} x[n] \frac{\sin\big(\pi (t-n)\big)}{N \tan\big(\pi (t-n)/N\big)} $$ with $\tan(\cdot)$ in the denomimator. $\endgroup$ Commented May 18 at 21:24
  • $\begingroup$ Thanks for the answer Dan! Could you expand on that a bit for practical situations? Obviously sinc interpolation is perfect for bandlimited signals, but nobody ever uses a sinc because it's infinite in extent. We approximate it (e.g., via windowing). This produces errors, and some filters are better for minimizing different errors. I'm interested in interpolation errors near the edges of a finite duration signal, and I was under the impression that a Dirichlet kernel could help with that problem, but I'm not sure. Can you shed any light on that? $\endgroup$
    – Gillespie
    Commented May 18 at 21:33
  • 1
    $\begingroup$ //"I'm interested in interpolation errors near the edges of a finite duration signal, ...// - - - Are you appending zeros on both sides of your finite duration signal? - - - //"... and I was under the impression that a Dirichlet kernel could help with that problem, but I'm not sure. "// - - - - Dirichlet is for bandlimited (of a sort) interpolation of a periodic signal. So it's both bandlimited and periodic. That means a finite set of numbers completely describe the signal. $\endgroup$ Commented May 19 at 2:26
  • 2
    $\begingroup$ So @Gillespie and Dan, please take a look at this answer and others associated with it including at the math SE. $\endgroup$ Commented May 19 at 4:40
  • 1
    $\begingroup$ Thanks @robertbristow-johnson - There’s a lot to it! $\endgroup$ Commented May 19 at 12:13

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.