public static void TestChannelModifier() { var bmp = (System.Drawing.Bitmap)System.Drawing.Bitmap.FromFile(colorImgName); var image = bmp.ToImage <Bgr, byte>(); UnmanagedImage uIm = UnmanagedImage.FromManagedImage(bmp); measure(() => { var hsvIm = image.Convert <Hsv, byte>(); var hue = new Image <Gray, byte>(hsvIm.Size); hue.SetValue(180 / 2); hsvIm[Hsv.IdxH] = hue; var modifiedIm = hsvIm.Convert <Bgr, byte>(); }, () => { AForge.Imaging.Filters.HueModifier hm = new AForge.Imaging.Filters.HueModifier(180); hm.Apply(uIm); }, 100, "Image<,> Hue modifier", "AForge Hue modifier"); }
public static void TestChannelModifier() { var bmp = (System.Drawing.Bitmap)System.Drawing.Bitmap.FromFile(colorImgName); var image = bmp.ToImage<Bgr, byte>(); UnmanagedImage uIm = UnmanagedImage.FromManagedImage(bmp); measure(() => { var hsvIm = image.Convert<Hsv, byte>(); var hue = new Image<Gray, byte>(hsvIm.Size); hue.SetValue(180 / 2); hsvIm[Hsv.IdxH] = hue; var modifiedIm = hsvIm.Convert<Bgr, byte>(); }, () => { AForge.Imaging.Filters.HueModifier hm = new AForge.Imaging.Filters.HueModifier(180); hm.Apply(uIm); }, 100, "Image<,> Hue modifier", "AForge Hue modifier"); }
private async Task ProcessImage() { //If we are already waiting on another process request, then stop here. if (isImageProcessing) { return; } isImageProcessing = true; //If enough time has not passed since the last process then we must enter a waiting state if (stopwatch.ElapsedMilliseconds < previewDelay) { for (int wait = 0; wait < previewDelay; wait += previewDelayWait) { if (stopwatch.ElapsedMilliseconds >= previewDelay) { break; } await Task.Delay(previewDelayWait); } } //Create System.Drawing.Bitmap Bitmap bitmap = (Bitmap)OriginalTextureBackup; // Apply filters var hueFilter = new AForge.Imaging.Filters.HueModifier(HueValue); bitmap = hueFilter.Apply(bitmap); //Convert back to WPF Bitmap CurrentTexture.DdsImage = (WriteableBitmap)bitmap; //Restart the timer isImageProcessing = false; stopwatch.Restart(); }
private void btnTest_Click(object sender, EventArgs e) { Bitmap imageoriginal = new Bitmap(imageTest1.Image); Image image = imageTest1.Image; //Bitmap bmp = new Bitmap(image.Width, image.Height); //using (Graphics g = Graphics.FromImage(bmp)) //{ // g.Clear(Color.Transparent); // g.InterpolationMode = InterpolationMode.NearestNeighbor; // g.PixelOffsetMode = PixelOffsetMode.None; // g.DrawImage(image, Point.Empty); //} Bitmap n = ChangeColor(imageoriginal, colorPickOld.Color, colorPickNew.Color); AForge.Imaging.Filters.HueModifier filter = new AForge.Imaging.Filters.HueModifier(142); // apply the filter System.Drawing.Bitmap newImage = filter.Apply(imageoriginal); //int height = imageoriginal.Height; //int width = imageoriginal.Width; //for (int i = 0; i < width; i++) //{ // for (int j = 0; j < height; j++) // { // Color origC = imageoriginal.GetPixel(i, j); // Color newC = GetNearestOfBWR(origC, ref imageoriginal); // imageoriginal.SetPixel(i, j, newC); // } //} imageTest2.Image = (Image)ChangeColor(imageoriginal, new Bitmap(imageTest1.Image.Width, imageTest1.Image.Height), colorPickOld.Color, colorPickNew.Color, colorPicNotChange.Color); //imageTest2.Image = TestChangeColor(c, 0, 10, (byte)colorPickNew.Color.GetHue()); }
private void btn_uygula_Click(object sender, EventArgs e) { if (comboBox1.SelectedIndex == 0) // Gri seçildi. { Bitmap image = new Bitmap(pictureBox1.Image); Bitmap gri = griYap(image); pictureBox2.Image = gri; } if (comboBox1.SelectedIndex == 1) // Binary seçildi. { Bitmap image = new Bitmap(pictureBox1.Image); Bitmap binary = binaryYap(image); pictureBox2.Image = binary; } if (comboBox1.SelectedIndex == 2) // Sobel Kenar seçildi. { Bitmap image = new Bitmap(pictureBox1.Image); Bitmap sobel = sobelEdgeDetection(image); pictureBox2.Image = sobel; } if (comboBox1.SelectedIndex == 3) // Sobel Kenar seçildi. { Bitmap image = new Bitmap(pictureBox1.Image); Bitmap median = medianFilter(image); pictureBox2.Image = median; } if (comboBox1.SelectedIndex == 4) // Sepia Fitreleme seçildi. { // load an image System.Drawing.Bitmap image = new Bitmap(pictureBox1.Image); // create filter AForge.Imaging.Filters.Sepia filter = new AForge.Imaging.Filters.Sepia(); // apply filter System.Drawing.Bitmap newImage = filter.Apply(image); pictureBox2.Image = newImage; } if (comboBox1.SelectedIndex == 5) // Blur Fitreleme seçildi. { // load an image System.Drawing.Bitmap image = new Bitmap(pictureBox1.Image); // create filter AForge.Imaging.Filters.Blur filter = new AForge.Imaging.Filters.Blur(); // apply filter System.Drawing.Bitmap newImage = filter.Apply(image); pictureBox2.Image = newImage; } if (comboBox1.SelectedIndex == 6) // Keskinleştirme Fitreleme seçildi. { // load an image System.Drawing.Bitmap image = new Bitmap(pictureBox1.Image); // create filter AForge.Imaging.Filters.Sharpen filter = new AForge.Imaging.Filters.Sharpen(); // apply filter System.Drawing.Bitmap newImage = filter.Apply(image); pictureBox2.Image = newImage; } if (comboBox1.SelectedIndex == 7) // Hue Modifier Fitreleme seçildi. { // load an image System.Drawing.Bitmap image = new Bitmap(pictureBox1.Image); // create filter AForge.Imaging.Filters.HueModifier filter = new AForge.Imaging.Filters.HueModifier(); // apply filter System.Drawing.Bitmap newImage = filter.Apply(image); pictureBox2.Image = newImage; } }