DSPRelated.com
Forums

Why is Dolph-Chebychev windowing relatively obscure?

Started by Eric March 15, 2017
On Wed, 15 Mar 2017 08:31:03 -0700 (PDT), robert bristow-johnson
<rbj@audioimagination.com> wrote:

>On Wednesday, March 15, 2017 at 10:19:41 AM UTC-4, Eric wrote: >> Most software seems to focus on Hann, Hamming, and Blackman windowing. >> From the graphs I've seen, Dolph-Chebychev appears to outperform them: >> https://en.wikipedia.org/wiki/Window_function#Dolph.E2.80.93Chebyshev_window >> >> Anyone know why it isn't featured in DSP texts to the extent of the >> other windows above? Are there drawbacks? > >wide main lobe. (so when you convolve with it, it's a sloppy transition band.) > >r b-j
I was trying to judge the responses from Wikipedia's graphs. The main lobe of Dolph-Chebyshev looks similar to Blackman-Harris window. Dolph: https://upload.wikimedia.org/wikipedia/commons/2/2d/Window_function_and_frequency_response_-_Dolph-Chebyshev_%28alpha_%3D_5%29.svg Blackman-Harris: https://upload.wikimedia.org/wikipedia/commons/0/0a/Window_function_and_frequency_response_-_Blackman-Harris.svg I was wondering about which windows would be best suited to detecting pitched signal within noise, such as musical 'onset detection.' Do you have any opinion on which window types would work well there? The Wiki page has some confusing comments about that type of app. It characterizes the rectangular window as having 'poor dynamic range,' But then states: "At the other extreme of dynamic range are the windows with the poorest resolution and sensitivity, which is the ability to reveal relatively weak sinusoids in the presence of additive random noise. That is because the noise produces a stronger response with high-dynamic-range windows than with high-resolution windows. " I was equating their use of 'dynamic range' with heights of adjacent lobes. By 'high resolution', I thought they were referring to width of the main lobe. But perhaps that's not what was intended. In any case, I thought that the wider main lobe of Cheby or Blackman windows would be good for detecting continuous pitched tones, and that broadband nose would be attenuated by the deep rolloff (100+db). But the Wiki page implies the opposite...?
On Wed, 15 Mar 2017 08:54:07 -0700 (PDT), Greg Berchin
<gjberchin@charter.net> wrote:

>On Wednesday, March 15, 2017 at 9:19:41 AM UTC-5, Eric wrote: > >> Anyone know why it isn't featured in DSP texts to the extent of the >> other windows above? Are there drawbacks? > >The equiripple sidelobes look like sinusoids in the frequency domain, which result in impulses in the time domain.
Wow, never heard that before! As I had just mentioned to RBJ, I was considering which types would be optimal for detecting pitched signal within noise. As such, the IFFT would probably not be a concern (??). So I thought Cheby windows might work well there. But the Wikipedia page had some counter-intuitive comments regarding noise rejection. Any opinions on window types for that application, Greg?
On Wed, 15 Mar 2017 13:39:54 -0700 (PDT), Greg Berchin
<gjberchin@charter.net> wrote:

>https://www.dsprelated.com/freebooks/sasp/Dolph_Chebyshev_Window.html; see especially the Length-101 window example.
That's helpful! Not sure what is significant wrt the 101 window, but most of those graphs look very different from the Wikipedia graphs (I see what RBJ was referring to about wide main lobe, from the -200db chart). The comparative graphs under "CHEBYSHEV AND HAMMING WINDOWS COMPARED" are surprisingly close. I expected much more sidelobe attenuation with Chebychev. The article also mentions 'monotonicity' as an advantage of the Hamming window, but I thought that the Cheby's discontinuities at edges were similar ot Hamming's...?
On Sunday, March 19, 2017 at 11:53:09 AM UTC-4, Eric wrote:
> > I was wondering about which windows would be best suited to detecting > pitched signal within noise, such as musical 'onset detection.' Do > you have any opinion on which window types would work well there? >
i'm not sure exactly how one uses a window to detect note onsets. there's a lot involved in *robustely* detecting note onsets. if the instrument is a plucked or hammered string (or some other resonant body, like marimba/vibes) and is monophonic, you can do some envelope-following and detect sudden onsets of the envelope. and use a pitch detector to decide *what* note had just onset. but if you're trying to detect notes in the context of other notes playing, or if the note onset is *not* percussive (like say it's a horn or a human voice and they change from C to D in a legato manner), your problem is much, much harder. sorry for the bad news. r b-j
Eric wrote:
> On Wed, 15 Mar 2017 08:31:03 -0700 (PDT), robert bristow-johnson > <rbj@audioimagination.com> wrote: > >> On Wednesday, March 15, 2017 at 10:19:41 AM UTC-4, Eric wrote: >>> Most software seems to focus on Hann, Hamming, and Blackman windowing. >>> From the graphs I've seen, Dolph-Chebychev appears to outperform them: >>> https://en.wikipedia.org/wiki/Window_function#Dolph.E2.80.93Chebyshev_window >>> >>> Anyone know why it isn't featured in DSP texts to the extent of the >>> other windows above? Are there drawbacks? >> >> wide main lobe. (so when you convolve with it, it's a sloppy transition band.) >> >> r b-j > > I was trying to judge the responses from Wikipedia's graphs. The main > lobe of Dolph-Chebyshev looks similar to Blackman-Harris window. > > Dolph: > > https://upload.wikimedia.org/wikipedia/commons/2/2d/Window_function_and_frequency_response_-_Dolph-Chebyshev_%28alpha_%3D_5%29.svg > > Blackman-Harris: > https://upload.wikimedia.org/wikipedia/commons/0/0a/Window_function_and_frequency_response_-_Blackman-Harris.svg > > I was wondering about which windows would be best suited to detecting > pitched signal within noise, such as musical 'onset detection.' Do > you have any opinion on which window types would work well there? >
I'm not he, but for speech stuff, people tend to use Hilbert transforms for "envelope detection". I have yet to do this, so I don't know what that means. Cross correlation is the method of choice for pitch detection itself. Obviously it has delay. I've used this code already: https://gerrybeauregard.wordpress.com/2013/07/15/high-accuracy-monophonic-pitch-estimation-using-normalized-autocorrelation/
> The Wiki page has some confusing comments about that type of app. > It characterizes the rectangular window as having 'poor dynamic > range,' But then states: > > "At the other extreme of dynamic range are the windows with the > poorest resolution and sensitivity, which is the ability to reveal > relatively weak sinusoids in the presence of additive random noise. > That is because the noise produces a stronger response with > high-dynamic-range windows than with high-resolution windows. " >
I found this interesting: http://zone.ni.com/reference/en-XX/help/371361H-01/lvanlsconcepts/char_smoothing_windows/
> I was equating their use of 'dynamic range' with heights of adjacent > lobes. By 'high resolution', I thought they were referring to width > of the main lobe. But perhaps that's not what was intended. > > In any case, I thought that the wider main lobe of Cheby or Blackman > windows would be good for detecting continuous pitched tones, and that > broadband nose would be attenuated by the deep rolloff (100+db). > > But the Wiki page implies the opposite...? >
Areas of application bias what things people say about various DSP topics. I've been re-reading the Rick Lyons book, and this time more of it is making it through my thick skull :) It's a book to be read very slowly. -- Les Cargill
On Sun, 19 Mar 2017 12:44:38 -0500, Les Cargill
<lcargill99@comcast.com> wrote:

>Eric wrote: >> On Wed, 15 Mar 2017 08:31:03 -0700 (PDT), robert bristow-johnson >> <rbj@audioimagination.com> wrote: >> >>> On Wednesday, March 15, 2017 at 10:19:41 AM UTC-4, Eric wrote: >>>> Most software seems to focus on Hann, Hamming, and Blackman windowing. >>>> From the graphs I've seen, Dolph-Chebychev appears to outperform them: >>>> https://en.wikipedia.org/wiki/Window_function#Dolph.E2.80.93Chebyshev_window >>>> >>>> Anyone know why it isn't featured in DSP texts to the extent of the >>>> other windows above? Are there drawbacks? >>> >>> wide main lobe. (so when you convolve with it, it's a sloppy transition band.) >>> >>> r b-j >> >> I was trying to judge the responses from Wikipedia's graphs. The main >> lobe of Dolph-Chebyshev looks similar to Blackman-Harris window. >> >> Dolph: >> >> https://upload.wikimedia.org/wikipedia/commons/2/2d/Window_function_and_frequency_response_-_Dolph-Chebyshev_%28alpha_%3D_5%29.svg >> >> Blackman-Harris: >> https://upload.wikimedia.org/wikipedia/commons/0/0a/Window_function_and_frequency_response_-_Blackman-Harris.svg >> >> I was wondering about which windows would be best suited to detecting >> pitched signal within noise, such as musical 'onset detection.' Do >> you have any opinion on which window types would work well there? >> > >I'm not he, but for speech stuff, people tend to use Hilbert >transforms for "envelope detection". I have yet to do this, so I >don't know what that means.
There are two basic ways to convert a signal from real to complex; first, mix it down to complex baseband and filter off the redundant spectra, or run the real-valued signal through a Hilbert transform to generate the analytic part. The Hilbert transformer essentially just rotates the signal ninety-degrees to generate the orthogonal component of the complex signal. Both are used frequently and both have their tradeoffs. The Hilbert transform may add some distortion, but for many applications it is small enough to be negligible. Mixing to complex baseband obviously changes the frequency indexing, so one has to keep accurate track of what happens, especially if the intent is to mix it back up to the original spectrum, which takes more processing.
>Cross correlation is the method of choice for pitch detection >itself. Obviously it has delay. > >I've used this code already: > >https://gerrybeauregard.wordpress.com/2013/07/15/high-accuracy-monophonic-pitch-estimation-using-normalized-autocorrelation/ > > >> The Wiki page has some confusing comments about that type of app. >> It characterizes the rectangular window as having 'poor dynamic >> range,' But then states: >> >> "At the other extreme of dynamic range are the windows with the >> poorest resolution and sensitivity, which is the ability to reveal >> relatively weak sinusoids in the presence of additive random noise. >> That is because the noise produces a stronger response with >> high-dynamic-range windows than with high-resolution windows. " >> > >I found this interesting: > >http://zone.ni.com/reference/en-XX/help/371361H-01/lvanlsconcepts/char_smoothing_windows/ > >> I was equating their use of 'dynamic range' with heights of adjacent >> lobes. By 'high resolution', I thought they were referring to width >> of the main lobe. But perhaps that's not what was intended. >> >> In any case, I thought that the wider main lobe of Cheby or Blackman >> windows would be good for detecting continuous pitched tones, and that >> broadband nose would be attenuated by the deep rolloff (100+db). >> >> But the Wiki page implies the opposite...? >> > >Areas of application bias what things people say about various DSP >topics.
Absolutely. And often the language and terminology is a bit different across applications, with terms sometimes getting overloaded quite a bit. It is good to be as clear as possible when describing something, and it is good to ask clarifying questions when trying to understand something. Naturally, things fall through the cracks all the time.
>I've been re-reading the Rick Lyons book, and this time more of it >is making it through my thick skull :) It's a book to be read very >slowly.
The field of DSP is like that. The details matter and there are lots of them. ;) --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus
On Sun, 19 Mar 2017 09:37:06 -0700 (PDT), robert bristow-johnson
<rbj@audioimagination.com> wrote:

>On Sunday, March 19, 2017 at 11:53:09 AM UTC-4, Eric wrote: >> >> I was wondering about which windows would be best suited to detecting >> pitched signal within noise, such as musical 'onset detection.' Do >> you have any opinion on which window types would work well there? >> > >i'm not sure exactly how one uses a window to detect note onsets.
Well, I should have stated that more clearly, I suppose. "Windowed FFT" to attempt to differentiate pitched info from noise.
>but if you're trying to detect notes in the context of other notes playing, or if the note onset is *not* percussive (like say it's a horn or a human voice and they change from C to D in a legato manner), your problem is much, much harder. > >sorry for the bad news.
Yeah, a percussive note would be easy. Unfortunately, no assumptions can be made about incoming music except pitched notes would be expected. I wasn't looking to extract pitch; just determine onset. The usual problem is with slow fade-ins, where some arbitrary start point must be decided by when the music level emerges from the noise floor. Assuming that the WIkipedia article's reference to 'dynamic range' means 'difference between center peak and nearby lobes', I thought that dynamic range would be a good thing. But the Wiki article goes on to contradict that: "At the other extreme of dynamic range are the windows with the "poorest resolution and sensitivity, which is the ability to reveal "relatively weak sinusoids in the presence of additive random noise. "That is because the noise produces a stronger response with "high-dynamic-range windows than with high-resolution windows. " Perhaps I'm misunderstanding their definitions for dynamic range and resolution.
On Monday, March 20, 2017 at 10:40:10 AM UTC-4, Eric wrote:
> On Sun, 19 Mar 2017 09:37:06 -0700 (PDT), robert bristow-johnson > <rbj@audioimagination.com> wrote: > > >but if you're trying to detect notes in the context of other notes playing, or if the note onset is *not* percussive (like say it's a horn or a human voice and they change from C to D in a legato manner), your problem is much, much harder. > > > >sorry for the bad news. > > Yeah, a percussive note would be easy. Unfortunately, no assumptions > can be made about incoming music except pitched notes would be > expected. I wasn't looking to extract pitch; just determine onset. > The usual problem is with slow fade-ins, where some arbitrary start > point must be decided by when the music level emerges from the noise > floor.
well, you should still look into pitch detection and note onset detection information from the Music Information Retrieval community. in pitch detection, there is a quantitative measure of the degree of periodicity of the waveform (which is close to 1 as a note is sustained and gets closer to 0 when the note ends and between notes) and there is another quantitative measure called "novelty" which is sorta like the difference between two adjacent frames of the magnitude of the STFT. this is where i would begin to look if i were you. r b-j
On Wednesday, March 15, 2017 at 9:19:41 AM UTC-5, Eric wrote:
> Most software seems to focus on Hann, Hamming, and Blackman windowing. > From the graphs I've seen, Dolph-Chebychev appears to outperform them: > https://en.wikipedia.org/wiki/Window_function#Dolph.E2.80.93Chebyshev_window > > Anyone know why it isn't featured in DSP texts to the extent of the > other windows above? Are there drawbacks?
In Krauss' book "Antennas", The Dolph Chebyshev solution is offered as a way to create a narrow beam from a broadside antenna array. Dolph presented his solution back in 1946. Clay
On Tuesday, March 28, 2017 at 10:49:13 PM UTC-4, cl...@claysturner.com wrot=
e:
>=20 > In Krauss' book "Antennas", The Dolph Chebyshev solution is offered as a =
way to create a narrow beam from a broadside antenna array. Dolph presented= his solution back in 1946.
>=20
amazingly, Clay, i have that book. took a course in antenna theory back in= my undergrad days. we had a prof (Ronald Moe) who was hard-core EM. it's= where i learned (with a trig substitution) that radiation patterns followe= d a polynomial (of cosine, i think) and we could design a great radiation p= attern with Chebyshev polynomials. i think there are audio guys doing that with loudspeakers, but i cannot see= how that can work for a wide bandwidth. r b-j