Вы используете его правильно, по какой-то причине процесс невозможен.
Первое значение кортежа результата - это код ошибки, при этом 0 указывает на успех. Здесь у вас есть 1, что означает, согласно stitching.hpp
, что для процесса требуется больше изображений.
enum Status
{
OK = 0,
ERR_NEED_MORE_IMGS = 1,
ERR_HOMOGRAPHY_EST_FAIL = 2,
ERR_CAMERA_PARAMS_ADJUST_FAIL = 3
};
ERR_NEED_MORE_IMGS
обычно указывает на то, что у вас нет достаточного количества ключевых точек в ваших изображений.
Если вам нужна дополнительная информация о причине возникновения ошибки, вы можете перейти на C++ и отладить процесс в деталях.
Edit: обеспечение рабочего примера
же код, как ОП, только что добавили результат сохранения и абсолютные пути.
import cv2
stitcher = cv2.createStitcher(False)
foo = cv2.imread("D:/foo.png")
bar = cv2.imread("D:/bar.png")
result = stitcher.stitch((foo,bar))
cv2.imwrite("D:/result.jpg", result[1])
с этими изображениями (я надеюсь, что вы любите панды)
foo.png
bar.png
result.jpg
Это очень интересная проблема. Я не нахожу документацию python для этой функции, хотя она есть. – tfv