4
$\begingroup$

When taking the Short-Time Fourier Transform of the speech signal, windowing is applied to taper away the signal frame at both ends and mitigate introduced artifact at expense of the maximum obtainable resolution. Window design is then motivated controlling the trade-offs or spectral-time resolution, and various figures of merits, like the mainlobe width, sidelode width, sidelobe roll-off per octave is introduced in the literature.

In terms of a speech signal, usually a Hamming or Hanning window is employed, and the only justification I have found for it is that speech signals are narrow band signals. How could I demonstrate that a Hamming window is indeed better than, say, a rectangular window for a speech signal?

In a typical natural speech application, a speaker will exhibits frequencies between 0 and 200 Hz, a little higher perhaps for females. Utterances are usually a lot longer than that to produce required frequency, so we can afford to take more frames. I don't know a required resolution for speech. Thus, is it always better to use a Hamming/Hanning window on speech? Is there a clear reason I should tell someone using a rectangular window on producing spectograms, why he/she should not do it (apart from reproducibility of certain results in academic literature)?

$\endgroup$
2
  • 3
    $\begingroup$ It's more correct to call the latter window a Von Hann window or Hann window, for Julius von Hann (not any Mr. Hanning). Richard Hamming is cited for the Hamming window. $\endgroup$
    – hotpaw2
    Aug 4, 2019 at 16:58
  • $\begingroup$ @hotpaw2 Thank you for your comment, but I believe this does not hinder understanding of my question. If you wish, I can make an edit. However, this window is more commonly referred as Hanning, so I believe doing so actually hinders understanding. $\endgroup$
    – boomkin
    Aug 5, 2019 at 12:00

1 Answer 1

6
$\begingroup$

any window (almost any) is better than a boxcar window, unless your spectrum is flat. speech signals are not flat.

I suspect that Hamming and Hann are commonly used because you can avoid scalloping loss for 50% overlap. One gets a sufficiently favorable tradeoff between time resolution and frequency domain dynamic (side lobe level) range. There is also the fact that these windows are cited in papers that go back to the 70s.

You can also apply the widows with a 3 point convolution (3 coefficients instead of N) in the frequency domain, which might have had some advantages in hardware in the past when memory was a constraint.

Classical fixed windows are chosen according to characteristics like sidelobe level. They aren’t like adaptive windows that use the data itself. It’s relatively pedestrian processing.

in summary, boxcar windows are for flat spectra.

$\endgroup$
5
  • $\begingroup$ Can you direct me a more detailed explanation of scalloping loss and how Hamming window combined with 50% overlap avoids scalloping loss? $\endgroup$
    – boomkin
    Aug 4, 2019 at 14:58
  • $\begingroup$ Cos^2+sin^2 = 1 there are online tables that list scalloping loss for various windows $\endgroup$
    – user28715
    Aug 4, 2019 at 15:02
  • $\begingroup$ A table indeed helps calculating the scalopping loss, however it does not help in understanding how overlap affects it. This is probably relevant to the answer. Also I don’t see how the trigonometric Pythagorean theorem is helpful here. $\endgroup$
    – boomkin
    Aug 5, 2019 at 12:03
  • $\begingroup$ the concept is simple. A 50% overlap corresponds to a pi/2 shift of cos. what does a pi/2 shift of cos correspond to? $\endgroup$
    – user28715
    Aug 5, 2019 at 12:23
  • $\begingroup$ @boomkin I don’t want to sound evasive but “how is scalloping loss” calculated is another question. perhaps you could post another question if you are not clear on the calculation $\endgroup$
    – user28715
    Aug 5, 2019 at 12:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.