OpenCV открыть изображение без рывков

Я использую opencv2, чтобы открыть серию изображений (на Raspberry Pi), я считаю, что переход очень резкий (т.е. открытие изображения), есть ли способ сгладить это?
Приведенный ниже фрагмент кода — это то, что я использую atm (наверное, я должен использовать mat 🙂

 void loadImage()
{
int nImages = 6;
for (int i = 0; i < nImages; ++i)
{
IplImage *image;
char filename[100];
strcpy(filename, "images/");

char frameNo[10];
sprintf(frameNo, "%03i", i);

strcat(filename, frameNo);
strcat(filename, ".jpg");

image = cvLoadImage(filename);
cvNamedWindow("pic");
cvShowImage("pic",image);
cvMoveWindow("pic", 0, 0);
cvWaitKey(1000);
}
}

0

Решение

Вы должны загрузить свои изображения либо в другой теме, либо перед циклом, если вы ленивы. Это должно быть что-то вроде этого:

void loadImages() {
IplImage *images[NUM_IMAGES];

images[0] = cvLoadImage("filename1.jpg");
images[1] = cvLoadImage("filename1.jpg");
images[2] = cvLoadImage("filename1.jpg");
.
.
. (etc)
}

void showImages(){
loadImages();
for (int i = 0; i < nImages; ++i){

cvNamedWindow("pic");
cvShowImage("pic",images[i]);
cvMoveWindow("pic", 0, 0);
cvWaitKey(1000);
}
}

Конечно же, массив пинтеров к изображениям *images[] должен быть объявлен как глобальный, или вы должны передать его из loadimages() функция к showImages() (Лучшее решение).

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector