Привет, я видел много учебников, как делать простые сшивки изображений, используя две фотографии, и это не проблема.
Но что делать, когда я хочу сделать панораму с 4-6 изображений или более?
У меня есть код, который принимает список файлов изображений (изображения находятся в порядке от первого изображения в последовательности до последнего). Затем для каждого изображения я вычисляю дескрипторы функции SIFT , Но тогда я застрял, для двух изображений я бы установил совпадение с использованием FLD-kd-дерева и нашел совпадения между изображениями и вычислил Гомографию. Подобно этому учебнику http://docs.opencv.org/trunk/doc/py_tutorials/py_feature2d/py_feature_homography/py_feature_homography.html#py-feature-homography
Но вместо того, чтобы показывать линии между точками в конце, я использовал эту функцию qaru.site/info/349103/..., чтобы сделать панораму из двух изображений. Но я не уверен, что делать, когда я хочу добавить третье и четвертое изображение к панораме.
ИЗМЕНИТЬ:
Из ответов, которые я попытался реализовать, сшиваем изображения script, чтобы вычислить матрицу гомографии между изображениями, которые находятся рядом друг с другом в последовательности изображений. Поэтому, если у меня I1 I2 I3 и I4, теперь я имею H_12, H_23 и H_34. Затем я начинаю с строчки I1 и I2 с использованием H_12. Затем я хочу найти кумулятивную гомографию, чтобы сшить I3 до текущей панорамы. Я нажимаю H_13 = H_12 * H_23 и строчу изображение 3 в текущую панораму, но здесь я вижу очень заметный разрыв в своем панорамном изображении, и когда следующее изображение сшито, это еще больший зазор, и изображения очень растянуты. Вот мой код http://pastebin.com/dQjhE5VD
Может ли кто-нибудь сказать мне, правильно ли я использую этот подход или кто-то может заметить ошибку или увидеть, что я делаю неправильно.