Skip to content
forked from gyaikhom/dbscan

Implements the DBSCAN Clustering algorithm

License

Notifications You must be signed in to change notification settings

tomfisher/dbscan

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The DBSCAN Clustering Algorithm

In this project, we implement the DBSCAN clustering algorithm. For further details, please view the NOWEB generated documentation dbscan.pdf.

##Source code

This repository contains the following source code and data files:

  • dbscan.c - A C programming language implementation (uses 3D data points).
  • dbscan.js- A JavaScript implementation (uses 2D data points).
  • dbscan.min.js- A minified JavaScript implementation.
  • example.dat - Example data file.
  • imageseg - Adaptation of DBSCAN algorithm for image segmentation.

##Usage

To run the algorithm on the supplied example data, first compile

$ clang -O2 -Wall -g -o dbscan dbscan.c -lm

and then run the program:

$ cat example.dat | ./dbscan

This will produce output as follows:

Epsilon: 1.000000
Minimum points: 2
Number of points: 53
x     y     z     cluster_id
----------------------------------------------
1.00  3.00  1.00: 0
1.00  4.00  1.00: 0
1.00  5.00  1.00: 0
1.00  6.00  1.00: 0
2.00  2.00  1.00: 2
2.00  3.00  0.00: 1
2.00  4.00  0.00: 1
2.00  5.00  0.00: 1
2.00  6.00  0.00: 1
2.00  7.00  1.00: 3
3.00  1.00  1.00: 2
3.00  2.00  1.00: 2
...

About

Implements the DBSCAN Clustering algorithm

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 62.5%
  • C 34.4%
  • HTML 3.1%