Нахождение определенных цветов пикселей BitmapImage
У меня есть WPF BitmapImage, который я загрузил из файла .JPG следующим образом:
this.m_image1.Source = new BitmapImage(new Uri(path));
Я хочу спросить, какой цвет в определенных точках. Например, каково значение RGB в пикселях (65,32)?
Как мне это сделать? Я взял этот подход:
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);
Хотя я признаюсь, что это немного обезьяна, обезьяна продолжает работать с этим кодом. В любом случае, существует ли простой способ обработки этого массива байтов для преобразования в значения RGB?