Reply by Stan Pawlukiewicz May 2, 20052005-05-02
Randy Yates wrote:
> Stan Pawlukiewicz <spam@spam.mitre.org> writes: > >>[...] >>A DFT is a matrix vector multiplication. I can express a filter in >>precisely the same terms. > > > Stan, humor me for a moment. > > A vector in the sense you refer to regarding the DFT is finite. A > vector for a "signal" may be in-finite. How *do* you go from one to > the other without trying to consider things like operating on a subset > of the signal, end effects due to truncation of the signal, etc., > which are all very pertinent to this discussion and not so necessarily > straight-forward to resolve?
An image is a finite object. Is there some reason that we can't filter one of these? Wrt to time, we can in theory have signals that extend to infinity in both directions but they are finite in practice. If you do the decimation correctly you can neglect start up and end transients in a decimated filter bank. If I have finite sequence of time samples stored away some place in memory, there is nothing that says you have to process it sequentially, particularly for non-recursive filter. There is nothing that requires a filter the same number of outputs as inputs. It can be a single point, as an example, the classic textbook replica correlator. There have been numerous posts in the past where people have taken the liberty of extending the DFT in the limit to infinite duration sequences. I don't recall anyone saying, "Can't do that, its not a DFT then, has to be finite". A matrix is an abstraction, there isn't anything that says you can't consider one, as its dimension approaches infinity.
Reply by May 2, 20052005-05-02
Stan Pawlukiewicz <spam@spam.mitre.org> writes:
> [...] > A DFT is a matrix vector multiplication. I can express a filter in > precisely the same terms.
Stan, humor me for a moment. A vector in the sense you refer to regarding the DFT is finite. A vector for a "signal" may be in-finite. How *do* you go from one to the other without trying to consider things like operating on a subset of the signal, end effects due to truncation of the signal, etc., which are all very pertinent to this discussion and not so necessarily straight-forward to resolve? -- Randy Yates Sony Ericsson Mobile Communications Research Triangle Park, NC, USA randy.yates@sonyericsson.com, 919-472-1124
Reply by Jerry Avins May 2, 20052005-05-02
Stan Pawlukiewicz wrote:

   ...

> A DFT is a matrix vector multiplication. I can express a filter in > precisely the same terms.
And the motion of a planet in its orbit, and the polymerization of isoprene, and ... Lot's of food for thought there! Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Reply by Stan Pawlukiewicz May 2, 20052005-05-02
Bob Cain wrote:
> > > Stan Pawlukiewicz wrote: > >>> But, nonetheless, there is a rate involved. In the same sense, what >>> is the rate of a DFT? >> >> >> >> Depends on how often you use it. > > > How about once? > >> What's the rate on filtering a single block of data in memory? >> Fundamentally this is semantics. > > > Not at all! The most common use is the one-off because it contains the > information relevant to many analyses. Of what use is one cycle of what > is usually called a filter? > > While you can construct a filter bank of sorts from sequential DFTs if > you are so inclined, the DFT operation itself is not a filter, it's a > domain transformation. Do filters transform domains?
A DFT is a matrix vector multiplication. I can express a filter in precisely the same terms. What's the distinction between an invertible mapping of a metric space and a transform? Isn't a matched filter a projection of an input onto a particular waveform? None that I've
> seen do that; what comes in is time domain and what comes out is time > domain.
Perhaps you should equate yourself with Bacon's idols.
> >> Do you actually have a mathematical argument? > > > For what?
The distinction between a mapping and a transform, What else?
> >> Can you find a book that disagrees with Strang's? > > > Why? I can think for myself.
So you disagree with Strang.
> > > Bob
Reply by Bob Cain May 2, 20052005-05-02

Stan Pawlukiewicz wrote:

>> But, nonetheless, there is a rate involved. In the same sense, what >> is the rate of a DFT? > > > Depends on how often you use it.
How about once?
> What's the rate on filtering a single > block of data in memory? Fundamentally this is semantics.
Not at all! The most common use is the one-off because it contains the information relevant to many analyses. Of what use is one cycle of what is usually called a filter? While you can construct a filter bank of sorts from sequential DFTs if you are so inclined, the DFT operation itself is not a filter, it's a domain transformation. Do filters transform domains? None that I've seen do that; what comes in is time domain and what comes out is time domain.
> Do you > actually have a mathematical argument?
For what?
> Can you find a book that > disagrees with Strang's?
Why? I can think for myself. Bob -- "Things should be described as simply as possible, but no simpler." A. Einstein
Reply by Stan Pawlukiewicz April 27, 20052005-04-27
Bob Cain wrote:
> > > Stan Pawlukiewicz wrote: > >> Multirate filters generalize filters so that the number of input >> points don't have to equal the number of output points. > > > But, nonetheless, there is a rate involved. In the same sense, what is > the rate of a DFT?
Depends on how often you use it. What's the rate on filtering a single block of data in memory? Fundamentally this is semantics. Do you actually have a mathematical argument? Can you find a book that disagrees with Strang's?
> >> I don't think Bob asked any question. > > > We agree on that much. :-) > > > Bob
Reply by Bob Cain April 27, 20052005-04-27

Stan Pawlukiewicz wrote:

> Multirate filters generalize filters so that the number of input points > don't have to equal the number of output points.
But, nonetheless, there is a rate involved. In the same sense, what is the rate of a DFT?
> I don't think Bob asked any question.
We agree on that much. :-) Bob -- "Things should be described as simply as possible, but no simpler." A. Einstein
Reply by Stan Pawlukiewicz April 25, 20052005-04-25
Randy Yates wrote:
> Stan Pawlukiewicz <spam@spam.mitre.org> writes: > > >>Bob Cain wrote: >> >>>Stan Pawlukiewicz wrote: >> >>>>Beg to differ, but it has been shown in the literature that the DFT >>>>is indeed a special case of a multirate filter bank. >> >>>We've had this argument here before and I still can't agree. Each >>>point of a DFT is an inner product of some number of cycles of a >>>sinusoid with a sequence of data points. It is a static computation >>>on a sequence of data points. A filter produces output continuously >>>in response to input presented continuously. They could hardly be >>>different so far as I can see. >> >>>OTOH if the DFT was computed anew for each new sample throwing away >>>the oldest in the sequence, then each point of the DFT is in fact a >>>filter output with the coeficients being a sinusoid. But to say >>>that a one shot DFT is intrinsically a filter seems totally wrong to >>>me. >> >>>I'm curious as to what kind of filter an FIR with coeficients taken >>>from a sinuoid actually is. Never heard of one being used per se. >> >>>Bob >> >> >>Consider the title of chapter 6 of Elliot and Rao's "Fast Transforms, >>Algorithms, Analysis,and Applications", Academic Press, 1982, "DFT >>FIlter shapes and Shaping". You can look at Gilbert Strang's book on >>wavelets where in the introduction, he points out that filters can be >>expressed as Matrix vector products. A waveneumber filter can have a >>single output. I can make a replica correlator out of a matched >>filter sampled at a single point. Does sampling the matched filter at >>a single point unmake it as a matched-filter? >> >> >>You're free to believe what you want but I can show you books and >>articles that interperet the DFT a special sort of multirate filter >>bank. Show me books or articles that say a DFT is in no circumstance >>a filter. > > > Hi Stan, > > I agree with you, but I think you're leaving out a few details. Namely, > how DOES one process an indefinite stream of input data with the N-point DFT to provide > N indefinite streams of output data? Is the DFT taken every sample? Every N/2 > samples? Every N samples? What? I think this is the question Bob is asking, > and as I've only "heard" the "DFT is a filterbank" argument and not seen it > operate in action, I'd like to know the answer as well.
Multirate filters generalize filters so that the number of input points don't have to equal the number of output points. I don't know what you mean by "indefinite". I don't think Bob asked any question. IMHO, he voiced the opinion that filters necessarily involve streaming sequences of data. I think filters are a bit more general. In image processing, people use filters without the concept of a sequential stream. You make a output pixel by operating on a set of input pixels. I don't see any stream or natural ordering being necessary on the input side. Consider the FILTFILT function in matlab. You put M points in and you get M points out. They use a trick so that the causal and anti-causal passes cancel out the startup and ending transients. Is FILTFILT a filter?, after all since filtering is convolution and the convolution of an IIR filter with a finite sequence is necessarily an infinite sequence, it cannot be, or do we note that we don't really care about the zeros appended the to the front and back of the sequence that don't matter.
Reply by ben April 25, 20052005-04-25
i asked about a comparison (differences/similarities/pros/cons) between
two methods: 1. amdf/comb filtering, 2. fft/fourier transforms, for
achieving the same goal: splitting sound into various frequency bands
throughout the sound (like a graphic equaliser in hifi's).

i think a reasonably correct comparison/comment is: there's not a lot
of difference between the results that the two methods can provide,
assuming a good implemention of both. the results from carrying out
either method to accomplish the goal aren't destined to be inherently
different by choosing one of the mentioned methods as opposed to the
other? (from an end results point of view that is).

i know Benry asnwered that (thanks Benry), and sorry to go on, but it'd
be great to get confirmation of that if possible?

thanks very much, ben.


p.s. i now realise that amdf isn't different or more than comb
filtering at all (which is i thought and said earlier) -- they're the
same thing.
Reply by April 25, 20052005-04-25
Stan Pawlukiewicz <spam@spam.mitre.org> writes:

> Bob Cain wrote: > > Stan Pawlukiewicz wrote: > > > > > >> Beg to differ, but it has been shown in the literature that the DFT > >> is indeed a special case of a multirate filter bank. > > > We've had this argument here before and I still can't agree. Each > > point of a DFT is an inner product of some number of cycles of a > > sinusoid with a sequence of data points. It is a static computation > > on a sequence of data points. A filter produces output continuously > > in response to input presented continuously. They could hardly be > > different so far as I can see. > > > OTOH if the DFT was computed anew for each new sample throwing away > > the oldest in the sequence, then each point of the DFT is in fact a > > filter output with the coeficients being a sinusoid. But to say > > that a one shot DFT is intrinsically a filter seems totally wrong to > > me. > > > I'm curious as to what kind of filter an FIR with coeficients taken > > from a sinuoid actually is. Never heard of one being used per se. > > > Bob > > > Consider the title of chapter 6 of Elliot and Rao's "Fast Transforms, > Algorithms, Analysis,and Applications", Academic Press, 1982, "DFT > FIlter shapes and Shaping". You can look at Gilbert Strang's book on > wavelets where in the introduction, he points out that filters can be > expressed as Matrix vector products. A waveneumber filter can have a > single output. I can make a replica correlator out of a matched > filter sampled at a single point. Does sampling the matched filter at > a single point unmake it as a matched-filter? > > > You're free to believe what you want but I can show you books and > articles that interperet the DFT a special sort of multirate filter > bank. Show me books or articles that say a DFT is in no circumstance > a filter.
Hi Stan, I agree with you, but I think you're leaving out a few details. Namely, how DOES one process an indefinite stream of input data with the N-point DFT to provide N indefinite streams of output data? Is the DFT taken every sample? Every N/2 samples? Every N samples? What? I think this is the question Bob is asking, and as I've only "heard" the "DFT is a filterbank" argument and not seen it operate in action, I'd like to know the answer as well. -- Randy Yates Sony Ericsson Mobile Communications Research Triangle Park, NC, USA randy.yates@sonyericsson.com, 919-472-1124