Ejemplo n.º 1
0
        public void FeatureWriter_ShouldExportLabelsAndFeaturesToFile()
        {
            var files = Directory.GetFiles("Samples", "*.png");

            files.Length.ShouldBe(2);
            var labels = SłownikEtykiet.AutoLabel(files);

            labels.Etykiety.Count().ShouldBe(2);
            var writer  = new FeatureWriter(labels);
            var records = writer.Zapisz("LabelsFeatures.txt", files);

            records.Count().ShouldBe(2);
            var first = records.First();

            first.ShouldStartWith("|labels 1 0 |features ");
            var last = records.Last();

            last.ShouldStartWith("|labels 0 1 |features ");
            File.Exists("LabelsFeatures.txt").ShouldBe(true);
        }
Ejemplo n.º 2
0
        void EtykietujPliki(string folder, string labelsPath = null)
        {
            var files  = Directory.GetFiles(folder, "*.png", SearchOption.AllDirectories);
            var labels = new SłownikEtykiet();

            if (File.Exists(labelsPath))
            {
                Console.WriteLine("Wczytywanie słownika etykiet z pliku " + labelsPath);
                labels = SłownikEtykiet.Wczytaj(labelsPath);
            }
            else
            {
                Console.WriteLine("Generowanie słownika etykiet z " + files.Length + " plik(i)...");
                labels = SłownikEtykiet.AutoLabel(files);
            }
            Console.WriteLine("Etykiety: {0}", labels.Etykiety.Count());
            foreach (var e in labels.Etykiety)
            {
                Console.WriteLine(e + ": " + string.Join(",", labels.LabelToBinaryArray(e)));
            }
            var fileName = "LabelFeatures_T" + DateTime.Now.ToShortDateString() + ".txt";

            Console.WriteLine("Etykietowanie " + files.Length + " plików -> " + fileName);
            var writer = new FeatureWriter(labels)
            {
                UseColor = Settings.Default.Color
            };

            writer.Zapisz(fileName, files);
            var labelsWriter = new LabelWriter(labels);
            var labelPath    = "LabelFeatures_LabelsT" + DateTime.Now.ToShortDateString() + ".txt";

            Console.WriteLine("Eksportowanie etykiet do pliku -> " + labelPath);
            var records = labelsWriter.Zapisz(labelPath, files);

            foreach (var record in records)
            {
                Console.WriteLine(record);
            }
        }