5
$\begingroup$

i have been seeking for a better Transform than STFT with high overleaping. The Transform should more suitble for the human auditory system.

And i learned that there are at least 3 Methods i may use like MFCC, CQT and CWT. Just ignore MFCC and considering of CQT and CWT, i have red some paper and thesis, but can't really tell which is better. Some of the papers i red says that CWT is only special case of CQT, and CQT is better. Other says CQT is the special case of CWT. (like this question here :Difference between CQT and WT) Some Paper said that the CQT is not invertible because some samples never get analysed

So i'm now confused, what is the difference between CQT and CWT? Which is better if i need both time and spectral analyse? And if im seeking for a good transform for both speech and music analyse, which transform would be best for me?

And a stupid question: do these Transforms need overleap in order to get better result?

$\endgroup$
  • 1
    $\begingroup$ "more suitble for the human auditory system" - what does this mean? The reason that you find some papers describing CQT as better, and other papers preferring WT, is because different people are trying to do different things! $\endgroup$ – MSalters Sep 19 '17 at 13:18
  • $\begingroup$ Toward *let-wavelet stuff adapted to the auditory system, you can also check dsp.stackexchange.com/q/38817/15892 $\endgroup$ – Laurent Duval Sep 19 '17 at 18:06
  • $\begingroup$ Emm, for "more suitble for the human auditory system" i mean, which can better describe our auditory system and our preception of sounds. Cause i'm trying to findout an alternative for FFTs used in cochlear implants $\endgroup$ – user152531 Sep 20 '17 at 7:20
  • $\begingroup$ but improving the window/ buffer size for low frequencies means that the time precision is lowoer, isn't it? $\endgroup$ – user35642 May 9 '18 at 16:46
  • $\begingroup$ yes, improving window/buffer size will decrese time precision, but think about the frequences in lower band, they are like some hundered Hz, u dont need that high time precision in such low frequence, because they dont change that fast $\endgroup$ – user152531 May 14 '18 at 8:48
0
$\begingroup$

A Constant Q transform is a variation on the DFT. In other words, it is a type of wavelet transform. I only have a casual understanding of both types of transforms myself, so take what I'm saying with a grain of salt.

A standard DFT uses a constant buffer size throughout all frequencies. This typically leads to a pretty consistent, fully continuous transform. However, the constant bin size for all frequencies leads to some problems when you map frequency on a logarithmic scale. Specifically, peaks on the lower end are incredibly wide (sometimes up to half an octave), lacking any sort of detail.

This is an issue for emulating human perception because humans perceive frequency on a logarithmic scale.

A Constant Q transform seeks to solve this problem by increasing the buffer size for lower frequencies, and alleviate some of the computational strain caused by this by reducing the buffer size used for high frequencies. It's pretty effective at this, but has a few drawbacks.

The O of a Constant Q transform only slightly larger than that of a standard DFT, but because the buffer size changes per frequency, it is impossible to introduce the optimizations an FFT has to a Constant Q transform.

In other words, a Constant Q transform will yield better results where low frequencies and logarithmic frequency mapping are concerned, but it's extremely difficult to make it run realtime and has slightly less detail in the far upper frequencies.

P.S. If I am wrong about any of this, please correct me.

$\endgroup$
  • $\begingroup$ Can you elaborate more on what is buffer size? When I search for DFT or FFT, I cannot find the exact definition for buffer size in this context. $\endgroup$ – Raven Cheuk Aug 1 at 7:02
  • $\begingroup$ In this context, buffer size represents the length of the sample array you perform the FFT, DFT or Constant Q transform on. Generally speaking, the frequency bins an FFT has will be equal to [buffer size]/2 $\endgroup$ – Lowell Camp Aug 2 at 10:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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