Выравнивание изображения не удалось с помощью OpenCV Orb - PullRequest
0 голосов
/ 11 апреля 2020

У меня есть два изображения одной и той же печатной платы (с печатной платой), взятые с разных точек зрения (но не сильно отличающихся друг от друга).

Я попытался выровнять два изображения с помощью детектора возможностей Orc OpenCV. Но результат был не столь велик: матрица гомографии, полученная из характеристик Orb, не дала двух выровненных изображений. Разница в изображении выглядела ужасно: произошел огромный перевод с одной платы на другую. Затем я использовал cv :: matchTemplate (), чтобы исключить перевод. Но эффекты вращения и проекции все же остались.

Это странно, учитывая, что средство поиска объектов Orb (которое, как говорят, является очень адекватной заменой SIFT и SURF *1005* без патентов) довольно хорошо работает со сшивкой изображения, которая содержит выравнивание изображения как первый шаг: в полученной таким образом панораме нет видимого шва, что означает, что описанная выше ситуация, когда два изображения были так плохо выровнены, полностью противоречива. Ниже приведены изображение печатной платы шаблона, тестовое изображение, изображение absdiff (шаблон - тест зарегистрирован) и изображения точек интереса

Надеясь, что кто-то может дать небольшое представление о том, как это может быть ... template imagetest imagedifference imagekeypoints2 keypoints1

...