Hi Claude,
On 5 Oct 2012, at 09:47, Claude Heiland-Allen claude@mathr.co.uk wrote:
Hi list,
I have a -batch patch that randomly samples the parameter space of control
signals to (some black box)* and uses [sigmund~] to detect pitched-ness vs unpitchedness, keeping the pitch info and then a notch filter to detect distortion:
http://mathr.co.uk/softrockiii/2012-10-05_probe-puredata.png
So I end up with gnuplots that look something like this:
http://mathr.co.uk/softrockiii/2012-10-05_pitching-distortion.png
Now I want to find the best match for a given pitch and distortion and get
back the corresponding parameters that approximately reconstruct the desired sound.
What's the best way to go about this?
I might end up just hand-rolling some Lua for this kind of matching if no
one has any better ideas.
You may be interested in the [knn] external, which implements the k's nearest neighbour algorithm.
It can be found in svn in postlude/knn.
The classic paper on its use can be found here: http://www.music.mcgill.ca/~ich/research/icmc00/icmc00.timbre.pdf
best,
Jamie
There may be a way to use the simile algorithm (from ekext) that gives the matched-ness of two numbers based on an arbitrary window size, but it still might involve rolling your own. I have a feeling KNN is very efficient... Ed