Значение параметра допуска Simplify

45

Стандартными параметрами упрощенного алгоритма Дугласа-Пекера являются геометрия и допуск (например, ST_Simplify в PostGIS). Что означает параметр допуска ? Я знаю, что чем больше значение, тем грубее будет геометрия. Но есть ли у числа какая-либо единица или оно просто произвольно?

ejel
источник

Ответы:

41

Допуск - это расстояние . Грубо говоря, любые «покачивания» на кривой, которые отличаются от прямой на меньшую величину, чем эта величина, будут выпрямлены. Алгоритм находит наиболее экстремальные покачивания, которые превышают допуск, закрепляет точки, в которых они больше всего отклоняются от прямой траектории, а затем рекурсивно применяется к дугам между закрепленными покачиваниями.

Допуск должен быть выражен в тех же единицах, которые используются программным обеспечением для выполнения алгоритма. (Это будет зависеть от того, использует ли он координаты как сохраненные или как проецируемые «на лету» для отображения или анализа.) Иллюстрированное описание появляется в статье Википедии об алгоритме Дугласа-Пекера.

Whuber
источник
Отличное объяснение +1.
Дерек Суингли
1
Обычно это значение параметра допуска должно быть равно целевому разрешению.
Жюльен
1
@julien Это имеет смысл. Мне всегда нравится понимать причины, лежащие в основе таких эмпирических правил, потому что по моему опыту многие такие выводы не подтверждаются при более тщательном рассмотрении. (И приятно удивляться такому: вы всегда чему-то учитесь.) Не могли бы вы поэтому поделиться своими мыслями о том, почему допуск должен равняться «целевому разрешению» (и каково именно это разрешение)?
whuber
6

Не видел его в ссылке, которую вы разместили, но нашел это:

Единицы допуска совпадают с проекцией входной геометрии.

http://revenant.ca/www/postgis/workshop/advanced.html#processing-functions

Дерек Суингли
источник
1
Понимаю. Но что именно это означает, когда говорят, что геометрия WGS84 (широта / долгота) и устанавливается допуск 1,0? Ошибка в пределах 1 градуса? Все еще немного смущен.
Эйл
1
Я бы не сказал «ошибка в пределах 1 градуса» ... посмотрите на страницу википедии об алгоритме, там есть хорошая графика и хорошее объяснение: en.wikipedia.org/wiki/…
Дерек Свингли