Когда матрица гомографии с RANSAC рассчитывается с меньшим количеством совпавших ключевых точек (> 4), преобразованное изображение с помощью warpPerspertive каким-то образом искажается или наклоняется. когда одно и то же изображение используется для деформации с большим количеством совпавших клавиш, результат будет хорошим. Я видел похожий вопрос Вот но это все еще не решено.
Теоретически нам нужно только 4 подходящих ключевых пункта, но в частном, почему это не работает? Кто-нибудь может пожалуйста объяснять или предоставить некоторые бумаги который объясняет причины.
Спасибо
Одна большая часть проблемы заключается в том, что у нас ограниченная точность изображения. Многие алгоритмы используют субпиксельную точность, но трудно найти точное местоположение по целому ряду причин. Лишь немногие из них теряют визуальную информацию в результате разделения сцены на пиксели, различий в разрешении изображения, несовершенства и характеристик датчика камеры, изменения освещения и т. Д.
Рассмотрим одномерный случай. Скажем, у нас есть две точки, которые должны быть расположены в точных точках 0 и 20,5, но вместо этого находятся в точках 0 и 20. Это ошибка 2,5%. Если эти точки использовались для преобразования одномерного изображения размером 500, некоторые пиксели могут быть отключены на 12,5 пикселей. Эти ошибки имеют очень большое влияние на части изображения, далеко от найденных соответствий. Это называется погрешность измерения.
Очевидно, что если у нас будет одно плохое соответствие, гомография будет плохой. Эти плохие совпадения называются ошибка классификации. На практике мы не можем рассчитывать на любые четыре совпадения, чтобы быть совершенно правильными, которые были сгенерированы с использованием любого из дескрипторов точек OpenCV. Мы можем (в зависимости от сцены и настройки) рассчитывать на множество точек, чтобы быть близкими к правильным.
Взгляни на Консенсус по случайной выборке: парадигма для подгонки модели с приложениями для анализа изображений и автоматической картографии Фишлер и Боллес. Он описывает алгоритм, аналогичный RANSAC в OpenCV. В нем кратко обсуждается влияние ошибок классификации и измерений. Это говорит о том, что ошибки измерения обычно следуют нормальному распределению, поэтому, если у нас много совпадений, ошибки измерения будут иметь минимальный эффект. Мы также можем найти способ определить, какие совпадения могут быть ошибкой классификации, и минимизировать их влияние.
Других решений пока нет …