Ermitteln bestimmter Pixelfarben eines BitmapImage

Ich habe ein WPF-BitmapImage, das ich wie folgt aus einer JPG-Datei geladen habe:

this.m_image1.Source = new BitmapImage(new Uri(path));

Ich möchte abfragen, wie die Farbe an bestimmten Punkten ist. Wie hoch ist beispielsweise der RGB-Wert bei Pixel (65,32)?

Wie gehe ich vor? Ich habe diesen Ansatz gewählt:

ImageSource ims = m_image1.Source;
BitmapImage bitmapImage = (BitmapImage)ims;
int height = bitmapImage.PixelHeight;
int width = bitmapImage.PixelWidth;
int nStride = (bitmapImage.PixelWidth * bitmapImage.Format.BitsPerPixel + 7) / 8;
byte[] pixelByteArray = new byte[bitmapImage.PixelHeight * nStride];
bitmapImage.CopyPixels(pixelByteArray, nStride, 0);

Obwohl ich zugeben werde, dass es ein bisschen Affen-See gibt, machen Affen mit diesem Code weiter. Wie auch immer, gibt es eine einfache Möglichkeit, dieses Array von Bytes für die Konvertierung in RGB-Werte zu verarbeiten?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage