public void TestBinTemplateSimilarityMassive() { string homeFolder = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile); ParseDb(homeFolder + "\\mcc_cs_db.txt"); ParseQuery(homeFolder + "\\mcc_cs_query.txt"); CylinderDatabase cylinderDb = new CylinderDatabase(contiguousCylinders, templateIndices); double[] similarityRates = BinTemplateSimilarity.GetTemplateSimilarityOptimized(query, cylinderDb, templateDbLengths); // cylinderDb version for (int i = 0; i < similarityRates.Length; i++) { Console.Write(similarityRates[i] + (i != similarityRates.Length - 1 ? ", " : "")); } Console.WriteLine(); }
public void TestBinTemplateCorrelation() { query = new Template(new Cylinder[] { cylinderMixed }); db = new Template[] { new Template(new Cylinder[] { cylinderOnes }), new Template(new Cylinder[] { cylinderOnes, cylinderMixed }), new Template(new Cylinder[] { cylinderMixed, cylinderMixed, cylinderMixed, cylinderMixed }) }; contiguousCylinders = new Cylinder[] { cylinderOnes, cylinderOnes, cylinderMixed, cylinderMixed, cylinderMixed, cylinderMixed, cylinderMixed }; templateIndices = new uint[] { 0, 1, 1, 2, 2, 2, 2 }; cylinderDb = new CylinderDatabase(contiguousCylinders, templateIndices); templateDbLengths = new int[] { 1, 2, 4 }; double[] similarityRates = BinTemplateSimilarity.GetTemplateSimilarity(query, db); // templateDb version //double[] similarityRates = BinCylinderSimilarity.GetTemplateSimilarityOptimized(query, cylinderDb, dbTemplatesLengths); // cylinderDb version for (int i = 0; i < similarityRates.Length; i++) { Console.Write(similarityRates[i] + (i != similarityRates.Length - 1 ? "; " : "")); } Console.WriteLine(); }