DSPRelated.com
Forums

question about non-uniform sampling?

Started by lucy November 12, 2005
Carlos Moreno wrote:
> Jerry Avins wrote: > >>>> It's also a world where signals exist for all time. I doesn't matter >>>> how precisely one can sample and how often, nothing can be known >>>> about a speech yet to be given >>> >>> >>> If that is the case, then the speech signal is not bandlimited -- and >>> if that is the case, then you're talking about an entirely different >>> thing than I was talking about. >> >> >> I'm talking about precisely what you are. A signal that is truly >> bandlimited isn't time limited, and vice versa. In the real world, >> signals with finite duration can bandlimited well enough so that we >> can deal with them. > > > Absolutely. And the fact that we *want* to sample them uniformly > because there are endless arguments in favor of it (i.e., there is > an endless list of advantages from both the practical and theoretical > point of view) is an entirely different thing. > > When I read the subject of the thread, and the question asked by > the OP, it became more or less clear that we were dealing with the > theoretical/mathematical aspect as much as with the practical one. > > In the practical side, there's no question about it -- non-uniform > sampling is virtually an "absolute no-no".
I wouldn't go that far. I am ready to believe that a sampling that averages 2.5 times the signal's bandwidth, with no interval longer than 3 times the average, and each sample time "well enough" known allows accurate reconstruction of the original.
> But on the theoretical side, I find it extremely interesting (and > remarkable!) the results and conclusions that we can reach, even > if they seem unintuitive when contrasted with the practical side. > > (no, this is not a case of "in theory, there is no difference > between theory and practice, but in practice, there is" -- it's > simply a case of "this particular result from the theory does not > have a practical situation where it is really applicable") > >> But when one becomes pedantic about what is theoretically possible, on >> must be likewise aware of what is theoretically impossible. > > > Well, it's not really "pedantic" -- I see it more like a matter > of keeping in mind when some theoretical result has a direct > applicability in the practical world. After all, going back to > the roots, Calculus itself could be accused of "pedantic", in > that the real world is not really how Calculus models it (even > though in the case of Calculus, the *results* are nicely > correlated with the physical world, unlike this issue about > the non-uniform sampling taken to the extreme) > >>> But BTW, your argument does not really contradict my reasoning -- I did >>> not say (nor the conclusion I presented implies) that you can determine >>> the hour of speech before it was given. In fact, not even right after >>> it is given. To *fully* determine/reconstruct the continuous-time >>> speech signal you have to wait until "t = infinity" to be able to >>> reconstruct it... (t = infinity is obviously a figure of speech, to >>> simplify the issue that the signal is given by an infinite sum) >> >> >> According to the argument you gave, samples from near the end of a >> program can be moved to near the beginning, one at a time, without >> compromising the reconstructed signal. How long you must have to wait >> before the decoding is finished doesn't bear on the claim that you can >> reconstruct what was not sampled. Do I not understand what you claimed? > > > I'm not 100% sure... Maybe you do and you're assuming that I'm > assigning some practical value to it; but perhaps you misinterpreted > what I said. > > In the above paragraph, you talk about "samples from near the end of > a program can be moved to near the beginning" -- if by that you mean > the *sampling position* (as in, the value of t at which you take a > sample), then we seem to be in sync.
Yes.
> Let's say that we have a *perfectly bandlimited* signal between DC > and 0.499999999Hz, so that a sampling period of 1 second allows us > to reconstruct the signal. > > If you have an infinite set of samples of that signal, taken at > exactly .... -3s, -2s, -1s, 0s, 1s, 2s, 3s, ..... , then you can, > mathematically speaking, reconstruct the signal at all times, with > 100% accuracy. > > My claim (or rather, an example that illustrates my claim) is that > if you have all those samples and instead of taking a sample at > t = 0, you take one additional sample at t = -75.45627, you still > have enough information to reconstruct *exactly* the signal at all > values of t (again, mathematically speaking). > > Why? > > If you had all the values of x(t) at t = k seconds (with k integer), > then you could obtain x(-75.45627), right? (with the reconstruction > formula, using the infinite sum with sinc terms). The relationship > is linear; in particular, the relationship between x(-75.45627) and > x(0) is linear: > > x(-75.45627) = sinc(-75.45627) x(0) + B > > Where B is the rest of the infinite sum (all the terms except for > k = 0) > > So, that means that having x(-75.45627), you can obtain x(0) (since > we know B). But then, as soon as we have x(0), now the "standard" > sampling theorem tells us that the signal can be reconstructed > with 100% accuracy. > > What if instead of sampling x at t = 0 and at t = 1, you take two > additional samples, one at t = -75.45627, and another one at > t = -75.512348 ??). These two samples, x(-75.45627) and > x(-75.512348) are related to x(0) and x(1) by a linear relationship; > each one provides one equation; thus, if we want to obtain x(0) > and x(1), we just solve a system of linear equations -- two equations > for the two unknowns, x(0) and x(1). > > So, the argument can be extended -- if you do not take any sample > of the signal between t = 0 and t = 1000, and instead you take > samples at t = -0.9, -0.8999, -0.8998, .... and so on, every > tenth of a millisecond, until t = -0.8001, you end up with a > *solvable* system of 1000 linear equations for the 1000 unknowns, > x(0) to x(999). You *can* solve that system, obtain x(0) to x(999), > and now you can recover the signal for all values of t. > > Where do you find a flaw in the above reasoning? > > Notice that I would never say as little as half a word in defense > of the practical applicability of the above!! For one, the > example is taken to a ridiculous extreme of sensitivity to > numerical accuracy -- the samples taken a tenth of a millisecond > away of each other would lead to a matrix that is sooooooo close > to being singular that I guarantee that it would be next to > impossible to solve the system numerically with any *actual* > computer that we may have. > > But that still does not defeat the fact that *mathematically* > speaking, those samples provide sufficient information to > determine the values of the signal at every value of t. > > Again: provided that the signal is *truly bandlimited*, which > as we already agreed, implies that it is not time-limited (the > signal goes from -infinity to +infinity).
I hear you. Nevertheless, when theory predicts a known impossibility, not merely a counterintuitive result, we need a less simplistic theory. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Ron N. wrote:
> cs_post...@hotmail.com wrote: > >>>Ron N. wrote: >>> >>>>For this counterexample to work, the response of the lowpass filter >>>>for each sample would have to be over an hours worth of samples wide > > ... > >>to which Jerry Avins replied: >> >>>What if it's a request show and the second half-hour's music isn't known >>>until after the sampling stops? Suppose even that the program is known >>>in advance. Do you suggest that it might be possible to reconstruct the >>>last movement of Beethoven s 9th Symphony from a gross oversampling of >>>the first three? >> >>Yes, provided you pass the samples through the anti-causal low pass >>filter that Ron postulated. > > > It wouldn't have to be anti-causal. A symmetric low-pass FIR filter > with enough taps and bits of precision would work. Of course there > would be a significant filter delay (roughly the length of the entire > symphony) before you would see the first output samples.
I'd be happy to wait a whole week for a filter to compose the last movement of Beethoven's Ninth, given only the the first three. Think how much work (and time!) such a filter would have saved Beethoven himself! Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Jerry Avins wrote:

> I hear you. Nevertheless, when theory predicts a known impossibility, > not merely a counterintuitive result, we need a less simplistic theory.
Hmmm... I'd tend to disagree with this, but perhaps it'ssimply that we're expressing the same idea in different terms... I tend to see it more like a case where what the theory predicts has no analogy in the practical/real world. It's not really an impossibility, because no-one is talking about signals in the real world. So, it's not a matter of "predicting" something that we know is not possible; it's a matter of producing one result that is correct, but that does not represent any entity from our physical world. There are many cases like this, such as complex numbers (they have no entity in the real world that is *directly* represented by them), or even the basic Fourier analysis (which deals with the general case of signals that go from -infinity to +infinity), and sampling, which does require truly bandlimited signals (something that does not exist in our physical world). True: the difference is that all those theoretical results or concepts do have a direct application to real problems if we approximate things -- my example (at least the example taken to the extreme case) does not. Carlos --
Jerry Avins wrote:
  It wouldn't have to be anti-causal.  A symmetric low-pass FIR filter
>> with enough taps and bits of precision would work. Of course there >> would be a significant filter delay (roughly the length of the entire >> symphony) before you would see the first output samples. > > I'd be happy to wait a whole week for a filter to compose the last > movement of Beethoven's Ninth, given only the the first three. Think how > much work (and time!) such a filter would have saved Beethoven himself!
Now now now, Jerry... Why are you being silly? :-) Carlos --
lucy wrote:
> Hi all, > > Can non-uniform sampled signal be used to perfectly reconstruct the > original continuous time signal?
Well yes. Otherwise we wouldn't ask women and musicans that question.
> > What is the Nyquist sampling rate in the non-uniform case?
There is no sampling rate in the non-uniform case, that's why we always idiots like Dan Rather, 60 minutes, mathematicians, and DSP manufactures that question.
> > Thanks a lot! > > -L
Jerry Avins wrote:
> Ron N. wrote: > > cs_post...@hotmail.com wrote: > > > >>>Ron N. wrote: > >>> > >>>>For this counterexample to work, the response of the lowpass filter > >>>>for each sample would have to be over an hours worth of samples wide > > > > ... > > > >>to which Jerry Avins replied: > >> > >>>What if it's a request show and the second half-hour's music isn't known > >>>until after the sampling stops? Suppose even that the program is known > >>>in advance. Do you suggest that it might be possible to reconstruct the > >>>last movement of Beethoven s 9th Symphony from a gross oversampling of > >>>the first three? > >> > >>Yes, provided you pass the samples through the anti-causal low pass > >>filter that Ron postulated. > > > > > > It wouldn't have to be anti-causal. A symmetric low-pass FIR filter > > with enough taps and bits of precision would work. Of course there > > would be a significant filter delay (roughly the length of the entire > > symphony) before you would see the first output samples. > > I'd be happy to wait a whole week for a filter to compose the last > movement of Beethoven's Ninth, given only the the first three. Think how > much work (and time!) such a filter would have saved Beethoven himself!
How would the filter have saved any work? If fed a last movement of silence, that's what would be reproduced, given a few billion bits of precision per sample and a lowpass filter an equivalent number of dB down in the stop band. What you think is the first sample of the first movement, can't be correctly bandlimited to the precision required unless the low pass filter is fed the last sample of the last movement. IMHO. YMMV. -- rhn A.T nicholson d.O.t C-o-M
Jerry Avins wrote:
> Ron N. wrote: > > cs_post...@hotmail.com wrote: > > > >>>Ron N. wrote: > >>> > >>>>For this counterexample to work, the response of the lowpass filter > >>>>for each sample would have to be over an hours worth of samples wide > > > > ... > > > >>to which Jerry Avins replied: > >> > >>>What if it's a request show and the second half-hour's music isn't known > >>>until after the sampling stops? Suppose even that the program is known > >>>in advance. Do you suggest that it might be possible to reconstruct the > >>>last movement of Beethoven s 9th Symphony from a gross oversampling of > >>>the first three? > >> > >>Yes, provided you pass the samples through the anti-causal low pass > >>filter that Ron postulated. > > > > > > It wouldn't have to be anti-causal. A symmetric low-pass FIR filter > > with enough taps and bits of precision would work. Of course there > > would be a significant filter delay (roughly the length of the entire > > symphony) before you would see the first output samples. > > I'd be happy to wait a whole week for a filter to compose the last > movement of Beethoven's Ninth, given only the the first three. Think how > much work (and time!) such a filter would have saved Beethoven himself!
How would the filter have saved any work? If fed a last movement of silence, that's what would be reproduced, given a few billion bits of precision per sample and a lowpass filter an equivalent number of dB down in the stop band. What you think is the first sample of the first movement, can't be correctly bandlimited to the precision required unless the low pass filter is fed the last sample of the last movement. IMHO. YMMV. -- rhn A.T nicholson d.O.t C-o-M
Jerry Avins wrote:
> Ron N. wrote: > > cs_post...@hotmail.com wrote: > > > >>>Ron N. wrote: > >>> > >>>>For this counterexample to work, the response of the lowpass filter > >>>>for each sample would have to be over an hours worth of samples wide > > > > ... > > > >>to which Jerry Avins replied: > >> > >>>What if it's a request show and the second half-hour's music isn't known > >>>until after the sampling stops? Suppose even that the program is known > >>>in advance. Do you suggest that it might be possible to reconstruct the > >>>last movement of Beethoven s 9th Symphony from a gross oversampling of > >>>the first three? > >> > >>Yes, provided you pass the samples through the anti-causal low pass > >>filter that Ron postulated. > > > > > > It wouldn't have to be anti-causal. A symmetric low-pass FIR filter > > with enough taps and bits of precision would work. Of course there > > would be a significant filter delay (roughly the length of the entire > > symphony) before you would see the first output samples. > > I'd be happy to wait a whole week for a filter to compose the last > movement of Beethoven's Ninth, given only the the first three. Think how > much work (and time!) such a filter would have saved Beethoven himself!
How would the filter have saved any work? If fed a last movement of silence, that's what would be reproduced, given a few billion bits of precision per sample and a lowpass filter an equivalent number of dB down in the stop band. What you think is the first sample of the first movement, can't be correctly bandlimited to the precision required unless the low pass filter is fed the last sample of the last movement. IMHO. YMMV. -- rhn A.T nicholson d.O.t C-o-M
Jerry Avins wrote:
> Ron N. wrote: > > cs_post...@hotmail.com wrote: > > > >>>Ron N. wrote: > >>> > >>>>For this counterexample to work, the response of the lowpass filter > >>>>for each sample would have to be over an hours worth of samples wide > > > > ... > > > >>to which Jerry Avins replied: > >> > >>>What if it's a request show and the second half-hour's music isn't known > >>>until after the sampling stops? Suppose even that the program is known > >>>in advance. Do you suggest that it might be possible to reconstruct the > >>>last movement of Beethoven s 9th Symphony from a gross oversampling of > >>>the first three? > >> > >>Yes, provided you pass the samples through the anti-causal low pass > >>filter that Ron postulated. > > > > > > It wouldn't have to be anti-causal. A symmetric low-pass FIR filter > > with enough taps and bits of precision would work. Of course there > > would be a significant filter delay (roughly the length of the entire > > symphony) before you would see the first output samples. > > I'd be happy to wait a whole week for a filter to compose the last > movement of Beethoven's Ninth, given only the the first three. Think how > much work (and time!) such a filter would have saved Beethoven himself!
How would the filter have saved any work? If fed a last movement of silence, that's what would be reproduced, given a few billion bits of precision per sample and a lowpass filter an equivalent number of dB down in the stop band. What you think is the first sample of the first movement, can't be correctly bandlimited to the precision required unless the low pass filter is fed the last sample of the last movement. IMHO. YMMV. -- rhn A.T nicholson d.O.t C-o-M
Jerry Avins wrote:
> Ron N. wrote: > > cs_post...@hotmail.com wrote: > > > >>>Ron N. wrote: > >>> > >>>>For this counterexample to work, the response of the lowpass filter > >>>>for each sample would have to be over an hours worth of samples wide > > > > ... > > > >>to which Jerry Avins replied: > >> > >>>What if it's a request show and the second half-hour's music isn't known > >>>until after the sampling stops? Suppose even that the program is known > >>>in advance. Do you suggest that it might be possible to reconstruct the > >>>last movement of Beethoven s 9th Symphony from a gross oversampling of > >>>the first three? > >> > >>Yes, provided you pass the samples through the anti-causal low pass > >>filter that Ron postulated. > > > > > > It wouldn't have to be anti-causal. A symmetric low-pass FIR filter > > with enough taps and bits of precision would work. Of course there > > would be a significant filter delay (roughly the length of the entire > > symphony) before you would see the first output samples. > > I'd be happy to wait a whole week for a filter to compose the last > movement of Beethoven's Ninth, given only the the first three. Think how > much work (and time!) such a filter would have saved Beethoven himself!
How would the filter have saved any work? If fed a last movement of silence, that's what would be reproduced, given a few billion bits of precision per sample and a lowpass filter an equivalent number of dB down in the stop band. What you think is the first sample of the first movement, can't be correctly bandlimited to the precision required unless the low pass filter is fed the last sample of the last movement. IMHO. YMMV. -- rhn A.T nicholson d.O.t C-o-M