Znajdowanie określonych kolorów pikseli w BitmapImage

Mam WPF BitmapImage, który załadowałem z pliku .JPG w następujący sposób:

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

Chcę zapytać, jaki jest kolor w określonych punktach. Na przykład, jaka jest wartość RGB w pikselu (65,32)?

Jak mam to zrobić? Podejmowałem takie podejście:

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);

Chociaż przyznam się, że jest trochę małpki, małpa robi to z tym kodem. W każdym razie, czy istnieje prosty sposób przetwarzania tej tablicy bajtów w celu konwersji na wartości RGB?

questionAnswers(8)

yourAnswerToTheQuestion