12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- /*****************************************************************************/
- /*IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. */
- /*By downloading, copying, installing or using the software you agree */
- /*to this license. If you do not agree to this license, do not download, */
- /*install, copy or use the software. */
- /* */
- /* */
- /*Copyright (c) 2005 Northwestern University */
- /*All rights reserved. */
- /*Redistribution of the software in source and binary forms, */
- /*with or without modification, is permitted provided that the */
- /*following conditions are met: */
- /* */
- /*1 Redistributions of source code must retain the above copyright */
- /* notice, this list of conditions and the following disclaimer. */
- /* */
- /*2 Redistributions in binary form must reproduce the above copyright */
- /* notice, this list of conditions and the following disclaimer in the */
- /* documentation and/or other materials provided with the distribution.*/
- /* */
- /*3 Neither the name of Northwestern University nor the names of its */
- /* contributors may be used to endorse or promote products derived */
- /* from this software without specific prior written permission. */
- /* */
- /*THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS */
- /*IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED */
- /*TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT AND */
- /*FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL */
- /*NORTHWESTERN UNIVERSITY OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, */
- /*INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES */
- /*(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR */
- /*SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) */
- /*HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, */
- /*STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN */
- /*ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE */
- /*POSSIBILITY OF SUCH DAMAGE. */
- /******************************************************************************/
- #ifndef _H_FUZZY_KMEANS
- #define _H_FUZZY_KMEANS
- #ifndef FLT_MAX
- #define FLT_MAX 3.40282347e+38
- #endif
- /* rmse.c */
- float euclid_dist_2 (float*, float*, int);
- int find_nearest_point (float* , int, float**, int);
- float rms_err(float**, int, int, float**, int);
- int cluster(int, int, float**, int, int, float, int*, float***, float*, int, int, int, int, int);
- int setup(int argc, char** argv);
- int allocate(int npoints, int nfeatures, int nclusters, float **feature, int platform_id, int device_id, int use_gpu);
- void deallocateMemory();
- int kmeansOCL(float **feature, int nfeatures, int npoints, int nclusters, int *membership, float **clusters, int *new_centers_len, float **new_centers);
- float** kmeans_clustering(float **feature, int nfeatures, int npoints, int nclusters, float threshold, int *membership);
- #endif
|