public void HugeSimpleCPU() { int nDescriptors = 350000; int descriptorDiension = 4096; int nClusters = 25;// 128; int iterationCount = 10; int nDescriptorsDiv5 = nDescriptors / 5; Descriptor[] descriptors = HelperTestClass.GenerateHierarchicalDescriptors(seed, nDescriptorsDiv5, descriptorDiension); ClusteringSimple clustering = new ClusteringSimple(descriptors); TestClusteringSimple(clustering); Stopwatch stopWatch = new Stopwatch(); stopWatch.Start(); clustering.Clusterize(nClusters, iterationCount, seed); stopWatch.Stop(); double elapsedSeconds = (stopWatch.ElapsedMilliseconds * 0.001); double nPerSecond = nDescriptorsDiv5 * 5 * nClusters / elapsedSeconds; Console.WriteLine("Computing time: " + elapsedSeconds + " seconds (" + nPerSecond + " per second)."); HelperTestClass.VisualizeClustering(clustering.Descriptors, clustering.Centroids, windowSize, windowSize); }
public void VisualizeAgglomerative() { int nDescriptors = 100; int descriptorDimension = 2; int nDescriptorsDiv5 = nDescriptors / 5; Descriptor[] descriptors = HelperTestClass.GenerateHierarchicalDescriptors(seed, nDescriptorsDiv5, descriptorDimension); ClusteringAgglomerative clustering = new ClusteringAgglomerative(descriptors); clustering.Clusterize(); HelperTestClass.TestDescriptorAssignment(descriptors.Length, clustering.Centroids[0]); HelperTestClass.VisualizeClustering(clustering.Descriptors, clustering.Centroids[23], windowSize, windowSize); }