У меня есть BitmapImage WPF, который я загрузил из файла .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?