Skip to content

Task02 Анна Патрушева ИТМО#58

Open
petrushkanya wants to merge 12 commits intoPhotogrammetryCourse:task02from
petrushkanya:task02
Open

Task02 Анна Патрушева ИТМО#58
petrushkanya wants to merge 12 commits intoPhotogrammetryCourse:task02from
petrushkanya:task02

Conversation

@petrushkanya
Copy link

@petrushkanya petrushkanya commented Mar 23, 2026

Перечислите идеи и коротко обозначьте мысли которые у вас возникали по мере выполнения задания, в частности попробуйте ответить на вопросы:

  1. Зачем фильтровать матчи, если потом мы запускаем устойчивый к выбросам RANSAC и отфильтровываем шумные сопоставления?
  • Вероятность хорошей выборки такая: p = 1 - (1 - w^n)^k (w - вероятность одного инлаера, k - количество попыток и n - количество точек)
    Если зафиксировать p(напр., 0.97), то при уменьшении вероятности инлаера w, количество итераций(попыток) k растет.
    Если мы сделаем перед ransac фильтрацию и уберем плохие матчи, то w вырастет -> k уменьшится
    Алгоритм точно станет быстрее, более того, это прибавляет точности к результату ransac.
  1. Cluster filtering довольно хорошо работает и без Ratio test. Однако, если оставить только Cluster filtering, некоторые тесты начнут падать. Почему так происходит? В каких случаях наоборот, не хватает Ratio test и необходима дополнительная фильтрация?
  • Cluster filtering смотрит на распределение матчей, если правильных матчей в некоторой области мало, они не образуют кластер и выбрасываются как шум. Ratio test смотрит на неоднозначный матчинг(у точки похожие на нее соседи)
    Взять тот самый пример со стенами. Повторяющиеся части стены приводят к образованию ложных кластеров, однако ratio test должен их отклонить, так как у каждой точки много похожих соседей.
  1. С какой проблемой можно столкнуться при приравнивании единице элемента H33 матрицы гомографии? Как ее решить?
  • если истинное значение H33 -> 0, то нормировать на него нельзя (пример с небом, w' -> 0). Решение - SDL.
  1. Какой подвох таится в попытке склеивать большие панорамы и ортофото методом, реализованным в данной домашке? (Для интуиции можно посмотреть на результат склейки, когда за корень взята какая-нибудь другая картинка)
  • Каждая гомография оценивается некоторыми ошибками. Когда мы приводим некоторое изображение к системе координат корня, гомографии перемножаются и их ошибки тоже. Чем дальше от корня находится изображение, тем больше ошибок мы получаем.
  1. Как можно автоматически построить граф для построения панорамы, чтобы на вход метод принимал только список картинок?
  • Найдем кандидатов на соседей (например, воспользоваться алгоритмом FLANN, а то и HNSW).
    Между каждой возможной парой добавим ребро, если они хорошо перекрываются, иначе не будем. Совсем не факт, что мы получим связный граф, тогда надо порог хорошести понизить. Давайте побинарим порог хорошести:) найдем максимальный порог, при котором у нас будет связный граф. Выделим в нем дерево DFS, корень возьмем на средине диаметра. А дальше уже как и было
  1. Если с вашей реализацией SIFT пройти тесты не получилось, напишите (если пробовали дебажить), где, как вам кажется, проблема и как вы пробовали ее решать.
  • Не было с этим никаких проблем, были только с подбором констант:)
  1. Если есть, фидбек по заданию: какая часть больше всего понравилась, где-то слишком сложно/просто (что именно), где-то слишком мало ссылок и тд.
  • Мне немного не хватает документации, а так все супер
Github Actions CI

$ ./build/test_sift

Running main() from /Users/runner/work/PhotogrammetryTasks2026/PhotogrammetryTasks2026/libs/3rdparty/libgtest/googletest/src/gtest_main.cc
[==========] Running 20 tests from 2 test suites.
[----------] Global test environment set-up.
[----------] 18 tests from MATCHING
[ RUN ] MATCHING.SimpleStitching
testing sift detector/descriptor...
estimateHomographyRANSAC : support: 959/959
estimateHomographyRANSAC : best support: 959/959
keypoints RMSE: 0.285325, color RMSE: 10.2024
testing my detector/descriptor...
estimateHomographyRANSAC : support: 761/761
estimateHomographyRANSAC : best support: 761/761
keypoints RMSE: 0.377216, color RMSE: 15.6444
[ OK ] MATCHING.SimpleStitching (711 ms)
[ RUN ] MATCHING.SimpleMatching
testing sift detector/descriptor...
flann matching...
cv flann matching...
brute force matching
BruteforceMatcher::knnMatch : n query desc : 3919, n train desc : 3522
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 152/968
estimateHomographyRANSAC : support: 966/968
estimateHomographyRANSAC : support: 968/968
estimateHomographyRANSAC : best support: 968/968
evaluating homography...
nn_score: 0.615973, nn2_score: 0.268181, nn_score_cv: 0.613167, nn2_score_cv: 0.270222, time_my: 0.040461, time_cv: 0.035437, time_bruteforce: 3.84051, good_nn: 0.25925, good_ratio: 0.992141, good_clusters: 0.997821, good_ratio_and_clusters: 0.998967
testing my detector/descriptor...
flann matching...
cv flann matching...
brute force matching
BruteforceMatcher::knnMatch : n query desc : 3395, n train desc : 3055
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 768/770
estimateHomographyRANSAC : support: 770/770
estimateHomographyRANSAC : best support: 770/770
evaluating homography...
nn_score: 0.562003, nn2_score: 0.221797, nn_score_cv: 0.568778, nn2_score_cv: 0.235346, time_my: 0.032986, time_cv: 0.032399, time_bruteforce: 2.80357, good_nn: 0.237408, good_ratio: 0.952267, good_clusters: 0.983099, good_ratio_and_clusters: 0.963636
[ OK ] MATCHING.SimpleMatching (7490 ms)
[ RUN ] MATCHING.Rotate10
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 78/692
estimateHomographyRANSAC : support: 658/692
estimateHomographyRANSAC : support: 692/692
estimateHomographyRANSAC : best support: 692/692
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.041969, time_cv: 0.05022, time_bruteforce: 0, good_nn: 0.198265, good_ratio: 0.986962, good_clusters: 0.993939, good_ratio_and_clusters: 0.998555
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 398/639
estimateHomographyRANSAC : support: 513/639
estimateHomographyRANSAC : support: 586/639
estimateHomographyRANSAC : support: 635/639
estimateHomographyRANSAC : support: 637/639
estimateHomographyRANSAC : support: 638/639
estimateHomographyRANSAC : best support: 638/639
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.045615, time_cv: 0.042527, time_bruteforce: 0, good_nn: 0.15729, good_ratio: 0.763314, good_clusters: 0.785366, good_ratio_and_clusters: 0.782473
[ OK ] MATCHING.Rotate10 (1247 ms)
[ RUN ] MATCHING.Rotate20
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 728/736
estimateHomographyRANSAC : support: 736/736
estimateHomographyRANSAC : best support: 736/736
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.046716, time_cv: 0.046358, time_bruteforce: 0, good_nn: 0.201072, good_ratio: 0.982028, good_clusters: 0.970199, good_ratio_and_clusters: 0.995924
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 579/608
estimateHomographyRANSAC : support: 607/608
estimateHomographyRANSAC : support: 608/608
estimateHomographyRANSAC : best support: 608/608
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.049566, time_cv: 0.056784, time_bruteforce: 0, good_nn: 0.207069, good_ratio: 0.985401, good_clusters: 0.993902, good_ratio_and_clusters: 0.993421
[ OK ] MATCHING.Rotate20 (1163 ms)
[ RUN ] MATCHING.Rotate30
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 518/704
estimateHomographyRANSAC : support: 702/704
estimateHomographyRANSAC : support: 703/704
estimateHomographyRANSAC : best support: 703/704
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.045138, time_cv: 0.047868, time_bruteforce: 0, good_nn: 0.187548, good_ratio: 0.944664, good_clusters: 0.955696, good_ratio_and_clusters: 0.960227
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 570/644
estimateHomographyRANSAC : support: 644/644
estimateHomographyRANSAC : best support: 644/644
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.042237, time_cv: 0.043086, time_bruteforce: 0, good_nn: 0.201178, good_ratio: 0.964497, good_clusters: 0.969697, good_ratio_and_clusters: 0.978261
[ OK ] MATCHING.Rotate30 (1201 ms)
[ RUN ] MATCHING.Rotate40
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 228/708
estimateHomographyRANSAC : support: 391/708
estimateHomographyRANSAC : support: 644/708
estimateHomographyRANSAC : support: 705/708
estimateHomographyRANSAC : support: 708/708
estimateHomographyRANSAC : best support: 708/708
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.042638, time_cv: 0.044961, time_bruteforce: 0, good_nn: 0.199541, good_ratio: 0.990862, good_clusters: 0.968116, good_ratio_and_clusters: 0.997175
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 395/573
estimateHomographyRANSAC : support: 549/573
estimateHomographyRANSAC : support: 573/573
estimateHomographyRANSAC : best support: 573/573
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.038021, time_cv: 0.040286, time_bruteforce: 0, good_nn: 0.196465, good_ratio: 0.972686, good_clusters: 0.967153, good_ratio_and_clusters: 0.987784
[ OK ] MATCHING.Rotate40 (1171 ms)
[ RUN ] MATCHING.Rotate45
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 508/701
estimateHomographyRANSAC : support: 701/701
estimateHomographyRANSAC : best support: 701/701
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.045894, time_cv: 0.041343, time_bruteforce: 0, good_nn: 0.195458, good_ratio: 0.976253, good_clusters: 0.982456, good_ratio_and_clusters: 0.985735
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 254/608
estimateHomographyRANSAC : support: 457/608
estimateHomographyRANSAC : support: 604/608
estimateHomographyRANSAC : support: 608/608
estimateHomographyRANSAC : best support: 608/608
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.03774, time_cv: 0.038993, time_bruteforce: 0, good_nn: 0.161119, good_ratio: 0.77548, good_clusters: 0.782209, good_ratio_and_clusters: 0.774671
[ OK ] MATCHING.Rotate45 (1117 ms)
[ RUN ] MATCHING.Rotate90
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 551/756
estimateHomographyRANSAC : support: 756/756
estimateHomographyRANSAC : best support: 756/756
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.038139, time_cv: 0.037679, time_bruteforce: 0, good_nn: 0.216382, good_ratio: 0.990533, good_clusters: 0.987179, good_ratio_and_clusters: 0.998677
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 590/711
estimateHomographyRANSAC : support: 711/711
estimateHomographyRANSAC : best support: 711/711
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.03369, time_cv: 0.033202, time_bruteforce: 0, good_nn: 0.22327, good_ratio: 0.994624, good_clusters: 0.976471, good_ratio_and_clusters: 0.998594
[ OK ] MATCHING.Rotate90 (997 ms)
[ RUN ] MATCHING.Scale50
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
gauss: infinitely many solutions found
estimating homography...
gauss: xs0: 733.297, 665.122, 733.297, 451.823,
gauss: ys0: 424.265, 609.679, 424.265, 162.842,
gauss: infinitely many solutions found
gauss: xs0: 451.823, 451.823, 600.932, 733.297,
gauss: ys0: 162.842, 162.842, 418.547, 424.265,
estimateHomographyRANSAC : support: 132/158
estimateHomographyRANSAC : support: 148/158
estimateHomographyRANSAC : support: 154/158
too few matches: 0
estimateHomographyRANSAC : best support: 154/158
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.025094, time_cv: 0.027292, time_bruteforce: 1e-06, good_nn: 0.0398061, good_ratio: 0.80791, good_clusters: 0, good_ratio_and_clusters: 0.860759
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
too few matches: 0
estimateHomographyRANSAC : support: 90/119
estimateHomographyRANSAC : support: 94/119
estimateHomographyRANSAC : support: 99/119
estimateHomographyRANSAC : support: 119/119
estimateHomographyRANSAC : best support: 119/119
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.021963, time_cv: 0.020948, time_bruteforce: 0, good_nn: 0.0412371, good_ratio: 0.976923, good_clusters: 0, good_ratio_and_clusters: 0.991597
[ OK ] MATCHING.Scale50 (585 ms)
[ RUN ] MATCHING.Scale70
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 356/358
too few matches: 25
estimateHomographyRANSAC : support: 358/358
estimateHomographyRANSAC : best support: 358/358
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.029433, time_cv: 0.02966, time_bruteforce: 0, good_nn: 0.088543, good_ratio: 0.866142, good_clusters: 0, good_ratio_and_clusters: 0.879888
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 313/314
too few matches: 29
estimateHomographyRANSAC : support: 314/314
estimateHomographyRANSAC : best support: 314/314
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.024896, time_cv: 0.025098, time_bruteforce: 0, good_nn: 0.101915, good_ratio: 0.952941, good_clusters: 0, good_ratio_and_clusters: 0.987261
[ OK ] MATCHING.Scale70 (777 ms)
[ RUN ] MATCHING.Scale90
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 486/623
estimateHomographyRANSAC : support: 582/623
estimateHomographyRANSAC : support: 623/623
estimateHomographyRANSAC : best support: 623/623
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.034709, time_cv: 0.034658, time_bruteforce: 0, good_nn: 0.173514, good_ratio: 0.984871, good_clusters: 0.969543, good_ratio_and_clusters: 0.991974
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 459/582
estimateHomographyRANSAC : support: 519/582
estimateHomographyRANSAC : support: 576/582
estimateHomographyRANSAC : support: 577/582
estimateHomographyRANSAC : support: 582/582
estimateHomographyRANSAC : best support: 582/582
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.030466, time_cv: 0.030444, time_bruteforce: 1e-06, good_nn: 0.169367, good_ratio: 0.922314, good_clusters: 0.905263, good_ratio_and_clusters: 0.926117
[ OK ] MATCHING.Scale90 (894 ms)
[ RUN ] MATCHING.Scale110
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 91/745
estimateHomographyRANSAC : support: 206/745
estimateHomographyRANSAC : support: 441/745
estimateHomographyRANSAC : support: 580/745
estimateHomographyRANSAC : support: 740/745
estimateHomographyRANSAC : support: 745/745
estimateHomographyRANSAC : best support: 745/745
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.044745, time_cv: 0.044407, time_bruteforce: 0, good_nn: 0.208216, good_ratio: 0.98875, good_clusters: 0.987593, good_ratio_and_clusters: 0.995973
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 125/640
estimateHomographyRANSAC : support: 151/640
estimateHomographyRANSAC : support: 289/640
estimateHomographyRANSAC : support: 555/640
estimateHomographyRANSAC : support: 640/640
estimateHomographyRANSAC : best support: 640/640
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.039462, time_cv: 0.039859, time_bruteforce: 0, good_nn: 0.207658, good_ratio: 0.987013, good_clusters: 0.996337, good_ratio_and_clusters: 0.996875
[ OK ] MATCHING.Scale110 (1365 ms)
[ RUN ] MATCHING.Scale130
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 732/752
estimateHomographyRANSAC : support: 749/752
estimateHomographyRANSAC : support: 751/752
estimateHomographyRANSAC : support: 752/752
estimateHomographyRANSAC : best support: 752/752
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.06769, time_cv: 0.060032, time_bruteforce: 0, good_nn: 0.218933, good_ratio: 0.977726, good_clusters: 0.991736, good_ratio_and_clusters: 0.988032
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 655/693
estimateHomographyRANSAC : support: 693/693
estimateHomographyRANSAC : best support: 693/693
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.053359, time_cv: 0.053561, time_bruteforce: 0, good_nn: 0.223564, good_ratio: 0.983696, good_clusters: 0.989899, good_ratio_and_clusters: 0.991342
[ OK ] MATCHING.Scale130 (1678 ms)
[ RUN ] MATCHING.Scale150
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 611/738
estimateHomographyRANSAC : support: 729/738
estimateHomographyRANSAC : support: 736/738
estimateHomographyRANSAC : support: 737/738
estimateHomographyRANSAC : best support: 737/738
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.086046, time_cv: 0.081936, time_bruteforce: 0, good_nn: 0.204644, good_ratio: 0.977472, good_clusters: 0.992424, good_ratio_and_clusters: 0.990515
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 555/583
estimateHomographyRANSAC : support: 581/583
estimateHomographyRANSAC : support: 582/583
estimateHomographyRANSAC : best support: 582/583
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.075088, time_cv: 0.094088, time_bruteforce: 0, good_nn: 0.201473, good_ratio: 0.956028, good_clusters: 0.971326, good_ratio_and_clusters: 0.974271
[ OK ] MATCHING.Scale150 (2397 ms)
[ RUN ] MATCHING.Scale175
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 668/753
estimateHomographyRANSAC : support: 749/753
estimateHomographyRANSAC : support: 751/753
estimateHomographyRANSAC : best support: 751/753
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.107311, time_cv: 0.105543, time_bruteforce: 0, good_nn: 0.192141, good_ratio: 0.94359, good_clusters: 0.945504, good_ratio_and_clusters: 0.954847
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 100/640
estimateHomographyRANSAC : support: 638/640
estimateHomographyRANSAC : support: 639/640
estimateHomographyRANSAC : best support: 639/640
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.096484, time_cv: 0.095599, time_bruteforce: 0, good_nn: 0.19676, good_ratio: 0.959881, good_clusters: 0.982993, good_ratio_and_clusters: 0.967187
[ OK ] MATCHING.Scale175 (2897 ms)
[ RUN ] MATCHING.Scale200
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 224/808
estimateHomographyRANSAC : support: 805/808
estimateHomographyRANSAC : best support: 805/808
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.115702, time_cv: 0.132271, time_bruteforce: 0, good_nn: 0.221995, good_ratio: 0.982798, good_clusters: 0.988864, good_ratio_and_clusters: 0.991337
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 205/715
estimateHomographyRANSAC : support: 494/715
estimateHomographyRANSAC : support: 659/715
estimateHomographyRANSAC : support: 668/715
estimateHomographyRANSAC : support: 670/715
estimateHomographyRANSAC : support: 715/715
estimateHomographyRANSAC : best support: 715/715
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.107037, time_cv: 0.110151, time_bruteforce: 0, good_nn: 0.22975, good_ratio: 0.975452, good_clusters: 0.972431, good_ratio_and_clusters: 0.983217
[ OK ] MATCHING.Scale200 (3554 ms)
[ RUN ] MATCHING.Rotate10Scale90
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 589/589
estimateHomographyRANSAC : best support: 589/589
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.041793, time_cv: 0.038109, time_bruteforce: 0, good_nn: 0.173258, good_ratio: 0.985959, good_clusters: 0.960265, good_ratio_and_clusters: 0.994907
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 514/544
estimateHomographyRANSAC : support: 544/544
estimateHomographyRANSAC : best support: 544/544
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.034609, time_cv: 0.03445, time_bruteforce: 0, good_nn: 0.175552, good_ratio: 0.99651, good_clusters: 0.979381, good_ratio_and_clusters: 0.996324
[ OK ] MATCHING.Rotate10Scale90 (1002 ms)
[ RUN ] MATCHING.Rotate30Scale75
testing sift detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 372/406
estimateHomographyRANSAC : support: 404/406
estimateHomographyRANSAC : best support: 404/406
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.032472, time_cv: 0.031826, time_bruteforce: 0, good_nn: 0.116867, good_ratio: 0.965831, good_clusters: 0.932584, good_ratio_and_clusters: 0.985222
testing my detector/descriptor...
flann matching...
cv flann matching...
filtering matches by ratio test...
filtering matches by clusters...
filtering matches by ratio & clusters
estimating homography...
estimateHomographyRANSAC : support: 372/372
estimateHomographyRANSAC : best support: 372/372
evaluating homography...
nn_score: 0, nn2_score: 0, nn_score_cv: 0, nn2_score_cv: 0, time_my: 0.030064, time_cv: 0.030134, time_bruteforce: 0, good_nn: 0.119293, good_ratio: 0.969231, good_clusters: 0.914286, good_ratio_and_clusters: 0.986559
[ OK ] MATCHING.Rotate30Scale75 (790 ms)
[----------] 18 tests from MATCHING (31037 ms total)

[----------] 2 tests from STITCHING
[ RUN ] STITCHING.SimplePanorama
estimateHomographyRANSAC : support: 954/957
estimateHomographyRANSAC : support: 955/957
estimateHomographyRANSAC : best support: 955/957
bbox: [1284.11, 640.001], [0, -4.6127]
[ OK ] STITCHING.SimplePanorama (227 ms)
[ RUN ] STITCHING.Orthophoto
estimateHomographyRANSAC : support: 185/1120
estimateHomographyRANSAC : support: 347/1120
estimateHomographyRANSAC : support: 354/1120
estimateHomographyRANSAC : support: 551/1120
estimateHomographyRANSAC : best support: 551/1120
estimateHomographyRANSAC : support: 32/1807
estimateHomographyRANSAC : support: 43/1807
estimateHomographyRANSAC : support: 46/1807
estimateHomographyRANSAC : support: 73/1807
estimateHomographyRANSAC : support: 303/1807
estimateHomographyRANSAC : support: 319/1807
estimateHomographyRANSAC : support: 444/1807
estimateHomographyRANSAC : support: 512/1807
estimateHomographyRANSAC : best support: 512/1807
estimateHomographyRANSAC : support: 18/892
estimateHomographyRANSAC : support: 94/892
estimateHomographyRANSAC : support: 152/892
estimateHomographyRANSAC : support: 161/892
estimateHomographyRANSAC : support: 178/892
estimateHomographyRANSAC : support: 256/892
estimateHomographyRANSAC : support: 418/892
estimateHomographyRANSAC : support: 466/892
estimateHomographyRANSAC : best support: 466/892
estimateHomographyRANSAC : support: 21/1042
estimateHomographyRANSAC : support: 140/1042
estimateHomographyRANSAC : support: 152/1042
estimateHomographyRANSAC : support: 222/1042
estimateHomographyRANSAC : support: 274/1042
estimateHomographyRANSAC : support: 359/1042
estimateHomographyRANSAC : support: 377/1042
estimateHomographyRANSAC : support: 383/1042
estimateHomographyRANSAC : support: 405/1042
estimateHomographyRANSAC : best support: 405/1042
bbox: [1278.5, 1625.63], [-182.994, -336.896]
estimateHomographyRANSAC : support: 60/939
estimateHomographyRANSAC : support: 104/939
estimateHomographyRANSAC : support: 384/939
estimateHomographyRANSAC : best support: 384/939
estimateHomographyRANSAC : support: 85/1127
estimateHomographyRANSAC : support: 86/1127
estimateHomographyRANSAC : support: 530/1127
estimateHomographyRANSAC : best support: 530/1127
estimateHomographyRANSAC : support: 88/1850
estimateHomographyRANSAC : support: 277/1850
estimateHomographyRANSAC : support: 508/1850
estimateHomographyRANSAC : support: 656/1850
estimateHomographyRANSAC : best support: 656/1850
estimateHomographyRANSAC : support: 366/1052
estimateHomographyRANSAC : support: 408/1052
estimateHomographyRANSAC : support: 445/1052
estimateHomographyRANSAC : best support: 445/1052
bbox: [1256.42, 864], [-183.285, -994.274]
n stable ortho kpts: : 18071
[ OK ] STITCHING.Orthophoto (7651 ms)
[----------] 2 tests from STITCHING (7878 ms total)

[----------] Global test environment tear-down
[==========] 20 tests from 2 test suites ran. (38915 ms total)
[ PASSED ] 20 tests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants