🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.dsp
Article #1470

resampling problem

#1470
From: Steve Nuchia
Date: Wed, 13 Feb 1991 23:45
120 lines
6439 bytes
-2) This (comp.dsp) seems to be the best place.  Redirection welcome.
sci.math added as an afterthought just in case somebody there finds
this interesting or happens to know the answer.

-1) I am not a regular reader of comp.dsp (one can only read
so many things) so I would appreciate mailed responses.
I do subscribe to sci.math, but haven't been able to keep
up recently.

0) I'm doing consulting for a corporate client -- I don't expect
a lot of free help here.  Pointers to accessible literature will
be gratefully followed up.

1) I'm a senior EE student with 7 years professional software
(ahem) engineering and consulting experience.  I've had basicly
only the cartoon version of digital filtering: the second semester
linear systems course covering discrete time Fourier theory and such.

2) I'm trying to analyse the following situation:

	A package of measureing instruments (we can assume the
	singular without loss of generality) traverses some
	physical environment at an unregulated speed, with
	its position indirectly measured.  It is traditional
	in this industry to ignore the slop in the mechanical
	system and use the indicated position for downstream
	processing directly.  Let us accept this simplification
	for this discussion, as it is orthogonal to the main point.

	The instruments are sampled at intervals.  Some instruments
	are designed for fixed-frequency sampling, others are sampled
	on a temporal basis for historical reasons, and still others
	are sampled on a very roughly spacial basis (first opportunity
	following floor(pos/interval) changes, usually).

	The underlying phenomena are assumed to be spacially band-limited.

	Output samples of an estimate of the underlying phenomena are
	required at regular spacial intervals, in real time (but a
	constant lag is OK -- phase linear filters and all that)

	I want to understand the theory well enough to make a sound
	recomendation on the design of digital filters (to be implemented
	on a general purpose CPU in real time) to compute the estimate samples
	from the available sample data.

3) Is this a well-studied problem?  If so, a reference should be all I need.

4) If not, I would appreciate any advice on how to procede.  The following
no-doubt-amateurish remarks are my thoughts to date.  If they are not
completely bogus, perhaps someone could give some advice on how to
tighten it up?  I have to admit to posting this before taking the math
as far as I could, but I'm trying to avoid having to do all those
transforms :-(

Anyway, I'm thinking of proceeding like this:  Normalize all cases
to depth-referenced samples on a fine (high spacial frequency) comb.
The synthetic sampling spacial frequency would be selected based on
the output spacial frequency -- say 2x? 1x? 4x?

Actual samples will be scattered randomly about in any given filtering
window.  Let us model this as multiplication of a hypothetical ideal
sampling of the input at the synthetic frequency with a (Poisson-distributed,
I suppose.  Not important yet) random unit impulse comb.

If we consider the random comb (ie, the jitter filter) and the
low-pass filter as acting on the ideal input we get a mess, since
its DC gain, if nothing else, will be all over the map.  By convolving
the jitter comb itself with the LPF function we can get a number
measuring (at least in some sense) that mess.  In particular, that
number will be the DC gain of the composed filter.  There will be
other distortions not capturable in a single scalar of course.

Assuming that the jitter comb points are sufficiently dense and uniform
it would seem that normalizing the output wrt the DC gain estimate would
be a reasonable thing to do.

An alternate approach would be to do an LPF on the temporal axis and use
interpolated samples of its output as spacial samples.  This would seem
to be essentially the same analysis except that the properties (in the
filtering domain) of the jitter comb would be much more stable (less
dependent on the instrument velocity).  The problem with this approach
is that the *spacial* cutoff frequency of the filtering process would
then depend on the velocity.

Actually that last may be the desired behaviour, but let us assume
it is not.  (A colleague is working on the physics of both the
phenomena and the transucer behaviour to answer that
question.)  One could dynamically adjust the implicit scale of the
FIR function, withing limits, to at least partially compensate for
changes in instrument velocity.  Does cutoff frequency tweaking by
stride modulation in a FIR lookup table work OK, or would it be
better for instance to "autorange" among a set of filter tables?  Or
is there a good fast way of doing the convolution without using
a lookup table?

Am I even asking the right questions?  Should I be thinking IIR?
Should I just hook the plotter up to a canned demo data stream?  [:-)]

Using a sample-hold approach might seem simpler, and it is in fact
essentially what the existing system is using (along with really
gross causal filters).  The problem is that if one wants to use
higher order filters and properly account for jitter, the number of
points in the convolution climbs rapidly, and we only have so much
CPU to spend.  The comb-compensation mechanism proposed above uses
all samples, allows for high-order (low quantization noise) underlying
filter functions, and runs in time proportional to the number of
available samples in the window.

5) Finally, if this isn't well studied, is it worth writing up?  :-)
Anybody with a stronger math background want to co-author?  Any Rice
people on these lists want to straighten me out over some expense-account
suds?

Thanks, all.
-- 
Steve Nuchia	      South Coast Computing Services      (713) 964-2462
	"Innocence is a splendid thing, only it has the misfortune
	 not to keep very well and to be easily misled."
	    --- Immanuel Kant,  Groundwork of the Metaphysic of Morals
Technical Details
Message-ID: <1991Feb13.234510.22488@nuchat.sccsi.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!nuchat!steve

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!nuchat!steve
From: steve@nuchat.sccsi.com (Steve Nuchia)
Newsgroups: comp.dsp,sci.math
Subject: resampling problem
Message-ID: <1991Feb13.234510.22488@nuchat.sccsi.com>
Date: 13 Feb 91 23:45:10 GMT
Sender: steve@nuchat.sccsi.com (Steve Nuchia)
Organization: South Coast Computing Services, Inc.  Houston
Lines: 120