How does Parceval's theorem help with an efficient CQT?

  • Thread starter lidnele
  • Start date
  • Tags
    Theorem
In summary, the conversation is about the implementation of an efficient constant Q transform for determining pitch in a real-time application. The main focus is on a paper by Judith Brown and Miller Puckette that suggests using a pre-calculated kernel and Parceval's relation to improve efficiency. There is some confusion about the use of Parceval's theorem and its role in the CQT. The conversation also addresses some technical issues with viewing the PDF document.
  • #1
lidnele
3
0
Hi,

First, apologies if this is the wrong forum or even the wrong website. The site popped up when searching for a math forum to help me implement an equation efficiently. I’m not sure if this is the place for discussing computational efficiency, but since the efficiency is achieved by way of mathematical theorems, I thought it might fit.

I’m trying to implement an efficient version of the constant Q transform in an attempt to determine pitch for a real-time application, but the math part of my brain has been sitting unused for some years and Google doesn’t seem to hold much information.

I’ve stumbled upon an algorithm derived by Judith Brown and Miller Puckette in an (easy to skim) article here:
http://academics.wellesley.edu/Physics/brown/pubs/effalgV92P2698-P2701.pdf

I’ve verified that the algorithm works (although not yet its speed), but I need to understand it better.
The gist of the article is (if I understand correctly, of course) that a kernel (equation 4) can be pre-calculated and then used repeatedly for multiplication with the input signal. That seems reasonable: less processing power required, much more memory needed.

The article seems to imply that using a form of Parceval’s relation (equation 3) is what provides the speed. I can’t understand the efficiency gain in multiplying an FFT’d kernel with an FFT’ed input, as opposed to just performing the multiplication in the time domain (first and second part of equation (5) in the article).

What’s the catch? I guess what I’d like to know is what the use of Parceval’s theorem really is (especially coupled to the CQT).

If this is such an elementary question that you don’t want to reward it with a lengthy answer, pointers to relevant articles would be sufficient.

Also, if the first thought that pops into your head is “that’s not at all efficient. I know a much better way to do this”, please write away.

Thanks in advance.
 
Mathematics news on Phys.org
  • #2
When I look at that document,the first page is blank. Anyone else able to see the first page ?
 
  • #3
When I click on the link in my post, I get the PDF document displayed as it should. I can't see anything different between page one and the others (apart from the information, of course), so I don't know why the first page would appear to be invisible for you.

I use Safari and its built-in PDF reader, btw, although it shouldn't matter.
 
  • #4
I think the point is that in equation (5) the sum is not really over N-1 terms because most of the K* terms are close to zero, as shown in Fig 2. Fig 3 is presumably some measure of the error introduced by dropping the near-zero terms. If the objective is to identify discrete 12-tone or 24-tone pitches in a scale, errors of a fraction of a tone interval (e.g. less than half) probably don't matter.
 
  • #5
Of course. It's funny how one's mind works. I've read the article several times, but somehow I've completely missed that (which some might argue is a central point of the article).

It makes a lot more sense now. Thanks.
 

1. How does Parceval's theorem relate to the CQT algorithm?

Parceval's theorem is a mathematical concept that states that the energy of a signal in the time domain is equal to the energy of that signal in the frequency domain. This theorem is utilized in the CQT (constant-Q transform) algorithm to efficiently calculate the energy of a signal at different frequencies.

2. Why is Parceval's theorem important in the CQT algorithm?

Parceval's theorem allows for the reduction of computational complexity in the CQT algorithm. This is because instead of directly calculating the energy of a signal at different frequencies in the time domain, the energy can be calculated in the frequency domain using the theorem.

3. How does Parceval's theorem contribute to the accuracy of the CQT algorithm?

By utilizing Parceval's theorem, the CQT algorithm is able to accurately calculate the energy of a signal at different frequencies. This is because the theorem ensures that the energy calculated in the frequency domain is equivalent to the energy in the time domain.

4. Can Parceval's theorem be applied to other signal processing algorithms?

Yes, Parceval's theorem can be applied to other signal processing algorithms that involve transforming signals between the time and frequency domains. It is a fundamental concept in signal processing and is widely used in various applications.

5. Are there any limitations to the use of Parceval's theorem in the CQT algorithm?

One limitation of Parceval's theorem in the CQT algorithm is that it assumes the signal is stationary, meaning its properties do not change over time. This may not always be the case in real-world signals, which can lead to errors in the calculated energy values. However, this limitation can be overcome by using windowing techniques in the CQT algorithm.

Similar threads

  • General Math
Replies
13
Views
1K
  • Programming and Computer Science
Replies
3
Views
313
  • Introductory Physics Homework Help
Replies
4
Views
3K
Replies
69
Views
10K
  • STEM Academic Advising
Replies
1
Views
925
  • Engineering and Comp Sci Homework Help
Replies
11
Views
5K
  • STEM Academic Advising
Replies
13
Views
2K
  • General Math
Replies
4
Views
3K
  • Precalculus Mathematics Homework Help
Replies
4
Views
2K
Back
Top