Я пытаюсь выполнить сегментацию среднего смещения с использованием пирамид, как описано в книге Learning OpenCV на некоторых изображениях.Исходное и конечное изображения являются 8-разрядными трехканальными цветными изображениями одинаковой ширины и высоты, как указано выше.Однако правильный вывод получается только на изображениях 1600x1200 или 1024x768.Другие изображения размером 625x391 и 644x438 вызывают ошибку времени выполнения "Размеры входных аргументов не совпадают в функции cvPyrUp ()" Мой код такой:
IplImage *filtered = cvCreateImage(cvGetSize(img),img->depth,img->nChannels);
cvPyrMeanShiftFiltering( img, filtered, 20, 40, 1);
Программа использует параметры, указанные в примере,Я пытался уменьшить значения, думая, что это проблема размеров изображения, но не повезло.При изменении размеров изображения до 644x392 и 640x320 среднее смещение выполняется правильно.Я читал, что «сегментация пирамиды требует изображений, которые N-кратно делятся на 2, где N - количество слоев пирамиды, которые нужно вычислить», но как это применимо здесь?
Любые предложения, пожалуйста.