コード例 #1
0
        static void Experiment5Taskv2Performence()
        {
            int    level = 2;
            string name  = "lenna";

            Logger.Info(name);
            string inputName = $"../../../test_images/{name}.png";
            Bitmap input     = new Bitmap(inputName);
            Bitmap output    = new Bitmap(input.Width, input.Height, input.PixelFormat);

            var imageReader = new BitmapReader <int>(input);
            var mallat      = new MallatDecomposition <int, NineSevenBiortogonalInteger <int> >(imageReader).Build(input.Size, level);

            Logger.Info(mallat.ToString());
            var    calculator      = new MallatEntropyEvaluator <int>(input.Size, level, mallat);
            var    mallatCollector = new MallatMerger <int>(input.Size, level, mallat);
            var    imageWriter     = new BitmapWriter <int>(new Bitmap(input.Width, input.Height, System.Drawing.Imaging.PixelFormat.Format32bppRgb), "", mallatCollector);
            string outputName      = $"{inputName}_{mallat.ToString()}.png";

            imageWriter.SetImageName(outputName);
            calculator.DataLength = 3;

            var sw = System.Diagnostics.Stopwatch.StartNew();

            Logger.Info("Sync:");
            imageWriter.Process();
            Logger.Info($"Time:\t{sw.Elapsed}");
            sw.Restart();
            Logger.Info("Async v2:");
            imageWriter.ProcessAsync();
            Logger.Info($"Time:\t{sw.Elapsed}");
        }
コード例 #2
0
        static void TesterParameterDemo()
        {
            string inputName   = "../../../test_images/lenna.png";
            Bitmap input       = new Bitmap(inputName);
            var    imageReader = new BitmapReader <float>(input);
            var    mallat      = new MallatDecomposition <float, Haar <float> >(imageReader).Build(input.Size, 1);
            var    imageWriter = new BitmapWriter <float>(new Bitmap(input.Size.Width, input.Size.Height), "", mallat);
            var    tester      = new ParameterTester <float>(imageWriter)
                                 .SetNextParameters(new ParameterStorage().SetParameter("outputName", "../lenna_1.png"))
                                 .SetNextParameters(new ParameterStorage().SetParameter("outputName", "../lenna_2.png"))
                                 .SetNextParameters(new ParameterStorage().SetParameter("outputName", "../lenna_3.png"));

            tester.RunSync();
        }