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

  1. 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.
     
  2. jcsd
  3. Stephen Tashi

    Stephen Tashi 4,330
    Science Advisor
    2014 Award

    When I look at that document,the first page is blank. Anyone else able to see the first page ?
     
  4. 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.
     
  5. AlephZero

    AlephZero 7,300
    Science Advisor
    Homework Helper

    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.
     
  6. 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.
     
Know someone interested in this topic? Share a link to this question via email, Google+, Twitter, or Facebook

Have something to add?

0
Draft saved Draft deleted