Home My Page Projects MPTK: The Matching Pursuit ToolKit
Summary Activity Forums Tracker Lists Docs News SCM Files

Forum: help

Monitor Forum | Start New Thread Start New Thread
RE: Changing the selection step in MP. [ Reply ]
By: Nicolas Vinuesa on 2012-11-27 13:57
[forum:110264]
Thanks a lot Boris, i will get into those methods.
Also, i have implemented gammatone dictionaries in matlab, and i tried to use gammatone blocks under MPTK like you answered me in a previous thread, but i could not. My question is:
In a gammatone dictionary, each function has a different scale (wich depends on the central frequency) and the amount of gammatones in this dictionary is fixed by you (meaning that you select the central frequencies from an ERB scale linearly spacing between Fmin and Fmax with the number of gammatones = number of central frequencies). But in MPTK the scale is fixed (windowlen) and so it doesn't depend on the central frequency. How should i implement such a dictionary?
Thanks

RE: Changing the selection step in MP. [ Reply ]
By: Boris Mailhe on 2012-11-27 13:29
[forum:110263]
Do the weights depend on the time, frequency or scale?

Atoms of different frequencies are compared in the MP_Block_c::update_frame method.
Frames of different times are compared in the MP_Block_c::update_max method.
Blocks of different scales are compared in the MP_Dict_c::update methods.

MP_Dict_c::update calls MP_Block_c::update_max which calls MP_Block_c::update_frame.

Best wishes,
Boris

RE: Changing the selection step in MP. [ Reply ]
By: Nicolas Vinuesa on 2012-11-27 13:18
[forum:110262]
I would like to do some weighting on the inner product, but it is quite difficult for me to do it in the cpp code, i have only implemented it in matlab.
Thanks a lot Boris!

RE: Changing the selection step in MP. [ Reply ]
By: Boris Mailhe on 2012-11-27 13:14
[forum:110261]
Dear Nicolas,

The code for that is distributed within the block and the dictionary. Each block has an MP_Block_c::update_max method that finds the highest correlation within that block only, and the dictionary itself has several MP_Dict_c::update methods that compare the different blocks.

MP_Block_c::update_max is the most heavily optimized part of MPTK both for memory and CPU use. You should probably read the description paper before tinkering with it:
https://gforge.inria.fr/docman/view.php/36/6888/2006_ICASSP_Krstulovic.pdf

Which selection rule would you like to implement?

Best wishes,
Boris

Changing the selection step in MP. [ Reply ]
By: Nicolas Vinuesa on 2012-11-27 11:21
[forum:110260]
Dear all,
I need to change the selection step in the MP algorithm. For that purpose i want find in the code of mptk that particular step, but i get lost in the code. So could anyone please tell me in which source file (or header) can i find this selection step. With selection step i mean "finding the atom gn corresponding to D with maximum abs(<Rn,gn>).
Thanks a lot!