Exemplo n.º 1
0
        private void ApplyButton_Click(object sender, EventArgs e)
        {
            if (this.Text == "Contrast")
            {
                form.img = ImageOperation.Contrast(form.img, Slider.Value);
            }
            else
            {
                form.img = ImageOperation.Brightness(form.img, Slider.Value);
            }

            PictureBox pic = form.Controls["MDIPicture"] as PictureBox;

            pic.Image = form.img.bitmap;
            this.Close();
        }
Exemplo n.º 2
0
 private void LinearFilter1DButton_Click(object sender, EventArgs e)
 {
     if (img == null)
     {
         return;
     }
     tmp = img.Clone();
     double[] values = new double[5];
     for (int i = 0; i < 5; ++i)
     {
         values[i] = (double)1 / 5;
     }
     tmp = ImageOperation.LinearFilter1d(tmp, values, 2, 3, ImageOperation.PostProcessing.NO);
     pictureBox2.Image = tmp.bitmap;
     generateHistogram(tmp, chart2);
 }
Exemplo n.º 3
0
        private void SobelVertical_Click(object sender, EventArgs e)
        {
            if (img == null)
            {
                return;
            }
            tmp = img.Clone();
            double[,] values = Mask.GetMask();
            Point origin = Mask.GetOrigin();

            if (Mask.IsZero() == false)
            {
                MessageBox.Show("The Summition of Mask is not equal 1 ", "Opps", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            tmp = ImageOperation.LinearFilter(img, values, origin.X, origin.Y, ImageOperation.PostProcessing.CUTOFF);
            pictureBox2.Image = tmp.bitmap;
            generateHistogram(tmp, chart2);
        }
Exemplo n.º 4
0
        public OperationsForm(MDIForm f, string operation = "")
        {
            InitializeComponent();
            form = f;

            this.Text = operation;
            decimal x = Math.Round((Decimal)AfterPictureBox.Width / f.img.Width, 2, MidpointRounding.AwayFromZero);
            decimal y = Math.Round((Decimal)AfterPictureBox.Height / f.img.Height, 2, MidpointRounding.AwayFromZero);

            After  = ImageOperation.TransformImage(f.img, 0, 0, 0, (float)x, (float)y);
            Before = ImageOperation.TransformImage(f.img, 0, 0, 0, (float)x, (float)y);
            this.BeforePictureBox.Image = Before.bitmap;
            this.AfterPictureBox.Image  = After.bitmap;

            if (operation == "Contrast")
            {
                Slider.Maximum = 50; Slider.Minimum = -50;
            }
        }
Exemplo n.º 5
0
        public OperationsForm(MDIForm f, Operations op)
        {
            InitializeComponent();
            Op   = op;
            form = f;
            decimal x = Math.Round((Decimal)AfterPictureBox.Width / f.img.Width, 2, MidpointRounding.AwayFromZero);
            decimal y = Math.Round((Decimal)AfterPictureBox.Height / f.img.Height, 2, MidpointRounding.AwayFromZero);

            After  = ImageOperation.TransformImage(f.img, 0, 0, 0, (float)x, (float)y);
            Before = ImageOperation.TransformImage(f.img, 0, 0, 0, (float)x, (float)y);
            this.BeforePictureBox.Image = Before.bitmap;
            this.AfterPictureBox.Image  = After.bitmap;

            if (Op == Operations.Contrast)
            {
                Slider.Maximum            = 50; Slider.Minimum = -50;
                this.Text                 = "Contrast";
                this.MaskGroupBox.Visible = false;
                ApplyButton.Visible       = false;
                RadioButton1D.Visible     = false;
                RadioButton2D.Visible     = false;
            }
            else if (Op == Operations.Brighthness)
            {
                this.Text             = "Brighthness";
                MaskGroupBox.Visible  = false;
                RadioButton1D.Visible = false;
                RadioButton2D.Visible = false;
                ApplyButton.Visible   = false;
                RadioButton1D.Visible = false;
                RadioButton2D.Visible = false;
            }
            else if (Op == Operations.MeanFilter)
            {
                this.Text      = "Mean Filter";
                Slider.Visible = false;
            }
        }
Exemplo n.º 6
0
        private void PreviewButton_Click(object sender, EventArgs e)
        {
            int width   = int.Parse(WidthBox.Text);
            int height  = int.Parse(HeightBox.Text);
            int originx = int.Parse(OriginXBox.Text);
            int originy = int.Parse(OriginYBox.Text);

            if (comboBox1.SelectedIndex == 0)//mean filter
            {
                if (RadioButton1D.Checked)
                {
                    double[] values = new double[width];
                    for (int i = 0; i < width; ++i)
                    {
                        values[i] = (double)1 / width;
                    }
                    form.img = ImageOperation.LinearFilter1d(form.img, values, originx, originy, ImageOperation.PostProcessing.NO);
                }
                else if (RadioButton2D.Checked)
                {
                }
            }
            else if (comboBox1.SelectedIndex == 1)//sobal filter
            {
                if (RadioButton1D.Checked)
                {
                }
                else if (RadioButton2D.Checked)
                {
                }
            }

            /*PictureBox pic = form.Controls["MDIPicture"] as PictureBox;
             * pic.Image = form.img.bitmap;*/
            form.UpdateIMG();
            this.Close();
        }
Exemplo n.º 7
0
 private void ApplyButton_Click(object sender, EventArgs e)
 {
     if (Op == Operations.MeanFilter)
     {
         int width   = int.Parse(MaskWidthTextBox.Text);
         int height  = int.Parse(MaskHeightTextBox.Text);
         int originx = int.Parse(OriginXTextbox.Text);
         int originy = int.Parse(OriginYTextBox.Text);
         if (RadioButton1D.Checked == true)
         {
             double[] values = new double[width];
             for (int i = 0; i < width; ++i)
             {
                 values[i] = (double)1 / width;
             }
             After = ImageOperation.LinearFilter1d(Before, values, originx, originy, ImageOperation.PostProcessing.NO);
         }
         else if (RadioButton2D.Checked == true)
         {
             //add 2d filer here
         }
     }
     this.AfterPictureBox.Image = After.bitmap;
 }
Exemplo n.º 8
0
        private void PreviewButton_Click(object sender, EventArgs e)
        {
            if (Op == Operations.Contrast)
            {
                form.img = ImageOperation.Contrast(form.img, Slider.Value);
            }
            else if (Op == Operations.Brighthness)
            {
                form.img = ImageOperation.Brightness(form.img, Slider.Value);
            }
            else if (Op == Operations.MeanFilter)
            {
                int width   = int.Parse(MaskWidthTextBox.Text);
                int height  = int.Parse(MaskHeightTextBox.Text);
                int originx = int.Parse(OriginXTextbox.Text);
                int originy = int.Parse(OriginYTextBox.Text);

                if (RadioButton1D.Checked == true)
                {
                    double[] values = new double[width];
                    for (int i = 0; i < width; ++i)
                    {
                        values[i] = (double)1 / width;
                    }
                    form.img = ImageOperation.LinearFilter1d(form.img, values, originx, originy, ImageOperation.PostProcessing.NO);
                }
                else if (RadioButton2D.Checked == true)
                {
                    //add 2d filter here
                }
            }
            PictureBox pic = form.Controls["MDIPicture"] as PictureBox;

            pic.Image = form.img.bitmap;
            this.Close();
        }
Exemplo n.º 9
0
 private void button1_Click(object sender, EventArgs e)
 {
     tmp = ImageOperation.Invert(img);
     pictureBox2.Image = tmp.bitmap;
     generateHistogram(tmp, chart2);
 }
Exemplo n.º 10
0
 private void Apply_Click(object sender, EventArgs e)
 {
     tmp = img.Clone();
     tmp = ImageOperation.TransformImage(tmp, (int)rotation.Value, (float)shearX.Value, (float)shearY.Value, (float)scaleX.Value, (float)scaleY.Value);
     pictureBox1.Image = tmp.bitmap;
 }