f



group delay DC filter

Dear all,

My task is to implement a very narrow high pass filter to remove a DC
offset of a signal. So the cut off frequency of the filter is very low. The
filter must be linear phase.

A first implementation was made using a double cascaded moving average
filter. The filter seems to do its job very well. Unfortunately the group
delay of the filter is too large.

I have read some articles on multi rate filtering. Although I the feeling
I could use this to find a filter with a shorter group delay most articles
point out that multi rate filtering is not used to lessen the group delay. 


Let's say I have a signal X at sample rate Fs. 

1. I split the signal in two new signals Xlowpass and Xhighpass by
applying a low and high pass filter with a cutoff of about Fs/4. 
2. Because Xlowpass does not contain any frequencies above Fs/4 I can
downsample the signal Xlowpass without aliasing in a resulting signal
Xdown. 
3. Now I can find a low pass filter to do the original DC filtering at
this lower rate on the signal Xdown. The DC filter will have to be less
narrow resulting in a lower group delay.
4. After the DC filtering I can upsample the signal Xdown and add the high
frequency part Xhighpass to get the final signal but now DC filtered. 

Maybe someone can point out why this will not work. An alternative idea to
lessen the group delay of the DC filter would also be greatly appreciated.

Regards,
Dinne


0
dinne (2)
1/7/2009 2:56:29 PM
comp.dsp 20333 articles. 1 followers. allnor (8509) is leader. Post Follow

7 Replies
355 Views

Similar Articles

[PageSpeed] 30


Dinne wrote:

> Dear all,
> 
> My task is to implement a very narrow high pass filter to remove a DC
> offset of a signal. So the cut off frequency of the filter is very low. The
> filter must be linear phase.
> 
> A first implementation was made using a double cascaded moving average
> filter. The filter seems to do its job very well. Unfortunately the group
> delay of the filter is too large.

Too, very, well, seems, good, bad, high, low... those words express your 
attitude but tell no information. Engineers use the numbers. The group 
delay in your filter can't be smaller then 1/cutoff frequency, regadless 
of the sample rate and the method of the implementation. This is a 
physical limit.


Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com
0
1/7/2009 3:26:28 PM
On Wed, 07 Jan 2009 08:56:29 -0600, Dinne wrote:

> Dear all,
> 
> My task is to implement a very narrow high pass filter to remove a DC
> offset of a signal. So the cut off frequency of the filter is very low.
> The filter must be linear phase.
> 
> A first implementation was made using a double cascaded moving average
> filter. The filter seems to do its job very well. Unfortunately the
> group delay of the filter is too large.
> 
> I have read some articles on multi rate filtering. Although I the
> feeling I could use this to find a filter with a shorter group delay
> most articles point out that multi rate filtering is not used to lessen
> the group delay.
> 
> 
> Let's say I have a signal X at sample rate Fs.
> 
> 1. I split the signal in two new signals Xlowpass and Xhighpass by
> applying a low and high pass filter with a cutoff of about Fs/4. 2.
> Because Xlowpass does not contain any frequencies above Fs/4 I can
> downsample the signal Xlowpass without aliasing in a resulting signal
> Xdown.
> 3. Now I can find a low pass filter to do the original DC filtering at
> this lower rate on the signal Xdown. The DC filter will have to be less
> narrow resulting in a lower group delay. 4. After the DC filtering I can
> upsample the signal Xdown and add the high frequency part Xhighpass to
> get the final signal but now DC filtered.
> 
> Maybe someone can point out why this will not work. An alternative idea
> to lessen the group delay of the DC filter would also be greatly
> appreciated.
> 
> Regards,
> Dinne

Combine "Narrow band" with "linear phase" and you get "big delay".  Why?  
Because the delay of the filter is going to be inversely proportional to 
the width of the band -- and your delay is probably going to be on the 
order of one to three times the reciprocal of the frequency.

So unless the "too big" phase delay threshold is longer than 1/bandwidth, 
you have to ditch the linear phase requirement.

So: why do you think you need linear phase?  Do you need _absolutely_ 
linear phase, or can you stand having some phase oddities close to the 
notch?

Etc.

-- 

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Do you need to implement control loops in software?
"Applied Control Theory for Embedded Systems" gives you just what it says.
See details at http://www.wescottdesign.com/actfes/actfes.html
0
tim8767 (60)
1/7/2009 3:53:19 PM
On Jan 7, 10:56=A0pm, "Dinne" <di...@bluemelon.org> wrote:
> Dear all,
>
> My task is to implement a very narrow high pass filter to remove a DC
> offset of a signal. So the cut off frequency of the filter is very low. T=
he
> filter must be linear phase.
>
> A first implementation was made using a double cascaded moving average
> filter. The filter seems to do its job very well. Unfortunately the group
> delay of the filter is too large.
>
> I have read some articles on multi rate filtering. Although I the feeling
> I could use this to find a filter with a shorter group delay most article=
s
> point out that multi rate filtering is not used to lessen the group delay=
..
>
> Let's say I have a signal X at sample rate Fs.
>
> 1. I split the signal in two new signals Xlowpass and Xhighpass by
> applying a low and high pass filter with a cutoff of about Fs/4.
> 2. Because Xlowpass does not contain any frequencies above Fs/4 I can
> downsample the signal Xlowpass without aliasing in a resulting signal
> Xdown.
> 3. Now I can find a low pass filter to do the original DC filtering at
> this lower rate on the signal Xdown. The DC filter will have to be less
> narrow resulting in a lower group delay.
> 4. After the DC filtering I can upsample the signal Xdown and add the hig=
h
> frequency part Xhighpass to get the final signal but now DC filtered.
>
> Maybe someone can point out why this will not work. An alternative idea t=
o
> lessen the group delay of the DC filter would also be greatly appreciated=
..
>
> Regards,
> Dinne

How many DC removal questions does that make this week? :-)  You are
almost certainly making the problem too hard by looking for strict
compliance with the idea of linear phase, instead of being pragmatic.

Estimate the DC, which you can do with a single noise shaped pole. You
can make the bandwidth incredibly narrow, provided you can tolerate
the long settling time. Once you have a steady DC estimate, you can
just subtract it from the signal. Is it linear phase? No, but you can
get it so damned close it won't matter in most applications. You can
easily make the estimator so narrow band that is has almost no effect
of any kind at all within the band of interest.

Regards,
Steve
0
steveu1 (275)
1/7/2009 4:24:53 PM

steveu@coppice.org wrote:


> How many DC removal questions does that make this week? :-)  You are
> almost certainly making the problem too hard by looking for strict
> compliance with the idea of linear phase, instead of being pragmatic.

But everybody knows that the nonlinear phase produces the artifacts, and 
that the IIR filters are unstable :)

VLV


0
1/7/2009 4:39:12 PM
On 7 Jan., 17:24, ste...@coppice.org wrote:
> On Jan 7, 10:56=A0pm, "Dinne" <di...@bluemelon.org> wrote:
>
>
>
>
>
> > Dear all,
>
> > My task is to implement a very narrow high pass filter to remove a DC
> > offset of a signal. So the cut off frequency of the filter is very low.=
 The
> > filter must be linear phase.
>
> > A first implementation was made using a double cascaded moving average
> > filter. The filter seems to do its job very well. Unfortunately the gro=
up
> > delay of the filter is too large.
>
> > I have read some articles on multi rate filtering. Although I the feeli=
ng
> > I could use this to find a filter with a shorter group delay most artic=
les
> > point out that multi rate filtering is not used to lessen the group del=
ay.
>
> > Let's say I have a signal X at sample rate Fs.
>
> > 1. I split the signal in two new signals Xlowpass and Xhighpass by
> > applying a low and high pass filter with a cutoff of about Fs/4.
> > 2. Because Xlowpass does not contain any frequencies above Fs/4 I can
> > downsample the signal Xlowpass without aliasing in a resulting signal
> > Xdown.
> > 3. Now I can find a low pass filter to do the original DC filtering at
> > this lower rate on the signal Xdown. The DC filter will have to be less
> > narrow resulting in a lower group delay.
> > 4. After the DC filtering I can upsample the signal Xdown and add the h=
igh
> > frequency part Xhighpass to get the final signal but now DC filtered.
>
> > Maybe someone can point out why this will not work. An alternative idea=
 to
> > lessen the group delay of the DC filter would also be greatly appreciat=
ed.
>
> > Regards,
> > Dinne
>
> How many DC removal questions does that make this week? :-) =A0You are
> almost certainly making the problem too hard by looking for strict
> compliance with the idea of linear phase, instead of being pragmatic.
>
> Estimate the DC, which you can do with a single noise shaped pole. You
> can make the bandwidth incredibly narrow, provided you can tolerate
> the long settling time. Once you have a steady DC estimate, you can
> just subtract it from the signal. Is it linear phase? No, but you can
> get it so damned close it won't matter in most applications.

It's a trick for DC removal that can actually be easily tuned (almost)
continually from perfect linear-phase response to minimum-phase
response. Imagine a linear-phase DC estimation filter (a narrowband
lowpass), for example given by the impulse response

h_1 =3D 1/N [1 1 .... 1] (N ones).

If N is odd, you can subtract the ouptut from the appropriately
delayed input to make a linear-phase DC blocking filter. This gives

h_2 =3D 1/N [-1 -1 ... -1  (N-1)/N  -1 ... -1] (N taps).
                            ^
                            |
                        middle tap

By moving the middle tap value forwards in the impulse response, the
input signal gets delayed less relative to the output of the linear-
phase lowpass DC estimation filter. However, because the symmetry is
broken, the resulting DC blocking filter won't be linear-phase (even
though the DC estimation filter is linear phase). By moving the middle
tap value all the way to the beginning, we get a minimum-phase DC
blocking FIR filter:

h_3 =3D 1/N [(N-1)/N -1 -1 ... -1] (N taps).

This trick can be done with any other linear-phase DC estimation
filter (lowpass) to get better frequency response. Using the boxcar
filter results in quite a rippley frequency response (but it is very
efficient to compute for arbitrary N, one just needs the memory).

               +------+         -   /---\
x -----+------>| h_1  |----------->|  +  |------> y
       |       +------+             \---/
       |                              |
       |       +------+               |
       +------>| z^-k |---------------+
               +------+

y =3D h_3 * x

Adjusting the delay "k" from (N-1)/N to 0 to crossfade from linear- to
minimum-phase DC blocking filter.

Regards,
Andor
0
andor.bariska (1307)
1/7/2009 9:03:19 PM
>On 7 Jan., 17:24, ste...@coppice.org wrote:
>> On Jan 7, 10:56=A0pm, "Dinne" <di...@bluemelon.org> wrote:
>>
>>
>>
>>
>>
>> > Dear all,
>>
>> > My task is to implement a very narrow high pass filter to remove a
DC
>> > offset of a signal. So the cut off frequency of the filter is very
low.=
> The
>> > filter must be linear phase.
>>
>> > A first implementation was made using a double cascaded moving
average
>> > filter. The filter seems to do its job very well. Unfortunately the
gro=
>up
>> > delay of the filter is too large.
>>
>> > I have read some articles on multi rate filtering. Although I the
feeli=
>ng
>> > I could use this to find a filter with a shorter group delay most
artic=
>les
>> > point out that multi rate filtering is not used to lessen the group
del=
>ay.
>>
>> > Let's say I have a signal X at sample rate Fs.
>>
>> > 1. I split the signal in two new signals Xlowpass and Xhighpass by
>> > applying a low and high pass filter with a cutoff of about Fs/4.
>> > 2. Because Xlowpass does not contain any frequencies above Fs/4 I
can
>> > downsample the signal Xlowpass without aliasing in a resulting
signal
>> > Xdown.
>> > 3. Now I can find a low pass filter to do the original DC filtering
at
>> > this lower rate on the signal Xdown. The DC filter will have to be
less
>> > narrow resulting in a lower group delay.
>> > 4. After the DC filtering I can upsample the signal Xdown and add the
h=
>igh
>> > frequency part Xhighpass to get the final signal but now DC
filtered.
>>
>> > Maybe someone can point out why this will not work. An alternative
idea=
> to
>> > lessen the group delay of the DC filter would also be greatly
appreciat=
>ed.
>>
>> > Regards,
>> > Dinne
>>
>> How many DC removal questions does that make this week? :-) =A0You are
>> almost certainly making the problem too hard by looking for strict
>> compliance with the idea of linear phase, instead of being pragmatic.
>>
>> Estimate the DC, which you can do with a single noise shaped pole. You
>> can make the bandwidth incredibly narrow, provided you can tolerate
>> the long settling time. Once you have a steady DC estimate, you can
>> just subtract it from the signal. Is it linear phase? No, but you can
>> get it so damned close it won't matter in most applications.
>
>It's a trick for DC removal that can actually be easily tuned (almost)
>continually from perfect linear-phase response to minimum-phase
>response. Imagine a linear-phase DC estimation filter (a narrowband
>lowpass), for example given by the impulse response
>
>h_1 =3D 1/N [1 1 .... 1] (N ones).
>
>If N is odd, you can subtract the ouptut from the appropriately
>delayed input to make a linear-phase DC blocking filter. This gives
>
>h_2 =3D 1/N [-1 -1 ... -1  (N-1)/N  -1 ... -1] (N taps).
>                            ^
>                            |
>                        middle tap
>
>By moving the middle tap value forwards in the impulse response, the
>input signal gets delayed less relative to the output of the linear-
>phase lowpass DC estimation filter. However, because the symmetry is
>broken, the resulting DC blocking filter won't be linear-phase (even
>though the DC estimation filter is linear phase). By moving the middle
>tap value all the way to the beginning, we get a minimum-phase DC
>blocking FIR filter:
>
>h_3 =3D 1/N [(N-1)/N -1 -1 ... -1] (N taps).
>
>This trick can be done with any other linear-phase DC estimation
>filter (lowpass) to get better frequency response. Using the boxcar
>filter results in quite a rippley frequency response (but it is very
>efficient to compute for arbitrary N, one just needs the memory).
>
>               +------+         -   /---\
>x -----+------>| h_1  |----------->|  +  |------> y
>       |       +------+             \---/
>       |                              |
>       |       +------+               |
>       +------>| z^-k |---------------+
>               +------+
>
>y =3D h_3 * x
>
>Adjusting the delay "k" from (N-1)/N to 0 to crossfade from linear- to
>minimum-phase DC blocking filter.
>
>Regards,
>Andor
>

Dear all,

Thank you all for your extensive answers. Apparently it is possible to get
a much lower group delay if I relax the linear phase constraint. I will
check what consequences this will have on the output of the system.

Regards,
Dinne 
0
dinne (2)
1/7/2009 9:22:58 PM
On Jan 8, 3:56=A0am, "Dinne" <di...@bluemelon.org> wrote:
> Dear all,
>
> My task is to implement a very narrow high pass filter to remove a DC
> offset of a signal. So the cut off frequency of the filter is very low. T=
he
> filter must be linear phase.
>
> A first implementation was made using a double cascaded moving average
> filter. The filter seems to do its job very well. Unfortunately the group
> delay of the filter is too large.
>
> I have read some articles on multi rate filtering. Although I the feeling
> I could use this to find a filter with a shorter group delay most article=
s
> point out that multi rate filtering is not used to lessen the group delay=
..
>
> Let's say I have a signal X at sample rate Fs.
>
> 1. I split the signal in two new signals Xlowpass and Xhighpass by
> applying a low and high pass filter with a cutoff of about Fs/4.
> 2. Because Xlowpass does not contain any frequencies above Fs/4 I can
> downsample the signal Xlowpass without aliasing in a resulting signal
> Xdown.
> 3. Now I can find a low pass filter to do the original DC filtering at
> this lower rate on the signal Xdown. The DC filter will have to be less
> narrow resulting in a lower group delay.
> 4. After the DC filtering I can upsample the signal Xdown and add the hig=
h
> frequency part Xhighpass to get the final signal but now DC filtered.
>
> Maybe someone can point out why this will not work. An alternative idea t=
o
> lessen the group delay of the DC filter would also be greatly appreciated=
..
>
> Regards,
> Dinne

Try a large capacitor in series and a resistor to ground.

H.
0
gyansorova (941)
1/8/2009 3:31:34 AM
Reply:

Similar Artilces:

Filter Group Delay
The Matlab command 'grpdelay' is restricted to digital filters only. Does there exist some counterpart to 'grpdelay' that operates in the analog domain? Some Matlab commands have separate versions for the analog and digital domains, and I wonder why 'grpdelay' does not. For example, the 'butter' command to generate Butterworth filter coefficients has digital and analog versions. The analog version is useful for understanding the stand-alone characteristics of a proposed filter, i.e., the characteristics that are independent of a particular sampled data record. ...

group delay of FIR filter
Hi all, Consider a FIR filter with coefficients [1 2 3 2 1] I know the group delay is 2, (5-1)/2. Can anyone tell how to deduce the group delay of 2 without going through the d(theta)/d(omega) mathematics? Is there an easy way to find the group delay? cfy30 cfy30 wrote: > Hi all, > > Consider a FIR filter with coefficients [1 2 3 2 1] > > I know the group delay is 2, (5-1)/2. Can anyone tell how to deduce the > group delay of 2 without going through the d(theta)/d(omega) mathematics? > Is there an easy way to find the group delay? You just found it. What more do you want? (5-1)/2 bypasses d(theta)/d(omega). Jerry -- Engineering is the art of making what you want from things you can get. ����������������������������������������������������������������������� On 21 Mar, 20:02, "cfy30" <cf...@yahoo.com> wrote: > Hi all, > > Consider a FIR filter with coefficients [1 2 3 2 1] > > I know the group delay is 2, (5-1)/2. Can anyone tell how to deduce the > group delay of 2 without going through the d(theta)/d(omega) mathematics? > Is there an easy way to find the group delay? Well, there is the difference between *deriving* the group delay (that is, finding the formula), and *computing* the group delay. You can do the computation in two ways: - Observe that the filter's impulse response is symmetric, so the filter is linear phase and thus the group delay is constant (N-1)/2 = 2. I can't imagine any...

Group Delay of CIC Filters
Is there a simple expression for the group delay of a CIC filter stage in terms of the differential delay (M) and the rate change R? -- Randy Yates % "Watching all the days go by... Digital Signal Labs % Who are you and who am I?" mailto://yates@ieee.org % 'Mission (A World Record)', http://www.digitalsignallabs.com % *A New World Record*, ELO On Fri, 18 Jun 2010 11:21:37 -0400, Randy Yates <yates@ieee.org> wrote: >Is there a simple expression for the group delay of a CIC filter stage >in terms of the ...

Finding the group delay of a filter
Has anyone implemented a function to find the group delay (the time between= the filter's initial response and its peak response)of the different digit= al filters in LabVIEW?<br><br>I need to track the arrival of a certain part= of a signal. I know approx. when it is to arrive, however locating it gets= complicated due to the variable delay caused by the necessary filtering (d= elay depends on the frequencies, filter order, type etc.) .<br><br>I see th= at MatLAB / MatWorks has a group delay function, but perhaps someone has ma= de a G equivalent? <br><br>The digital filter design toolkit is said to hav= e analysis tools that can give you the group delay...but I'm not sure if th= at could be used to find the delay in any case programmatically? Even if it= can I'm a bit reluctant to buy the toolkit just for that functionality...<= br><br>I though I had solved it when I found a description of how to calcul= ate the delay of a Butterworth filter (at least) on: http://www.mathcad.com= /Library/LibraryContent/MathML/group_b.htm<br><br>The results are in the ri= ght ballpark...but sometimes it fails by more than 5 microseconds and that'= s not good enough for my application (could be an incorrect implementation = off course). <br><br>If I use correlation to find the delay I get extremely= good results, however that will not be robust enough (there could be other= strong features, e.g. due...

Filter design with a desired group delay?
Hi, The fdatool in matlab usually designs a real equiripple filter with a group delay (N-1)/2 or N/2, where N is filter length. Given desired magnitude response, to design a linear phase filter with a prescribed group delay, will the optimum filter be real coefficient and symmetric? Thanks. ZedToe "ZedToe" <acoustictech_zhangtao@yahoo.com.sg> wrote in message news:7c4bf533.0401070850.53b25746@posting.google.com... > Hi, > > The fdatool in matlab usually designs a real equiripple filter with a > group delay (N-1)/2 or N/2, where N is filter length. > > Gi...

--- Help on group delay of a continuous filter ---
Hi, all: is there a specific function for continuous system to analyze group delay? i tried grpdelay function, but it seems to be for digital filter and gives wrong result for a continous system. Thanks. ...

how calculate the group delay in a FIR filter ?
Hello all, I'm working with 21161N EZ-KIT in a active noise control system... I'm looking for a way to measuring the time of my filter (FIR) and my algorithm takes me !!! the clock of my processor is 100Mhz... and a cycles is 10ns... I put a counter that calculated 1340 lines executed... can I calculate 1340 X 10ns ???? and how can I calculate the group delay in my filters (FIR) !?? thank's everybody !! henrique On 3 Nov, 14:50, "hbarcellos" <henrique_barcel...@hotmail.com> wrote: > and how can I calculate the group delay in my filters (FIR) !?? You mention 'active noise control' so I suppose you don't have nice symmetric FIRs. The general algorithm is outlined on pages 25-27 of McClellan & al: Computer-Based Excercises for Signal Processing using Matlab 5 Pearson, 1998. A very useful book, if you can find it. Mentioning version 5 of matlab in the title is just about the most stupid thing ever done in DSP - the projects work with any version of matlab. With a couple of chapters added on stuff that presently is included in the SP toolbox (mainly filters design functions and some correlation functions), this would have been an all-time classic. Rune On Nov 3, 8:50=A0am, "hbarcellos" <henrique_barcel...@hotmail.com> wrote: > > ... how can I calculate the group delay in my filters (FIR) !?? > i don't get it. is it that you want to calculate the group delay...

Is there a all-pass filters which group delay is negative
Hi, As far as I know, the group delay of a all-pass filters always is a positive number. Is there a all-pass filters which group delay is negative? Alan On 9/7/2011 10:56 PM, zaitax wrote: > Hi, > As far as I know, the group delay of a all-pass filters always is a > positive number. Is there a all-pass filters which group delay is > negative? > Alan Group delay measures the time between when energy (or information) goes in and when it comes out. Your question amounts to asking if energy can come out before it went in. I'm rooting for you to be able to answer that on your own. Jerry -- Engineering is the art of making what you want from things you can get. >On 9/7/2011 10:56 PM, zaitax wrote: >> Hi, >> As far as I know, the group delay of a all-pass filters always is a >> positive number. Is there a all-pass filters which group delay is >> negative? >> Alan > >Group delay measures the time between when energy (or information) goes >in and when it comes out. Your question amounts to asking if energy can >come out before it went in. I'm rooting for you to be able to answer >that on your own. > >Jerry >-- >Engineering is the art of making what you want from things you can get. > There are some negative group delay filter, Such as, peakingEQ has a negative group delay peak when the gain is negative. Jerry Avins <jya@ieee.org> wrote: > On 9/7/2011 10:56 PM, zaitax wrote: ...

Delay Filter with Fractionary delay
hallo to anyone. i'm trying to apply a delay filter to an input signal. I'd like that this delay is implemented with an upsampling, because i'm talking about a fractionary delay. Is it possible to only upsample the filter impulsive response and not the whole input signal? this is my Matlab Code fc=100; %sample frequency of input signal t=0:2*pi/(fc-1):2*pi; x=sin(t); %input signal subplot(121); stem(t,x); title('Original Signal'); n_points=length(x); tau=3.45; %delay (samples) up_factor=10; %upsampling factor tau_up=round(tau*up_factor); NFFT=2^nextpow2(n_points*up_factor); %------ anti imaging filter---------% h_imaging=up_factor*fir1(32,1/up_factor,blackman(32+1)); H_IMAGING=fft(h_imaging,NFFT); h_delay=[zeros(1,tau_up) 1]; H_DELAY = fft(h_delay,NFFT); X = fft(x,NFFT); OUT1 = H_DELAY.*X.*H_IMAGING; out1=real(ifft(OUT1,NFFT)); out=downsample(out1,up_factor); subplot(122); stem(t,out(1:n_points)); title('Signal with delay'); Sorry for my bad english aenima1891 schrieb: hello, the impulse response of a delaye filtered signal is: y(t)=conv(x(t-tau),h(t)) (1) So its Fourier Transform is Y(f)=X(f)*exp(-j*2*pi*tau*f)*H(f) (2) So the delay leads to a multiplication in the frequency domain with a complex phase term and it doesn't matter if you delay the filtered version or the original version since the order of multiplication is exchangable. But I am wondering why you want to upsample the signal at all, when you downsample it after t...

How can I calculate group delay of a FIR filter on PC?
I am trying to calculate group delay of a FIR filter on PC. I use Matlab but I am confused with its algorithm. Basically the Matlab algorithm says this, group_delay(f) = Fourier transform of {n * h[n]} where h[n] is impulse response of the filter. But the Fourier transform of h[n]*n is the differentiation of H(w) with respect to w and not differentiation of phase of H(w) with respect to w, i.e. h[n]*n <------> j * d(H(w))/dw Am I missing something? What would people normally do to calculate group delay of a FIR filter on a PC? Thanks. cykhung@hotmail.com wrote: > I am trying t...

Filter design, minimal group delay, maximal variance
Hi all, I want to design a filter (invertable if possible) that has the minimu amount of group delay and captures the maximum amount of variance given particular data set. I'm thinking something very similiar to the Karhunen&Loeve (KL) transform aka the 'singular spectrum' and also 500 other names... It's just principl coponent analysis of the trjacectory matrix and retaining the first fe significant eigenvectors. I've design a very simple direct-form type II transposed filter which is simple oscillator [x(i)-mean(x(i-t:i-1))], or [1 -ones(t,1)/t] which ha very fa...

Low (group) delay IIR filters for real time applications
Hi all I'm trying to find design methods or literature for low/minimum group delay IIR filters. I'm a bit unsure about what will be the correct term for this kind of filters. But a typically linear-phase FIR has a group delay of 1/2 the filter length. This kind of delay will often be too much since I'm working with motion capture (MoCap) sensors that typically have sampling rates around 100 Hz. I'm guessing that IIR filters can give me more powerful low group-delay filters than FIR. But the typcal filter design tool in MATLAB does not optimize for low group delay. So my question is: Are there design methods that enable one to minimize the group delay? Let say the best filter with a group delay around 2, 1 or 0 samples? A flat phase is also a wish but not necessarily at the same time. Thank you for any advice you may have. On 8/25/11 11:21 AM, staldor wrote: > Hi all > > I'm trying to find design methods or literature for low/minimum group delay > IIR filters. > > I'm a bit unsure about what will be the correct term for this kind of > filters. But a typically linear-phase FIR has a group delay of 1/2 the > filter length. This kind of delay will often be too much since I'm working > with motion capture (MoCap) sensors that typically have sampling rates > around 100 Hz. > > I'm guessing that IIR filters can give me more powerful low group-delay > filters than FIR. But the typcal filter design tool in...

DSP Group TeakLite DSP Board
I've pulled a DSP Group Teak Lite DSP development board out of the bin at work. It's about 3-4 years old. Their web site asks you to login before you can look at docs an support S/W etc. Does anyone have an old support login for this site? Cheers, Alfie. ...

DC-blocking filter using MATLAB filter function
Hi, I have some waveforms in MATLAB with a DC offset that I want to filter out. I based this filter off of a first order analog prototype but am getting unexpected results. I assumed that the implicit periodicity of the DFT would cause the offset of the waveform in the code below to be a DC component. Instead, I get results that apparently treat the offset as a step response to the high pass filter. Is this an intrinsic limitation of the DFT? Advice is appreciated. MATLAB code: fs = 5e9; t = -50e-9:1/fs:50e-9; DCOffset = 0.5; wfm = 0.5 * rectpuls(t,2e-9) + DCOffset; %a...

DC filter
Hello, I have a signal that has a large DC value. For example assume that I have a signal which is: y=10^6 + sin( wt) How can I remove the DC part of the signal? I tried a low pass filter, but there are two problems: 1- I can not set the filter to only remove DC value and not low frequency signals. 2- The filter has some gain even very low in DC so the DC value is not completely removed. Any suggestion on any way that I can remove the DC signal? Regards ma wrote: > Hello, > > I have a signal that has a large DC value. For example assume that I > hav...

What is the delay of this filter,
Dear all this is my homework, I should determine the delay of this symmetric FIR filter whose length is 3. y[n]=x[n]+x[n-1]+x[n-2]. The answer in the manual solutions is 1. I am confused. In my view, clearly h[0]=1, h(1)=1, h(2)=0, otherwise =zero and it's delay must be two. I guess that the answer is 1 because the filter is symmetric so that h[k]=h[M-k-1] (M=3 is the length of the filter). So delay is only (M-1)/2 if M is odd. Using this thinking, I can find the same answers as in the solution manuals. But indeed I am not satisfied with this explaination and would like to ask you al...

delay filter
hallo to everyone i'm trying to implement a digital filter which is a pure delay. is this code right? h=fir1(delay*2, 0.999, blackman(2*delay+1)); I use this code because a fir filter give to me a delay equal to half of filter order. fir1 function seems to not accept 1 as second parameter. why? Is there any other simpler code ? (sorry for my english) On Oct 6, 6:36=A0am, "aenima1891" <aenima1...@gmail.com> wrote: > hallo to everyone > i'm trying to implement a digital filter which is a pure delay. > is this code right? > > h=3Dfir1(delay*2, 0.999, blackman(2*delay+1)); > > I use this code because a fir filter give to me a delay equal to half > of filter order. > fir1 function seems to not accept 1 as second parameter. why? > > Is there any other simpler code ? > > (sorry for my english) How about using a simple delay line? John >On Oct 6, 6:36=A0am, "aenima1891" <aenima1...@gmail.com> wrote: >> hallo to everyone >> i'm trying to implement a digital filter which is a pure delay. >> is this code right? >> >> h=3Dfir1(delay*2, 0.999, blackman(2*delay+1)); >> >> I use this code because a fir filter give to me a delay equal to half >> of filter order. >> fir1 function seems to not accept 1 as second parameter. why? >> >> Is there any other simpler code ? >> >> (sorry for my english) > >How about using a si...

CIC filter question (a DC offset at the CIC filter output?)
Dear friends, I am implemeting a CIC filter for a Delta-Sigma ADC, my question is that (assuming the CIC filter has one pair of integrater and comb). Since the input is one bit (0 or 1), the output of the intergrator will always be that the following sample is larger or equal to the previous sample. And at the comb part, it subtracts the consecutive two samples and the result must be always >= 0 (or <= 0). So there will essentially a DC offset at the output of the CIC filter. For example, I did a sin wave input (converted to one bit already), then at the output of the CIC, it is a sin wave but biased at some DC level. How do I remove the DC or I am missing something here? Thanks. Vincent Ma wrote: > Dear friends, > > > I am implemeting a CIC filter for a Delta-Sigma ADC, my question is > that (assuming the CIC filter has one pair of integrater and comb). > Since the input is one bit (0 or 1), the output of the intergrator > will always be that the following sample is larger or equal to the > previous sample. And at the comb part, it subtracts the consecutive > two samples and the result must be always >= 0 (or <= 0). So there > will essentially a DC offset at the output of the CIC filter. > > For example, I did a sin wave input (converted to one bit already), > then at the output of the CIC, it is a sin wave but biased at some DC > level. How do I remove the DC or I am missing something here? > > Thanks. Vi...

Filter a group
I have a report that uses a query as the recordsource. One field in the query is called Header which can be either Approved, Received, Not Taken, Closed Out. On the report footer - I total each of these by txtTotalApproves = Sum(IIF(Header="Approved",1,0)). Then I reference these in the report header as a summary page at the TOP of the report. So this works - but I want the detail lines of a group to only include header types of Closed Out or Not Taken. I know I could create a subreport, but can a group be filtered somehow? I tried entering an expression in the grouping : IIF(Header="Not Taken" or Header="Closed Out",Header), but that still gave me all status. Thanks, Brian In Report Design Mode, modify the "Record Source" property and then click on the elipses "...". In there, modify the query to filter your data as required. Dominic Vella "BerkshireGuy" <berkshireguy2005-commerical@yahoo.com> wrote in message news:a2f6daa6-340a-4720-9c05-dd8b0d075dcf@m34g2000hsb.googlegroups.com... >I have a report that uses a query as the recordsource. > > One field in the query is called Header which can be either Approved, > Received, Not Taken, Closed Out. > > On the report footer - I total each of these by > > txtTotalApproves = Sum(IIF(Header="Approved",1,0)). Then I reference > these in the report header as a summary page at the TOP of the > report. > > So...

DC SAS Users Group Evening Meeting Feb 1 at Johns Hopkins Center in DC (Dupont Circle)
The DC SAS Users Group will hold a special evening meeting on February 1 from 6:30 to 8:30 pm at the Johns Hopkins Univ. Washington, DC Center, 1625 Massachusetts Ave NW. The meeting is free to attend and light refreshments (e.g., cookies and sodas) will be served. Please register in advance via email to Andrew@sierrainformation.com A PDF flyer with full meeting details is available at http://www.sierrainformation.com/flyer2006_dcsug_meeting.pdf The meeting will feature two 50 minute presentations, both of which are scheduled as Invited Papers at SUGI 31 in March. Ed Heaton of WESTAT will...

DC SAS Users Group Special Evening Meeting: 9/24 at the Urban Institute, 2100 M St NW, Washington, DC
>>> NOTE: This post describes an event that will be held in Washington, DC. PLEASE DO NOT register for it UNLESS you plan to come to Washington, DC to attend it. Thanks! <<< NOTE SPECIAL EVENING MEETING DC SAS USERS GROUP Wednesday, September 24, 2008 6:00 pm - 8:30 pm Location: The Urban Institute, 2100 M Street NW, Washington, DC (entrance on 21st St. NW) Metro: Foggy Bottom, Farragut North, or Dupont Circle Parking: Pay-Your-Own at 1133 and 1155 21st St NW, $8/vehicle after 5 pm, subject to change) Seating is limited. Please register in advance for priority seating via the link at http://www.surveymonkey.com/s.aspx?sm=dV8wiqWMUor_2bRk6Ep7bwIA_3d_3d We cannot guarantee seats to people who have not registered in advance for the meeting. NOTE >>> This event is being held in Washington, DC. Please DO NOT register for it UNLESS you plan to come to Washington, DC to attend it. <<< NOTE Presentations: * "Data Set Options: Beyond KEEP, DROP, RENAME and WHERE," by Sarah Woodruff and Ed Heaton, Westat * "PROC MEANS: The Basics and Beyond," by Andrew Karp, Sierra Information Services Please visit the DCSUG website at http://www.dc-sug.org for more information about this and other events for SAS Software users in the National Capital Area. ...

Group delay in Matlab
Dear all I not very familiar with filter design in Matlab and I am probably missin something when it comes to "group delay". My problem comes as follows. From what I have understood, if I have a filter such that its group dela response (plotted with grpdelay[b,a] in matlab with a,b the filte coefficients) provides 17 as the group delay (in samples) at f=0.1 (normalized frequency so f=0.14*fs/2=0.14*500=70Hz, sampling frequenc being 1000 Hz) then passing a sinusoid whose frequency is 70Hz through th filter I should get at the output the same sinusoid (assuming gain is one delayed by...

phase to group delay
I designed an algorithm to compute signal delay through an RF channel. I first verified the algorithm using a known IIR model. I managed to get groupdelay of this IIR spot on compared to that given by Matlab function grpdelay(num,den). The algorithm is based on sending frequency sweep chirp signal followed by fft then conversion of phase to groupdelay using the derivative of negative angular phase with respect to angular frequency. The algorithm has been released and is working well. I am now asked if I could apply it to the case when the available test signal is only single tone instead of frequency sweep. I tested my same algorithm on single tone. All looks ok but with a mystery factor of 2 needed to get IIR model groupdelay match that of matlab. I mean if I multiply the computed groupdelay based on fft by 2 then it gets correct with a small margin of error. Any idea what this factor of 2 might be. In both cases I use real only chirp signal or real only single tone and the fft is complex. Processing is identical throughout the algorithm for both cases in every step. Regards Kadhiem kaz <37480@dsprelated> wrote: > I designed an algorithm to compute signal delay through an RF channel. > I first verified the algorithm using a known IIR model. I managed to get > groupdelay of this IIR spot on compared to that given by Matlab function > grpdelay(num,den). The algorithm is based on sending frequency...

OT: Filters for this group
Anyone care to share their filters for this group? I currently filter for: "no.email@no.email.invalid" "Microsoft-Outlook-Express-Macintosh-Edition/5.02.2022" -- Spartanicus none. Kiri "Spartanicus" <me@privacy.net> schreef in bericht news:q2ou20l3rdvhvelqqrciaua0bkphgb4plf@news.spartanicus.utvinternet.ie... > Anyone care to share their filters for this group? > > I currently filter for: > > "no.email@no.email.invalid" > "Microsoft-Outlook-Express-Macintosh-Edition/5.02.2022" > > -- > Spartanicus ...

Web resources about - group delay DC filter - comp.dsp

Filter - Wikipedia, the free encyclopedia
Text is available under the Creative Commons Attribution-ShareAlike License ;additional terms may apply. By using this site, you agree to the ...

Facebook buys popular selfie filter iOS app Masquerade with Snapchat-like features
... you do that” action too so it bought the recently launched app Masquerade (stylized as MSQRD) to instantly have access to its own selfie filter ...

To Big Brands, From a Millennial: Snapchat Filters Are Where It's At
If you're a billion-dollar company targeting millennials and you're not investing in a sponsored Snapchat filter, you're already late to the ...

Facebook Adding Detailed Filters to Mobile Search?
... Reader Chris Ruberg , digital marketing specialist at OneCommand , shared these screenshots with SocialTimes, displaying the ability to filter ...

Get selective with your photo filters in Filteract
Filteract Enlight Instagram Get selective with your photo filters in Filteract is a story by AppAdvice.com AppAdvice - iPhone, iPad, iPod, ...

Brita’s Smart Water Pitcher Orders Its Own Replacement Filters
... not much left for them to improve on besides maybe not having so many of those (admittedly safe) carbon flakes getting through the filter. So, ...

Facebook faces off against Snapchat, nabs filters app Masquerade
In a strategic move against Snapchat, the world's largest social network buys a popular app that lets users slap silly masks and effects on their ...

Recalls this week: radios, mugs, aquarium filters
A line of weather radios that can overheat and post a fire hazard are among this week's recalled products. Others include mugs that have been ...

Facebook Buys Photo Filter App To Compete With Snapchat’s Puking Rainbow
... bit more cartoon-like now that the social media company has acquired selfie-altering startup Masquerade Technologies. The Snapchat-like filter ...

Pro-Women Dating App Bumble Launches Political Filters
... even more so in these polarizing times. That is why Bumble, the dating app from Tinder co-founder Whitney Wolfe, is offering political filters ...

Resources last updated: 3/29/2016 10:40:42 PM