IMPROVED FAST GAUSS TRANSFORM

Copyright Information

The code was written by Vikas C. Raykar and Changjiang Yang is copyrighted under the Lesser GPL:

Copyright (C) 2006 Vikas C. Raykar and Changjiang Yang

This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; version 2.1 or later. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  The author may be contacted via email at: vikas (at) umiacs (.) umd (.) edu and cyang (at) sarnoff (.) com.

 


I have provided separate programs for parameter selection, space subdivision, and the core IFGT algorithm.  This is because when using the IFGT multiple times with differrent q the parameter selection and k-center clustering have to be done only once.

 

  List of Core Functions

ImprovedFastGaussTransformChooseParameters Returns the number of clusters K, the maximum truncation number p_max, and the cutoff radius r.
ImprovedFastGaussTransformChooseTruncationNumber Given the cluster radius, returns the required truncation number p_max.
KCenterClustering Implementation of the farthest point clustering algorithm. This is the O(N logK) version.
ImprovedFastGaussTransform Given the space subdivison results and the parameters computes the IFGT.
DataAdaptiveImprovedFastGaussTransform Version of the IFGT where the truncation number for each source point is different.
IFGT A wrapper function which combines all the above. Just provide the accuracy epsilon.

  Utilities

GaussTransform Direct implementation.
example Example program to illustrate the use of the IFGT.
generate_multiple_gaussians Generates N samples in d dimensions from G gaussians
plot_clusters Pretty plot of the results of the clustering procedure. Plots only for two and three dimensions.

 

 

10/18/2006