I have implemented an infinite kernel sinc interpolation. For some signals I notice an artifact, visible at the right end of the plot.
I am wondering: is it a bug in my code or a phenomenon usual for this method?

enter image description here
red: 2x upsampled signal
blue: signal expected to be an output of the interpolation
sr (each) = 1000

  • $\begingroup$ Sinc interpolation is very hard to implement because the computer's numerical precision is not large enough to represent very long sinc signals. Having said, that, you could simply have a bug in your code. $\endgroup$ – MBaz Apr 24 '19 at 14:44
  • $\begingroup$ what's an "infinite kernel sinc interpolation"? if it is what i think it sounds like, how do you add an infinite number of terms together? $\endgroup$ – robert bristow-johnson Apr 24 '19 at 21:17
  • $\begingroup$ and in the figure above, the alignment of the blue dots are not vertically aligned with the red dots. (actually i am having second thoughts about that observation.) is that your intention (since you state that the "sr", i presume "sample rate", is the same for both signals)? $\endgroup$ – robert bristow-johnson Apr 24 '19 at 21:18
  • $\begingroup$ okay, there appears to be vertical alignment of the dots. so my first observation was incorrect. so what appears to be happening is that your blue signal is derived from your red signal in such a way that there it starts out with no delay at left and slowly increases the delay as the blue signal moves to the right. $\endgroup$ – robert bristow-johnson Apr 24 '19 at 21:29
  • $\begingroup$ @robertbristow-johnson I mean, that i do not restrict the size of the kernel. I create time array with sampling rate of upsampled signal, apply sinc function to whole of it. $\endgroup$ – Artur Pschybysz Apr 25 '19 at 10:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.