openCv обрезать изображение

У меня проблемы с обрезкой OpenCv IplImage. Предполагая, что и tmp, и img являются IplImage *. Используя код:

printf("Orig dimensions: %dx%d\n", img->width, img->height);
cvSetImageROI(img, cvRect(0, 0,500,500));
tmp = cvCreateImage(cvGetSize(img),img->depth,img->nChannels);
cvCopy(img, tmp, NULL);
cvResetImageROI(img);
img = cvCloneImage(tmp);
printf("Orig dimensions after crop: %dx%d\n", tmp->width, tmp->height);

когда я использую cvRect выше, я получу обрезанное изображение размером 500 x 500, как и ожидалось, однако, когда я использую прямоугольник (400 400 500 500), я получу изображение размером 500 X 320.

Ответы на вопрос(4)

Ваш ответ на вопрос