Hinzufügen oder Subtrahieren von Farbe von einem Bild in einer PictureBox mit C #

Ich möchte lernen, wie man einige sehr einfache Bildbearbeitungen in Visual Studio programmiert. Ich verwende den openFileDialog, um ein Bild in eine PictureBox zu laden. Ich habe im Internet einige Loops gefunden, die darauf ausgelegt sind, Farbe pixelweise zu konvertieren, aber aus verschiedenen Gründen (die sich bei jedem Codebeispiel unterscheiden) funktioniert nichts. Was ist derrichti Möglichkeit, den roten Wert zu addieren (oder davon zu subtrahieren), um den Farbton eines Bildes in einer PictureBox zu ändern? Ich verwende C #.

Vielen Dan

EDIT: Hier ist ein Beispiel für etwas, das zumindest ein Ausgangspunkt ist:

        Bitmap bmp = (Bitmap)Bitmap.FromFile(pictureBox1.ImageLocation);

        for (int x = 0; x < bmp.Width; x++)
        {
            for (int y = 0; y < bmp.Height; y++)
            {
                bmp.GetPixel(x, y);
                bmp.SetPixel(x, y, Color.FromArgb(128, 0, 128));
            }
        }

        pictureBox1.Image = bmp;
        MessageBox.Show("Done"); 

Auf diese Weise kann ich das Bild pixelweise abrufen und die Farbe in diesem Fall in Lila ändern. Das möchte ich natürlich nicht. Was ich tun möchte, ist, den ursprünglichen RGB-Wert jedes Pixels zu erhalten und die Werte zu erhöhen oder zu verringern. Mit anderen Worten, führen Sie eine grundlegende Farbkorrektur durch.

Wie erhalte ich das aktuelle RGB jedes Pixels und stelle das RGB des neuen Pixels ein?

Ich habe dies auch als Beispiel gesehen. Das Problem ist, ich sehe nicht, wie man ModifyHue benutzt:

        var bmp = new Bitmap(pictureBox1.ImageLocation);
        for (int x = 0; x < bmp.Width; x++)
        {
            for (int y = 0; y < bmp.Height; y++)
            {
                Color oldColor = bmp.GetPixel(x, y);
                Color newColor = ModifyHue(oldColor);
                bmp.SetPixel(x, y, newColor);
            }
        }  

        pictureBox1.Image = bmp;

Ich stelle fest, dass ich beim ersten Mal Codebeispiele hätte veröffentlichen sollen. Vielen Dan

Antworten auf die Frage(2)

Ihre Antwort auf die Frage