Яка різниця між інструментом «Створення полігонів Тіссена» (ArcGIS) та інструментом «Вороних полігонів» (QGIS)?


12

Чи багатокутники Тіссена те саме, що багатокутники Вороного? Я використовую ArcMap 10, а також QGIS 2.4, і я хотів би дізнатися точну різницю (якщо така є) між двома методами.


Чи можете ви охарактеризуйте будь-яке дослідження, яке ви зробили з цього питання, і що саме вам потрібно роз'яснити?
Аарон

1
Ми насправді вели дискусію щодо того, чи поєднувати два теги на мета: meta.gis.stackexchange.com/questions/3677/…
Chris W

Відповіді:


20

Так, вони те саме. У галузі ГІС ми, як правило, називаємо їх полігонами Тіссена, після американського метеоролога, який часто відвідував їх використання. В інших галузях, зокрема математиці та інформатиці, їх в основному називають діаграмами Вороного на честь математика Георгія Вороного. Обидва варіанти використання є прийнятними.


Хоча концепція однакова, мені цікаво, чи реалізація в кожному програмному забезпеченні ...
Chris W

@ChrisW Це варте питання, але досить важкий, щоб відповісти, я здогадуюсь. Я думаю, що, як і більшість просторових проблем, існує кілька способів прийти до рішення, який би припустив, що існують різні реалізації.
WhiteboxDev

Вибачте, я був більш риторичним. Я просто хотів зазначити, що хоча поняття були однакові, і ви отримаєте загалом однаковий результат (або принаймні тип результату) у двох програмних програм, то як вони проходять, це може бути не однаковим, і результати можуть бути не бути точно таким же. В основному вибираєте читати більше питання, ніж це дійсно може бути необхідним, але може мати значення, якщо ви заглибитесь досить глибоко.
Кріс Ш

@ChrisW Так, саме так я інтерпретував ваше запитання. І це дійсно дійсна точка, яку ви піднімаєте. Я думаю, що деталі реалізації будь-яких двох ГІС, що пропонують полігон Тіссена, призведуть до невеликих відмінностей так само, як інструмент накопичення потоку або вододіл, застосований до одних і тих же даних у двох різних ГІС, може дещо відрізнятися. Між теоретичною роботою алгоритму та його реалізацією комп'ютерного коду існує багато чого.
WhiteboxDev

@ChrisW Між іншим, саме ваше питання привело мене до поняття програмного забезпечення «відкритого доступу» та Whitebox GAT в першу чергу. Якби ОП запитала, як працює інструмент полігона Тіссена Whitebox GAT, відповідь була б такою ж простою, як натискання кнопки «Переглянути код» у діалоговому вікні інструменту. Дивіться пов’язаний блог для детальної інформації про те, що я маю на увазі: whiteboxgeospatial.wordpress.com/2014/05/04/…
WhiteboxDev

9

Ми не можемо знати точну різницю, оскільки не можемо побачити вихідний код реалізації ESRI. Однак з короткого погляду випливає, що в двох реалізаціях насправді використовується той самий метод, який є грубим перекладом класичного алгоритму оперативної лінії Стівена Фортуна .

Тут ви можете ознайомитись із фактичним вихідним кодом, який використовується у QGIS. Він включає наступний опис:

For programmatic use two functions are available:

   computeVoronoiDiagram(points)

        Takes a list of point objects (which must have x and y fields).
        Returns a 3-tuple of:

           (1) a list of 2-tuples, which are the x,y coordinates of the
               Voronoi diagram vertices
           (2) a list of 3-tuples (a,b,c) which are the equations of the
               lines in the Voronoi diagram: a*x + b*y = c
           (3) a list of 3-tuples, (l, v1, v2) representing edges of the
               Voronoi diagram.  l is the index of the line, v1 and v2 are
               the indices of the vetices at the end of the edge.  If
               v1 or v2 is -1, the line extends to infinity.

   computeDelaunayTriangulation(points):

        Takes a list of point objects (which must have x and y fields).
        Returns a list of 3-tuples: the indices of the points that form a
        Delaunay triangle.

Зараз ми не можемо побачити фірмовий код ESRI, який керує їх інструментом , але опис їх документації відразу виявляє, що основа обох інструментів однакова:

Проксимальні багатокутники Тіссена будуються так:

Усі точки тріангульовані в трикутну неправильну мережу (TIN), яка відповідає критерію Делоне. Перпендикулярні бісектриси для кожного краю трикутника генеруються, утворюючи ребра багатокутників Тіссена. Місце, в якому перетинаються бісектриси, визначає розташування вершин багатокутника Тіссена.

Фактичні нюанси коду, що керує двома, очевидно відрізняються, оскільки було показано, що в перекладі Білла Саймона відомі помилки , яких немає у версії ESRI.

Існує (як було сказано в коментарях вище) кілька інших способів генерування діаграм Вороного, навіть у ГІС, наприклад, ця растрова методологія . Існують також інші методи, засновані на векторному для генерування діаграм Вороного в ГІС.

У кожного з методів є кілька переваг і недоліків. Наприклад, алгоритм Фортуна є відносно швидким і добре задокументованим, але в даний час невідомий спосіб генерувати мультиплікативно зважені діаграми Вороного за допомогою його прямої реалізації.

Растрові методи, як правило, набагато повільніше обчислюються, але дозволяють створювати різні типи діаграм Вороного ( наприклад, найдальші точкові діаграми Вороного ) без повністю винайдення методології.

Повне розкриття: Я працював науковим співробітником професора, який написав документ за методологією створення растрових діаграм.


TL; DR: Хоча реальні реалізації дещо відрізняються, вони базуються на одному і тому ж алгоритмі, і обидва повинні давати однаковий результат (окрім кількох крайніх випадків, які призводять до помилок, зазначених у вищезазначеному питанні Дена Паттерсона).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.