Перш ніж розпочати будь-який аналіз, я настійно рекомендую застосувати фільтр до даних, щоб очистити ефект "солі та перцю". Будь-який алгоритм буде боротися з поточною структурною схемою ваших даних. Проста фокусна більшість, ймовірно, дасть небажані результати. Більш надійним методом є застосування ситового підходу, де можна вказати одиницю мінімального відображення. Це можна зробити за допомогою функції gdal_sieve.py в GDAL, raster > analysis > sieve
функції в QGIS або функції сита в панелі інструментів градієнтів ArcGIS .
Це схоже на те, що можна вирішити з операторами математичної морфології (наприклад, витяг доріг із зображень ). Я б міг уявити, що оператор розширення, за яким йде оператор закриття, прояснить коридори. Потім ви можете застосувати оператор "Відкриття", щоб видалити коридори та відрізняти растри, щоб вивести ідентифіковані коридори як окремі об'єкти. Ці типи функцій декомпозиції зображень дещо автоматизовані в програмному забезпеченні MSPA та GUIDOS, але, знову ж таки, помітно вплинуть розриви у ваших даних.
Існує плагін QGIS для MSPA , а також доступні функції в GRASS (доступні через графічний інтерфейс QGIS). Однією з проблем з MSPA та GUIDOS є те, що ви обмежені в розмірі зображення. На жаль, у програмному забезпеченні ESRI морфологічні оператори доступні лише у розширенні ArcScan . За допомогою деякого копання ви знайдете й інші програмні параметри, а також методи визначення морфологічних операторів за допомогою растрової алгебри із власні матрицями ядра.
Інший підхід - це методи фільтрації виявлення ребер, такі як оператор ядра Sobal . Існує собальна функція в ArcGIS Gradient Metrics Toolbox , а також у пакеті prostEco R. Перевагою реалізації R є те, що ви можете повернути функцію градієнта оператора, тоді як реалізація ArcGIS повертає лише функцію 1-го порядку (що може бути все, що вам потрібно). Я вважаю, що панель інструментів Orfeo (доступна як доповнення QGIS) має функцію "ультразвуковий" у функції EdgeExtraction.