Ошибка переполнения стека при чтении изображения в формате jpeg с использованием библиотеки Cimg

Я получаю ошибку переполнения стека, когда пытаюсь прочитать файл jpg с использованием библиотеки Cimg, в то время как другой формат bmp работает с файлом.

Как я могу это решить?

    #include"CImg.h"
    #include<stdio.h>
    using namespace cimg_library;
    int main()
    {
            CImg<unsigned char> src("d:\\sidimg.jpg");
            int width = src.width();
            int height = src.height();
            unsigned char* ptr = src.data(0,0);
            int count=0;
              while(count!= width*height)
                {

                   printf("%d",*ptr);
                   ptr++;
                   count++;
                }
   }

person siddstuff    schedule 31.05.2013    source источник
comment
Похоже, это должно быть, пока количество ‹ ширина * высота, так как изображения не индексируются 0, я не думаю (начинается с пикселя 1)   -  person Magn3s1um    schedule 31.05.2013
comment
нет проблем с циклом while, я протестировал эту программу с файлами bmp, работающими нормально. проблема с изображением в формате jpg   -  person siddstuff    schedule 31.05.2013
comment
Переполнение стека происходит, когда вы перекрываете свой буфер (или стек). Возможно, вам следует попробовать сбросить стандартный вывод, потому что, возможно, printf накапливается и вызывает его переполнение. Кроме этого, он выглядит нормально и не должен быть проблемой, поскольку стандартный вывод должен автоматически очищаться при заполнении.   -  person Magn3s1um    schedule 31.05.2013
comment
такая же ошибка с пикселем 1   -  person siddstuff    schedule 31.05.2013
comment
Вы не должны выходить, когда это !=, это плохое соглашение. Вы должны ограничивать его более жестко (а не в одной конечной точке). Так что используйте ‹   -  person Magn3s1um    schedule 31.05.2013


Ответы (1)


Извините за поздний ответ, но у вас должен быть convert.exe из пакет ImageMagick в том же каталоге, где выполняется программа для чтения/записи изображения в формате jpeg.

person Pere5    schedule 30.06.2013