Giter Site home page Giter Site logo

serojik91 / simple-cluster Goto Github PK

View Code? Open in Web Editor NEW

This project forked from marker68/simple-cluster

0.0 2.0 0.0 2.55 MB

A simple implementation for clustering methods such as k-means, EM algorithm, ...

License: Other

CMake 1.11% C++ 83.06% C 0.08% Makefile 1.84% Shell 8.63% M4 0.48% Python 4.79%

simple-cluster's Introduction

Simple Clustering

What is this?

This is a simple implementation of the state-of-the-art clustering methods such as k-means. The implementations based on many papers that are mentioned below.

Features

Installation

Prerequisites

  • An Unix or Windows(Cygwin not native Windows with an MSVC compiler) Operating System. Tested on Mac OS X 10.9 and Ubuntu 14.04.
  • CMake 2.8 or newer. For UNIX users, check your CMake version in terminal by cmake -version.
  • An GNU C++ Compiler or clang compiler that support C++ 11.
  • OpenCV 2.4.8 or newer. This library is used for testing only. Just for comparing the performance with our implementations.

Build

We use CMake as the build system. On terminal,

$ git clone [email protected]:marker68/simple-cluster.git simple-cluster
$ cd ./simple-cluster
$ cmake -H. -Bbuild && cmake --build build -- -j3

This script will create the following files in your bin/ directory.

$ ls  bin
CMakeFiles  libgtest_main.a      test_kdtree  test_utilities
libgtest.a  libsimplecluster.so  test_kmeans
  • libgtest_main.a,libgtest.a: Google Testing Framework's static library files. We are using Google Test for testing.
  • libsimplecluster.{so,dylib,dll}: dynamic library(shared library) files for SimpleCluster.
  • test_utilities, test_kdtree, test_kmeans: test programs. See their source code in test/ directory to know how to use this library.

Documentation

This project uses Doxygen to generate its documentation. To generate the documentation:

$ cd ./doc
$ doxygen config.doxygen

The documentation files will be generated in HTML and LaTeX format.

Change log

  • At version 1.0(2014/10/05):
    • Supported k-means algorithm.
    • Supported CMake.
    • Supported only L2 metric distance.
    • Supported KD-tree with ANN search.
    • Supported GNU C++ Compiler and clang compiler.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.