From: John on 14 Apr 2008 17:05 On Apr 14, 4:45 pm, "Fred Marshall" <fmarshallx(a)remove_the_x.acm.org> wrote: > "pikey" <pi...(a)amor888.fsnet.co.uk> wrote in message > > news:h9-dnYu56pc2vZ_VnZ2dnUVZ_oqhnZ2d(a)giganews.com... > > > Hi All, > > > I have searched high and low to no avail; I am trying to find the formula > > for the 5-term Blackman-Harris. Certainly there is plenty of material on > > the 3 and 4 terms but not the fifth. > > Any help would be greatly appreciated. > > > Cheers > > > Pikey > > The whole point of windows of this type is that they're simple. I'm > guessing but I believe the reason you don't see 5-term Blackman-Harris is > because there never was one formulated. By simple I mean that there are > just a few cosine terms summed to form the window. > > For each cosine term there is a pair of sincs in frequency. The sincs add > to get the overall, low sidelobe, frequency response of the window. The > higher the "order" the larger the number of nonzero sincs. Outside the > range of nonzero sincs, the sidelobes have the same regular zeros as the > sincs have. > > I developed a method similar to Parks-McClellan - at about the same time - > that can design windows using the same Remez algorithm but using sincs as > the basis set. This gets directly to what you're looking for. The > sidelobes can be minimax or weighted minimax and, if you need, can have > forced zeros. And, the sincs can be replaced with Dirichlets if you're > working with a periodic function / discrete in the transformed domain. > > See: Temes, Barcilon & Marshall: "The Optimization of Bandlimited Sytems" > Proc IEEE Vol 61 No. 2 Feb 1973 pp 196-234. > > Back to why simple windows? > > A window is useful to reduce sidelobes / leakage at a bit of expense of the > main lobe width or resolution. > > Some "windows" are actually implemented in their transform domain as a > convolution. For example the [1/4 1/2 /14] filter often used in video > processing for interpolation. It can be much more efficient and convenient > to convolve with very short filters than to multiply an entire array with a > window function. > > Fred This discussion reminds me of a pulse shaping "window" that the group might be interested in to replace RC and RRC designs. It's called a Harris-Moerder filter, google "An Improved Square-Root Nyquist Shaping Filter" for details. John
From: Jerry Avins on 14 Apr 2008 17:09 Fred Marshall wrote: ... > Some "windows" are actually implemented in their transform domain as a > convolution. For example the [1/4 1/2 /14] filter often used in video > processing for interpolation. It can be much more efficient and convenient > to convolve with very short filters than to multiply an entire array with a > window function. I notice that 1/4 1/2 1/4 is a line of Pascal's triangle, normalized. 1 1 1 1 2 1 2 1 4 1 3 3 1 8 1 4 6 4 1 16 1 5 10 10 5 1 32 They all work as filters; the best I could devise in half an hour before I knew any DSP theory. (Binomial; --> Gaussian) Do they also serve as a basis of good windows? Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
From: dbd on 14 Apr 2008 20:21 On Apr 14, 2:09 pm, Jerry Avins <j...(a)ieee.org> wrote: > Fred Marshall wrote: > > ... > > > Some "windows" are actually implemented in their transform domain as a > > convolution. For example the [1/4 1/2 /14] filter often used in video > > processing for interpolation. It can be much more efficient and convenient > > to convolve with very short filters than to multiply an entire array with a > > window function. > > I notice that 1/4 1/2 1/4 is a line of Pascal's triangle, normalized. > > 1 1 > 1 1 2 > 1 2 1 4 > 1 3 3 1 8 > 1 4 6 4 1 16 > 1 5 10 10 5 1 32 > > They all work as filters; the best I could devise in half an hour before > I knew any DSP theory. (Binomial; --> Gaussian) Do they also serve as a > basis of good windows? > > Jerry > -- > Engineering is the art of making what you want from things you can get. > ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ Jerry The binomial coefficients used as cosine-sum window coefficients are the maximum sidelobe rolloff rate windows. Nuttall derives them for the lines in the pyramid that sum to even powers of 2: TITLE: Some windows with very good sidelobe behavior ISSUE: IEEE Trans. Acoust., Speech, Signal Processing, vol. 29, pp. 84 - 91, February 1981 AUTHORS: Albert H. Nuttall as the windows with the greatest number of derivatives constrained to zero at the endpoints of the time domain window weighting. Note that the lines summing to odd powers of two resample to points midway between the bin centers of the original DFT that the weights are applied to. The first line is the rectangular window, the third is the von Hann. The fifth and seventh are in Nuttall's paper. Each line you drop increases sidelobe rolloff rate by 6 dB per octave. Dale B. Dalrymple
From: Jerry Avins on 14 Apr 2008 21:23 dbd wrote: > On Apr 14, 2:09 pm, Jerry Avins <j...(a)ieee.org> wrote: >> Fred Marshall wrote: >> >> ... >> >>> Some "windows" are actually implemented in their transform domain as a >>> convolution. For example the [1/4 1/2 /14] filter often used in video >>> processing for interpolation. It can be much more efficient and convenient >>> to convolve with very short filters than to multiply an entire array with a >>> window function. >> I notice that 1/4 1/2 1/4 is a line of Pascal's triangle, normalized. >> >> 1 1 >> 1 1 2 >> 1 2 1 4 >> 1 3 3 1 8 >> 1 4 6 4 1 16 >> 1 5 10 10 5 1 32 >> >> They all work as filters; the best I could devise in half an hour before >> I knew any DSP theory. (Binomial; --> Gaussian) Do they also serve as a >> basis of good windows? >> >> Jerry >> -- >> Engineering is the art of making what you want from things you can get. >> ����������������������������������������������������������������������� > > Jerry > > The binomial coefficients used as cosine-sum window coefficients are > the maximum sidelobe rolloff rate windows. Nuttall derives them for > the lines in the pyramid that sum to even powers of 2: > > TITLE: Some windows with very good sidelobe behavior > ISSUE: IEEE Trans. Acoust., Speech, Signal Processing, vol. 29, pp. 84 > - 91, February 1981 > AUTHORS: Albert H. Nuttall > > as the windows with the greatest number of derivatives constrained to > zero at the endpoints of the time domain window weighting. Note that > the lines summing to odd powers of two resample to points midway > between the bin centers of the original DFT that the weights are > applied to. > > The first line is the rectangular window, the third is the von Hann. > The fifth and seventh are in Nuttall's paper. Each line you drop > increases sidelobe rolloff rate by 6 dB per octave. Sometimes the unity of math overwhelms me. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
From: Fred Marshall on 15 Apr 2008 17:43 "John" <sampson164(a)gmail.com> wrote in message news:62d45fcb-8216-46f5-b7b7-a50bf5da32b8(a)b1g2000hsg.googlegroups.com... > On Apr 14, 4:45 pm, "Fred Marshall" <fmarshallx(a)remove_the_x.acm.org> > This discussion reminds me of a pulse shaping "window" that the group > might be interested in to replace RC and RRC designs. It's called a > Harris-Moerder filter, google "An Improved Square-Root Nyquist Shaping > Filter" for details. > > John Yes.. interesting. My original objective was to design a single filter (or window) that had the regular zero crossing attribute for ISI reduction purposes - so it was a similar objective. Using sincs as a basis set was quite handy because the only nonzero sincs were in the main lobe region of the pulse. This led to the need for forcing zeros that were closer in - and thus, a "modified Remez algorithm" that allows equality constraints to be included. An interesting note: Al Nuttall worked at the Navy lab in New London, CT while fred harris and I worked at the Navy lab in San Diego.
First
|
Prev
|
Pages: 1 2 Prev: A issue about DSP_fft16x16t of dsplib of ti Next: TAS3108 GDE & IDE Documentation |