Разница между HomographyBasedEstimator и findHomography OpenCV

Я пытаюсь написать программу, которая сшивает изображения с помощью детектора SURF, и я хотел бы знать разницу между двумя оценщиками гомографии. Насколько я понимаю, findHomography использует RANSAC, HomographyBasedEstimator тоже использует RANSAC?

Если это не так, может ли кто-нибудь указать мне на бумагу, которую HomographyBasedEstimator использовал?

заранее спасибо


person PooSiang Khor    schedule 31.10.2015    source источник


Ответы (3)


Основное различие между обеими функциями заключается в том, что findHomography, как следует из названия, используется для поиска гомографии, а HomographyBasesEstimator использует уже существующую гомографию для расчета поворота камер.

Я имею в виду, что HomographyBasesEstimator не находит гомографии, а использует их для вычисления движения камеры и всех других параметров камеры, таких как фокусное расстояние и оптический центр.

Я надеюсь это тебе поможет.

person Angie Quijano    schedule 24.02.2016
comment
HomographyBasesEstimator принимает только функции и их попарные совпадения, он не принимает уже вычисленную гомографию... Кроме того, если он используется для оценки параметров камеры, почему после оценщика гомографии используется настройка пакета? (например, в сшивателе панорам). - person Mr.WorshipMe; 28.02.2018

Документация, кажется, не говорит, но предполагает, что HomographyBasedEstimator находит матрицу вращения, которая является частным случаем матрицы гомографии, для которой требуется фокусное расстояние. Если вы занимаетесь вышивкой, HomographyBasedEstimator, вероятно, вам подойдет. (Я предполагаю, что это делает RANSAC внутри.)

person willem    schedule 31.10.2015
comment
да, я тоже пытался найти документацию на сайте opencv, но безрезультатно. - person PooSiang Khor; 01.11.2015
comment
Спасибо, в любом случае! ценится - person PooSiang Khor; 01.11.2015

На самом деле findHomography вызывается в BestOf2NearestMatcher.

person Leo zhang    schedule 06.09.2016