Собственная матрица вращения (оценка) вращения из 3 матриц вращения, а не 2

Я пишу панораму в C ++ и использую slerp (сферическая линейная интерполяция) и Quaternions для оценки матрицы вращения из смежных изображений (используя библиотеку Eigen), когда я не могу получить достаточно функций для соответствия.
Я могу сделать точное предположение, что изображение должно находиться между двумя другими в многорядной строке, когда, скажем, только одно изображение не может быть связано с другими.
Это нормально работает, но я хотел бы улучшить его, используя slerp (или что-то еще), чтобы сделать оценку из нескольких соседних изображений.

Кто-нибудь знает такой способ? это не должно использовать Eigen lib.

В настоящее время мне нравится это
введите описание изображения здесь

Но хотелось бы улучшить что-то подобное, используя 1,3 и 5 (и даже 4 и 5, если это лучше)
введите описание изображения здесь

Изменить 1:
Из комментария @ nico-schertler я получил представление о том, как мне получить фракцию slerp для 5 между 4 и 6? Затем я бы использовал эту дробь в качестве входных данных для slerp для 2 между 1 и 3, что в настоящее время составляет 0,5

1

Решение

Задача ещё не решена.

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

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