Package elki.clustering.dbscan
Class DBSCAN.Instance
- java.lang.Object
-
- elki.clustering.dbscan.DBSCAN.Instance
-
-
Field Summary
Fields Modifier and Type Field Description protected IndefiniteProgress
clusprog
Progress for clusters (may be null).protected long
ncounter
Number of neighbors.protected ModifiableDoubleDBIDList
neighbors
Neighbor query output.protected ModifiableDBIDs
noise
Holds a set of noise.protected FiniteProgress
objprog
Progress for objects (may be null).protected ModifiableDBIDs
processedIDs
Holds a set of processed ids.protected RangeSearcher<DBIDRef>
rangeQuery
Range query to use.protected java.util.List<ModifiableDBIDs>
resultList
Holds a list of clusters found.
-
Constructor Summary
Constructors Modifier Constructor Description private
Instance()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
expandCluster(DBIDRef startObjectID, ArrayModifiableDBIDs seeds)
DBSCAN-function expandCluster.private void
processNeighbors(DoubleDBIDList neighbors, ModifiableDBIDs currentCluster, ArrayModifiableDBIDs seeds)
Process a single core point.protected void
run(Relation<O> relation, RangeSearcher<DBIDRef> rangeSearcher)
Run the DBSCAN algorithm
-
-
-
Field Detail
-
resultList
protected java.util.List<ModifiableDBIDs> resultList
Holds a list of clusters found.
-
noise
protected ModifiableDBIDs noise
Holds a set of noise.
-
processedIDs
protected ModifiableDBIDs processedIDs
Holds a set of processed ids.
-
ncounter
protected long ncounter
Number of neighbors.
-
objprog
protected FiniteProgress objprog
Progress for objects (may be null).
-
clusprog
protected IndefiniteProgress clusprog
Progress for clusters (may be null).
-
rangeQuery
protected RangeSearcher<DBIDRef> rangeQuery
Range query to use.
-
neighbors
protected final ModifiableDoubleDBIDList neighbors
Neighbor query output.
-
-
Method Detail
-
run
protected void run(Relation<O> relation, RangeSearcher<DBIDRef> rangeSearcher)
Run the DBSCAN algorithm- Parameters:
relation
- Data relationrangeSearcher
- Range query class
-
expandCluster
protected void expandCluster(DBIDRef startObjectID, ArrayModifiableDBIDs seeds)
DBSCAN-function expandCluster.Border-Objects become members of the first possible cluster.
- Parameters:
startObjectID
- potential seed of a new potential clusterseeds
- Array to store the current seeds
-
processNeighbors
private void processNeighbors(DoubleDBIDList neighbors, ModifiableDBIDs currentCluster, ArrayModifiableDBIDs seeds)
Process a single core point.- Parameters:
neighbors
- NeighborscurrentCluster
- Current clusterseeds
- Seed set
-
-