Beispiel #1
0
        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();
        }
Beispiel #2
0
        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();
        }