Exemple #1
0
        private void GeneratePerimeterPSFs(PerimeterSpreadingFilter filter, int maxRadius)
        {
            //PSF.Perimeter.IPSFGenerator psfGen = new PSF.Perimeter.LinearPSFGenerator();
            PSF.Perimeter.IPSFGenerator psfGen = new PSF.Perimeter.CirclePSFGenerator();

            Stopwatch sw = new Stopwatch();

            sw.Start();
            filter.Psf = psfGen.GeneratePSF(maxRadius);
            sw.Stop();
            Console.WriteLine("Generated PSF with max. radius {0} in {1:f}s", maxRadius, 1.0e-3 * sw.ElapsedMilliseconds);
        }
Exemple #2
0
        public SpreadingForm()
        {
            InitializeComponent();
            blurRadiusNumeric.Value = ProceduralBlur.DEFAULT_BLUR_RADIUS;
            imageTypeComboBox.SelectedIndex = 0;
            filterTypeComboBox.SelectedIndex = 0;
            thinLensBlur = new ThinLensDepthMapBlur(50, 20, 100, 1000, 260);
            apertureNumeric.Value = (decimal)thinLensBlur.Aperture;
            focusPlaneNumeric.Value = (decimal)thinLensBlur.FocusPlane;
            toneMappingCheckBox.Checked = false;

            RectangleFilter = new RectangleSpreadingFilter();
            PerimeterFilter = new PerimeterSpreadingFilter();
            HybridFilter = new HybridSpreadingFilter(RectangleFilter, PerimeterFilter);
        }
Exemple #3
0
        public SpreadingForm()
        {
            InitializeComponent();
            blurRadiusNumeric.Value          = ProceduralBlur.DEFAULT_BLUR_RADIUS;
            imageTypeComboBox.SelectedIndex  = 0;
            filterTypeComboBox.SelectedIndex = 0;
            thinLensBlur                = new ThinLensDepthMapBlur(50, 20, 100, 1000, 260);
            apertureNumeric.Value       = (decimal)thinLensBlur.Aperture;
            focusPlaneNumeric.Value     = (decimal)thinLensBlur.FocusPlane;
            toneMappingCheckBox.Checked = false;

            RectangleFilter = new RectangleSpreadingFilter();
            PerimeterFilter = new PerimeterSpreadingFilter();
            HybridFilter    = new HybridSpreadingFilter(RectangleFilter, PerimeterFilter);
        }
Exemple #4
0
        private void GeneratePerimeterPSFs(PerimeterSpreadingFilter filter, int maxRadius)
        {
            //PSF.Perimeter.IPSFGenerator psfGen = new PSF.Perimeter.LinearPSFGenerator();
            PSF.Perimeter.IPSFGenerator psfGen = new PSF.Perimeter.CirclePSFGenerator();

            Stopwatch sw = new Stopwatch();
            sw.Start();
            filter.Psf = psfGen.GeneratePSF(maxRadius);
            sw.Stop();
            Console.WriteLine("Generated PSF with max. radius {0} in {1:f}s", maxRadius, 1.0e-3 * sw.ElapsedMilliseconds);
        }