2012-01-08 6 views
0

Я попробовал этот эксперимент с цифровой обработкой изображения - 2D DCT/IDCT (сжатия изображения) с BF537 EZ-KIT реализуемого AnalogDevices.Blackfin. 2D DCT/IDCT (сжатие изображения) с BF537 EZ-KIT, КАК НАПИСАТЬ НА ФАЙЛ (на диске) восстановленное изображение (данные необработанного пикселя) из памяти BF537?

говоря уже о "резюме":

  • Я строю проекта;

  • Загрузить черный & белое изображение (* .bmp) с диска в память Blackfin на 0x8000 с помощью Image Viewer;

  • Запустить проект;

  • Нажмите кнопку (от SW 10 до 13) с платы BlackFin (BF537) и выберите уровень сжатия;

  • После вычисления таблицы квантования и DCT-> Quantization-> Dequantization-> Обратный DCT .. приводит к восстановленному изображению в некоторой адресной точке в BF-памяти (0x80000);

  • С Image Viewer (из VisualDsp) Я загружаю восстановленное изображение в оттенках серого из BF-памяти, и все в порядке, и различия видны;

! Упомяните, что, когда я загружаю изображение в память BF с диска с помощью Image Viewer или из BF-памяти с помощью Image Viewer, исходный формат Данные необработанного пикселя.

НО все, что я хочу сделать в дополнение к этому проекту и не знаю, как это: - до принять (создать/запись) [в C язык], что реконструированы изображение из памяти Blackfin на диск (запись кода или что-то в этом роде; НЕ с функцией просмотра изображений - сохранить изображение как ...).

Я попытался FWRITE, что реконструированный буфер, расположенный в памяти 0x80000 в * .bmp файл, но это, кажется, что, когда я открываю его я получаю ошибки, как: «не может прочитать заголовок файла; неизвестный файл формат или файл не найден ... ";

//my code for saving/creating/writing 
// that reconstructed image = Raw pixel data from Blackfin memory 

    unsigned char *jpeg_buff; 
    int jpeg_buff_size; 
    jpeg_buff=0x80000; 

    jpeg_buff_size = 308280;  //jpeg_buff_size = 480*640*1; 
    FILE *jpegfp = fopen ("myimg_reconstr80000.bmp", "wb"); 
    fwrite (jpeg_buff, 1, jpeg_buff_size, jpegfp); 
    fclose (jpegfp); 

Пожалуйста, кто знает, как создать /записи/Сохранить * .bmp изображения от Raw пиксельных данных находится в памяти Blackfin в C языка?

Заранее спасибо; любые решения, предложения будут оценены!

Ниже приведена ссылка на архив всего проекта Visual Dsp. (Я использую VisualDsp ++ 5.0) https://docs.google.com/open?id=0B4IUN70RC09nMjRjNzlhNTctMTI3OS00ZmI4LWI4NzAtNWRkM2MyMDgyMjZm

* простите за мои английские ошибки написания

+0

Пожалуйста, инвестируйте некоторое время и переформатируйте текст ... –

+0

Я закончил форматирование, и я думаю/надеюсь, что это намного лучше. (Раньше у меня были проблемы с подключением к Интернету и не удалось изменить; Извините!) –

+0

Слишком много ненужной информации, слишком много восклицательных знаков. –

ответ

1

Прежде все пиксельные данные, добавлять информацию для заголовка растрового.

http://en.wikipedia.org/wiki/BMP_file_format#Bitmap_file_header

Если вы пишете этот заголовок данных, прежде чем ваши данные изображения, он должен быть действительным растровый файл.