
This distribution includes key C++ files for our histogram-learning paper [1].
----------------------------------------

Code overview:

As mentioned in our paper, the code is based on Shark, a machine
learning library [2] (Our code is compatible with Shark v.2.3.2). The
files provided in this package implement histogram kernels (kernel
evaluation and kernel derivatives) used in the experiments in
[1]. Optimization of the kernel parameters is performed by the
optimizer provided in [2].


-----------------------------------------

Platform: Windows x64 

This code was developed under VisualSutido 2008, and
the Shark library was also compiled with VisualStudio. 
However, care was taken to avoid non-ANSI C++ extensions
so that the code should compile with any ANSI C++ compiler.

----------------------------------------

Programming idiom:

    vxa::KernelHistIntersect2* kp_xsect = new vxa::KernelHistIntersect2(n_feat);
    vxa::KernelSimplex_fix_gamma* kp_smplx = new vxa::KernelSimplex_fix_gamma(n_feat,smplx_est_band);


    KernelFunction& kernel = *kp_xsect; // for example

    svm = new SVM(kernel);

    SVM_Optimizer svmopt;
    svmopt.init(...);
    svmopt.setMaxIterations(...);
    double o = svmopt.optimize(...);



----------------------------------------

References:

[1] V. Ablavsky and S. Sclaroff, "Learning parameterized histogram kernels on the simplex manifold for image and action classification," ICCV 2011

[2] C. Igel, V. Heidrich-Meisner, and T. Glasmachers, "Shark.
Journal of machine learning research," 9, 2008.



