Example #1
0
 static void GUI()
 {
     Logger.Enabled = true;
     new GUIProgram(
         tomatoDir,
         "TrainingSet.txt",
         loader => TomatoSetHelper.SplitExact(300, 300, loader),
         new Size(800, 600)
         ).Start();
 }
        protected override void OnStart(IDictionary <SetType, List <Tomato> > imageSets)
        {
            //traning phase
            var trainSet = TomatoSetHelper.Expand(imageSets[SetType.TRANING]);

            classifier.Train(trainSet.Item1, trainSet.Item2, trainSet.Item3, trainSet.Item4);
            //load test images
            var testImages = new ImageLoaderHelper(base.ComputePath(this.indexName));
            //the classifier predicts the class label for each image in the test set.
            var lines = ExportClassificationResult(classifier, testImages.Images);

            File.WriteAllLines(base.ComputePath("submission" + DateTime.Now.ToFileTime() + ".txt"), lines.ToArray());
            log.LogNewLine("evaluation done, output in submission<timestamp>.txt");
        }
Example #3
0
        static void EvalPerfomance()
        {
            var classifier = standardClassifier();

            Logger.Enabled = true;
            var program = new ConsolePerformanceEvaluator(
                tomatoDir,
                "TrainingSet.txt",
                loader => TomatoSetHelper.SplitExact(300, 300, loader),
                new List <TomatoClassifier>(new TomatoClassifier[] { classifier })
                );

            program.Start();
        }
Example #4
0
        static void ExportFeatureOnCsv()
        {
            var extractor = new LBPExtractor(false);

            Logger.Enabled = true;
            var program = new ExtractCSVProgram(
                tomatoDir,
                "TrainingSet.txt",
                loader => TomatoSetHelper.SplitExact(100, 100, loader),
                extractor
                );

            program.Start();
        }
Example #5
0
        protected override void OnStart(IDictionary <SetType, List <Tomato> > imageSets)
        {
            var mappedTrain = TomatoSetHelper.Expand(imageSets[SetType.TRANING]);
            var mappedVal   = TomatoSetHelper.Expand(imageSets[SetType.VALIDATION]);

            log.LogNewLine("Extract feature on train...");
            var train = extractor.ExtractDescriptors(mappedTrain.Item1, mappedTrain.Item2, mappedTrain.Item3, mappedTrain.Item4);

            log.LogNewLine("");
            log.LogNewLine("Extract feature on validation...");
            var validation = extractor.ExtractDescriptors(mappedVal.Item1, mappedVal.Item2, mappedVal.Item3, mappedVal.Item4);

            WriteCsvOn(train, "Train.csv");
            WriteCsvOn(validation, "Validation.csv");
        }
Example #6
0
        static void CompetiotionOutput()
        {
            var classifier = standardClassifier();

            Logger.Enabled = true;
            var program = new ConsoleCompetitionOutput(
                tomatoDir,
                "TrainingSet.txt",
                loader => TomatoSetHelper.SplitExact(300, 300, loader),
                classifier,
                "TestSet.txt"
                );

            program.Start();
        }
        protected override void OnStart(IDictionary <SetType, List <Tomato> > imageSets)
        {
            var train = TomatoSetHelper.Expand(imageSets[SetType.TRANING]);
            var i     = 0;

            foreach (TomatoClassifier classifier in classifiers)
            {
                log.LogNewLine("Classifier : " + i++);
                log.LogNewLine("___________________");
                stopWatch.Start();
                classifier.Train(train.Item1, train.Item2, train.Item3, train.Item4);
                stopWatch.Stop();
                log.LogNewLine("train time : " + stopWatch.Elapsed.TotalSeconds + " seconds");
                EvalPerformance(classifier, imageSets[SetType.VALIDATION]);
                log.LogNewLine("___________________");
            }
            Console.ReadLine();
        }
Example #8
0
        private void ExtractFeature(TomatoDescriptorExtractor extractor, List <Tomato> tomatoes)
        {
            var adapted = TomatoSetHelper.Expand(tomatoes);

            extractor.ExtractDescriptors(adapted.Item1, adapted.Item2, adapted.Item3, adapted.Item4);
        }
Example #9
0
        private void Train(TomatoClassifier classifier, List <Tomato> tomatoes)
        {
            var adapted = TomatoSetHelper.Expand(tomatoes);

            classifier.Train(adapted.Item1, adapted.Item2, adapted.Item3, adapted.Item4);
        }