[PD] nearest neighbour matching?
Ed Kelly
morph_2016 at yahoo.co.uk
Fri Oct 5 11:20:57 CEST 2012
> Hi Claude,
>
> On 5 Oct 2012, at 09:47, Claude Heiland-Allen <claude at 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
>
> --
> http://jamiebullock.com
>
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
More information about the Pd-list
mailing list