2011-12-16 4 views
0

У меня есть буфер изображения, хранящийся в виде линейного массива [640 * 480] беззнакового целочисленного типа, и я хочу сохранить этот массив как растровое изображение, которое можно просмотреть. Я захватил изображение с камеры и извлек его буфер изображения из кабеля GigE, используя код C++. Поэтому, пожалуйста, скажите мне, как написать целочисленный массив значений RGB в Bitmap на C++ вместе с требуемыми файлами заголовков. У меня есть поток буфер, каксохранить буфер изображения в виде растрового изображения

if (Result.Succeeded()) 
      { 
       // Grabbing was successful, process image 
       cout << "Image #" << n << " acquired!" << endl; 
       cout << "Size: " << Result.GetSizeX() << " x " 
       << Result.GetSizeY() << endl; 

       // Get the pointer to the image buffer 
      const unsigned int *pImageBuffer = (int *) Result.Buffer(); 

pImagebuffer есть образ буфер и игнорируйте функции, поскольку они принадлежат к пользовательскому компилятору. Я просто хочу преобразовать значения RGB в растровое изображение , а затем сохранить его также pImageBuffer дает мне R = G = B, поскольку фото монохрома.

+0

Сколько бит на пиксель есть (32, 16, 24)? Как «беззнаковое целое» представляет цвета? – INS

+0

Небольшой комментарий: Написание орфографических букв в буквальном тексте является C# -специфичным, а не C++. –

+0

моно8 данные ie. 8 бит на пиксель – KB2807

ответ

0

Сохраните данные пикселов вместе с простым заголовком BMP-файла, соответствующим образом инициализированным. См. Описание формата here.

Смежные вопросы