Перевод цветного изображения в черно-белое - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, нужно перевести цветное изображение в черно-белое (не в серо-белое), но я в этом особо ничего не понимаю, помогите пожалуйста, подкиньте какую-нибудь информацию, буду бесконечно благодарен)

Решение задачи: «Перевод цветного изображения в черно-белое»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace ColorToBlackAndWhiteImage
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            var OFD = new System.Windows.Forms.OpenFileDialog(); // Get a browser to open an image file
            if (OFD.ShowDialog() == System.Windows.Forms.DialogResult.OK) 
            {
           
                var originalbmp = new Bitmap(Bitmap.FromFile(OFD.FileName)); // Load the  image
                var newbmp = new Bitmap(Bitmap.FromFile(OFD.FileName)); // New image
                for (int row = 0; row < originalbmp.Width; row++) // Indicates row number
                {
                    for (int column = 0; column < originalbmp.Height; column++) // Indicate column number
                    {
                        var colorValue = originalbmp.GetPixel(row, column); // Get the color pixel
                        var averageValue = ((int)colorValue.R + (int)colorValue.B + (int)colorValue.G)/3; // get the average for black and white
                        newbmp.SetPixel(row, column, Color.FromArgb(averageValue, averageValue, averageValue)); // Set the value to new pixel
                    }
                }
 
                newbmp.Save(OFD.FileName.Replace(".", "_BlackAnd White")); // Save the black ad white image
 
                Process.Start(OFD.FileName.Replace(".", "_BlackAnd White")); // Open the image
            }
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.9 из 5
Похожие ответы