Размытие и резкость изображения, с помощью AForge.NET

code: #csharp
  1. using AForge;
  2. using AForge.Imaging;
  3. using AForge.Imaging.Filters;
  4. using AForge.Imaging.Textures;
  5.  
  6. namespace Размытие_и_резкость
  7. {
  8.     public partial class Form1 : Form
  9.     {
  10.         public Form1()
  11.         {
  12.             InitializeComponent();
  13.         }
  14.    //Размытие
  15.         private void button1_Click(object sender, EventArgs e)
  16.         {
  17.             pictureBox1.Image = DoF(new Blur());
  18.         }
  19. //выбор файла
  20.         private void button3_Click(object sender, EventArgs e)
  21.         {
  22.             OpenFileDialog o = new OpenFileDialog();
  23.             o.ShowDialog();
  24.             pictureBox1.Image = System.Drawing.Image.FromFile(o.FileName);
  25.         }
  26. //резкость
  27.         private void button2_Click(object sender, EventArgs e)
  28.         {
  29.             pictureBox1.Image = DoF(new Sharpen());
  30.            
  31.         }
  32.  
  33.         private void button4_Click(object sender, EventArgs e)
  34.         {
  35.             ResizeForm form = new ResizeForm();
  36.  
  37.             form.OriginalSize = new Size(pictureBox1.Image.Width, pictureBox1.Image.Height);
  38.  
  39.             if (form.ShowDialog() == DialogResult.OK)
  40.             {
  41.                pictureBox1.Image= DoF(form.Filter);
  42.             }
  43.         }
  44.         private System.Drawing.Image DoF(IFilter f)
  45.         {
  46.             try
  47.             {
  48.                 IFilter filter = f;
  49.                 // set wait cursor
  50.                 this.Cursor = Cursors.WaitCursor;
  51.                 Bitmap image = pictureBox1.Image as Bitmap;
  52.                 // apply filter to the image
  53.                 Bitmap newImage = filter.Apply(image);
  54.                 return newImage as System.Drawing.Image;
  55.                
  56.             }
  57.             catch (ArgumentException)
  58.             {
  59.                 MessageBox.Show("Selected filter can not be applied to the image", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
  60.                 return null;
  61.             }
  62.             finally
  63.             {
  64.                 // restore cursor
  65.                 this.Cursor = Cursors.Default;
  66.             }
  67.         }
  68.     }
  69. }
Поделиться:

Похожие статьи: