Обнаружение контура

#algorithm #computational-geometry

#алгоритм #вычислительная геометрия

Вопрос:

Я не мог понять, как алгоритм обнаружения контуров работает на 2D-графике в целом. Проверяют ли алгоритмы обнаружения контуров все точки в пространстве, чтобы найти каждую линию контура? Может кто-нибудь объяснить интуитивно?

Комментарии:

1. Вы имеете в виду что-то вроде Canny?

2. Андер Бигури, я отредактировал вопрос

3. Хм, ваш вопрос намного интереснее того, что я понял. Я не знаю, как на это ответить, но я попытаюсь провести некоторое исследование. Хороший вопрос.

Ответ №1:

Многое будет зависеть от того, что именно представляет собой ваше приложение. Вам нужны все контурные линии или только одна? С каких данных вы начинаете — точек, расположенных на регулярной сетке, случайных выборок или, возможно, функции, которую вы можете оценить в любой заданной точке. Информация о том, насколько хорошо данные ведут себя, также полезна — есть ли у них несколько больших просмотров или они очень неровные.

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

Например, предположим, что у нас есть данные, расположенные на регулярной сетке, и начальная точка находится в одном квадрате сетки. Вы можете исследовать соседние квадраты и посмотреть на знак функции в углах. Если все углы положительные или все отрицательные, мы знаем, что контур не может проходить через квадрат, и мы игнорируем этот квадрат. Если контур хорошо себя ведет, должно быть ровно два квадрата с изменениями знака, выберите один, перейдите к этому квадрату и повторите. В конечном итоге вы будете следовать контуру обратно к началу или, возможно, к краю вашего домена.

Найти отправные точки сложнее. Вы можете посмотреть вдоль границ вашего домена или использовать некоторую форму выборки.

Комментарии:

1. Я ответил на другой вопрос, поскольку это более конкретно. Будучи монотонным, просто найти начальные точки и выполнить нулевое следование.