Re: Phaeless filtering
- From: "Fred Marshall" <fmarshallx@xxxxxxxxxxxxxxxxxxxx>
- Date: Fri, 29 Jul 2005 12:34:50 -0700
"Jerry Avins" <jya@xxxxxxxx> wrote in message
news:9_OdnRi-UfH2v3ffRVn-tw@xxxxxxxxxx
> Jim Adamthwaite wrote:
>> As a low-math jack-of-all-trades, when the July 2005 DspStore monthly
>> newsletter
>>
>> http://www.dspstore.com/$Newsletter/e-newsletters/July2005.asp?ID=41294#
>>
>> arrived by email with an article
>>
>> "TechOnLine - Digital Filters An Introduction"
>>
>> at http://www.techonline.com/community/related_content/20365
>>
>> by Iain A. Robin which explained the shape of the maths for common
>> filters,
>> I was much impressed. Perhaps nobody has said it so clearly because
>> "everyone knows that". Interested, I followed the link to his site
>>
>> http://www.dsptutor.freeuk.com/
>>
>> which directed me to
>>
>> http://www.prosig.com/signal-processing/
>>
>> where an article
>>
>> http://www.prosig.com/signal-processing/PhaselessFiltering.html
>>
>> "REMOVING PHASE DELAY USING PHASELESS FILTERING"
>>
>> by running a file of samples thru a filter, then running the resulting
>> sample file thru the filter in reverse sample order to flatten group
>> delay.
>>
>>
>> What a preamble. I hope credit is given to the correct parties.
>>
>> Now, the question is, could something like this process be achieved in
>> relatively real-time? I vaguely envisage small overlapped reverse
>> scanned
>> buffers with windowing to reduce glitch artefacts. This of course is a
>> rather mechanical approach, a more elegant mathematical solution is to be
>> preferred.
>>
>> Possibly some limitations on filter complexity or passband & stopband
>> shape
>> may have to be accepted.
>>
>> I am uncertain of the complexity level, but imagine it to be similar to
>> the
>> better music time-stretch/pitch shift algorithms, a good example of which
>> is
>> to be found in the "Amazing Slow Downer" at http://www.ronimusic.com.
>> Worth
>> a test.
>>
>> I think that technique for phaseless filtering, once invented, would
>> become
>> a significant DSP function block which would sit up there near FFT's.
>>
>> Comments?
>> Jim Adamthwaite.
>
> The filters used are IIR: infinite impulse response. Infinite only in
> theory, though. In practice, the output of a stable filter decays
> asymptotically to zero with zero input, and after a while becomes smaller
> than can be represented. At that point, the response ends (assuming no
> limit cycle). To avoid messing up the signal, you need to include that
> tail in the reverse-direction filtering operation. There are other
> difficulties, but that alone rules out real time.
>
> There is a simple alternative, though: a symmetrical FIR -- finite impulse
> response -- filter. They have no phase distortion either.
>
> Jerry
I might describe what's in that reference as follows:
1) Filter a block of data using an IIR filter.
2) Filter the resulting output in reverse direction through the same IIR
filter.
In order to do this, you need to decide when the output of the filter
"stops" relative to the size of the input block. Otherwise, you will
compute forever and wait forever.
Having made the decision when the output stops, you have defined a FIR
filter that has a truncated version of the IIR filter.
Since there were no constraints mentioned regarding the IIR filter and
because IIR filters don't normally have linear phase / constant delay with
frequency, running the output in the opposite direction through the
so-defined FIR filter is the same as running the output straight through a
reversed version of the FIR filter EXCEPT in the first case the output is
reversed relative to the original input. So, you might want to reverse the
filter instead of the data.
If you reverse the filter instead of the data for the second pass, then it's
as though there are two FIR filters in series. This suggests that you might
combine their impulse responses into a single impulse response. Assuming
that the impulse response decays then you might want to put the reversed
filter first, followed by the original - in order to get a more "well
behaved" impulse response. Either way, it becomes a symmetrical FIR filter
that has linear phase and *does* have delay in the normal way of defining
delay.
If you want to define the reversed precursor part of the filter output as
happening at negative times then you can define the filter as having zero
delay. That's up to your own convention for assigning time indices.
Fred
.
- Follow-Ups:
- Re: Phaeless filtering
- From: robert bristow-johnson
- Re: Phaeless filtering
- References:
- Phaeless filtering
- From: Jim Adamthwaite
- Re: Phaeless filtering
- From: Jerry Avins
- Phaeless filtering
- Prev by Date: Re: OT Shuttle insulation
- Next by Date: Re: OT Shuttle insulation
- Previous by thread: Re: Phaeless filtering
- Next by thread: Re: Phaeless filtering
- Index(es):
Relevant Pages
|
Loading