1
$\begingroup$

I am currently reading through Mueller's "Fundamentals of Music Processing" and I am trying to understand audio segmentation through the use of self-similarity matrices.

Currently, my matrix looks good, and I am trying to understand the use of a "checkerboard slide" down the diagonal, where large differences should denote different sections of a musical piece (well, in a perfect world...).

I am running into trouble with generating a "Gaussian-tapered checkerboard" and I haven't been able to easily find any specific references online that have helped me.

As I understand, the checkerboard $K$ would initially look something like this:

[-1, -1, 0, 1, 1;
 -1, -1, 0, 1, 1;
  0,  0, 0, 0, 0;
  1,  1, 0,-1,-1;
  1,  1, 0,-1,-1]

The formula for a radially-symmetric Gaussian function provided by Mueller is as follows:

$$\phi(s,t) = e^{-\epsilon^2 \cdot (s^2 + t^2)}$$

And the resulting checkerboard would be calculated as such:

$$KGauss(s, t) = o(s, t) \cdot K(s, t)$$

Meaning that a three-dimensional representation of the checkerboard would look something similar to this:

enter image description here

Now, I may be just easily confused about how this is calculated, but here are my thoughts on how this would work:

Assume we are calculating the point $(0, 0)$ for our Gaussian function, this would mean that we would have $o(0, 0) = e^{-\epsilon^2 * (0 + 0)} = e^0 = 1$.

However, this would not make sense, as the Gaussian checkerboard should taper to zero as we go along. Furthermore, as $s$ and $t$ increase, $e^{-\epsilon^2 * (s^2 + t^2)}$ would decrease and approach zero, which would not match my expectations for the checkerboard.

Therefore:

  1. Can anyone help explain what I am missing here that would allow me to generate the checkerboard as I would expect? Is there any good reading on how this works that I have overlooked?

  2. I also have not found any material on selecting a good value for epsilon. How can I know how to select the "best" value for a given input? Is this just trial and error, or a threshold that I should keep consistent across different music files, for example?

Thanks for any help! (And if there are better ways to format matrices on here, I'd love to know...)

$\endgroup$

Your Answer

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

Browse other questions tagged or ask your own question.