Ejemplo n.º 1
0
        public void CanGetTrainingInputsWithTransformationsAndGaborFilterInNormalOrder()
        {
            var sensor = new BitmapPicture2DSensor(pathSpeed: 10, useRandomOrigin: true);
            sensor.SetTrainingFolder(TrainingSetPath);
            sensor.AddFilter(new Gabor2DFilter());
            var nbInputs = 0;
            var nbIterations = 0;

            foreach (var input in sensor.GetTrainingInputs(true))
            {
                Assert.IsNotNull(input.CurrentFile);
                Assert.IsFalse(string.IsNullOrWhiteSpace(input.CategoryName));

                nbInputs++;

                foreach (var iteration in input)
                {
                    if (!iteration.IsBlank())
                        nbIterations++;
                }

            }

            Assert.AreEqual(TrainingSetSize, nbInputs, "nbInputs");
            Assert.IsTrue(nbIterations >= TrainingSetSize, "nbIterations");
        }
Ejemplo n.º 2
0
        static void SensorGaborFilterTest(int maxIterations)
        {
            string TrainingSetPath = Path.Combine("O:", "clean");

            var filter = new Gabor2DFilter();
            var writer = new MatrixToBitmapFileWriter("");

            var sensor = new BitmapPicture2DSensor(presentationsPerInput: 1, pathSpeed: 2, useRandomOrigin: true);
            sensor.SetTrainingFolder(TrainingSetPath);
            sensor.AddFilter(filter);
            sensor.OnFilteredMatrixOutput += writer.OutputWriterHandler;

            int nbIterations = 0;
            foreach (var input in sensor.GetTrainingInputs(true))
            {
                foreach (var iteration in input)
                {
                    nbIterations++;
                    if (nbIterations >= maxIterations)
                        break;
                }
                if (nbIterations >= maxIterations)
                    break;
            }
        }
Ejemplo n.º 3
0
        public void CanOutputFilteredInputsFromGabor2DFilter()
        {
            var filter = new Gabor2DFilter();
            var writer = new MatrixToBitmapFileWriter("");

            var sensor = new BitmapPicture2DSensor(presentationsPerInput: 1, pathSpeed: 2, useRandomOrigin: true);
            sensor.SetTrainingFolder(TrainingSetPath);
            sensor.AddFilter(filter);
            sensor.OnFilteredMatrixOutput += writer.OutputWriterHandler;
            int maxIterations = 100, nbIterations = 0;

            var begin = DateTime.Now;
            foreach (var input in sensor.GetTrainingInputs(true))
            {
                foreach (var iteration in input)
                {
                    nbIterations++;
                    if (nbIterations >= maxIterations)
                        break;
                }
                if (nbIterations >= maxIterations)
                    break;
            }
            var end = DateTime.Now;

            Debug.WriteLine(begin);
            Debug.WriteLine("{0} (duration: {1:D} ms)", end, (int)(end - begin).TotalMilliseconds);

            Assert.AreEqual(maxIterations, writer.OutputFolder.GetFiles().Length);
        }