Я составил список углов, которые я получил, используя обнаружение углов Харриса.
Теперь мне нужно найти 4 дополнительные точки, которые будут представлять собой углы прямоугольника.
Я знаю, что могу получить два верхних и нижних диагональных угла, используя
max(C);
min(C);
Где C - матрица из n строк со столбцом для x и y, например
x y
0 1
2 3
4 5
6 6
Но как мне получить два других угла?
Я думал, что могу повернуть матрицу и снова использовать min и max, но, конечно, это просто возвращает мне огромную матрицу из n столбцов (и я хочу матрицу из 2 столбцов)
Мне кажется, что ответ очевиден, но я молчу :(
C
? Координаты на границе? Точки в белой области? Черная зона? Использованиеmin
иmax
очень опасно, потому что нет гарантии, что возвращаемые значения принадлежат одному и тому же углу. Вы вводите черно-белое изображение или этоC
? Не могли бы вы загрузить доступные вам исходные данные (будь то черно-белое изображение или матрица ограниченного размера)?..? - person Dev-iL   schedule 03.04.2017