У меня есть работающее приложение в c # /. Net, которое в настоящее время принимает необработанные данные изображения в формате байера из набора встроенных камер и преобразует их в изображения JPEG. Чтобы сэкономить время передачи, я изменил встроенные устройства для кодирования изображений в формате JPEG перед передачей. Я опытный программист на встраиваемых системах, но в целом с # /. Net noob. Мне удалось изменить приложение, чтобы сохранить массивы в файл с именем jpeg, используя этот фрагмент: (смещение 5 - пропуск данных заголовка в кадре передачи)
FileStream stream = File.Create(fileName);
BinaryWriter writer = new BinaryWriter(stream);
writer.Write(multiBuff.msgData, 5, multiBuff.dataSize - 5);
writer.Close();
Файлы открываются нормально, но теперь я хочу обрабатывать данные как растровое изображение без необходимости сохранять и загружать из файла. Я попробовал следующее в массиве данных:
MemoryStream stream = new MemoryStream(data);
BinaryReader reader = new BinaryReader(stream);
byte[] headerData = reader.ReadBytes(5);
Bitmap bmpImage = new Bitmap(stream);
Но этот параметр выдает исключение допустимого параметра. Как новичок, я немного перегружен всеми классами и методами для изображений, и кажется, что то, что я делаю, должно быть обычным делом, но я не могу найти никаких примеров в обычных местах. Есть идеи?