info@geojetexploration.com +7 (778) 999-38-53

Кластерный анализ спутниковых снимков: автоматическое районирование перспективных площадей

Введение в методы обучения без учителя (Unsupervised Learning) для создания литологических карт

1. Введение: Проблема субъективности в геологическом картировании

Традиционный процесс создания геологической карты базируется на визуальной интерпретации. Геолог-дешифровщик смотрит на синтезированное изображение (RGB), различает цвета и текстуры, и вручную обрисовывает полигоны: «Здесь, кажется, гранит, а здесь — осадочные породы».

Этот подход имеет три фундаментальных уязвимости:

  1. Субъективность: Границы между литологическими разностями часто размыты (градиентны). Где один геолог проведет контакт, другой сместит его на 500 метров.
  2. Спектральная ограниченность: Человек оперирует только тремя каналами (Red, Green, Blue) одновременно. Спутник ASTER передает 14 каналов, WorldView-3 — 16. Мозг человека физически не может воспринимать 14-мерное пространство.
  3. Трудоемкость: Ручная векторизация участка в 1000 кв. км занимает недели.

GeoJet Exploration переходит к парадигме Автоматизированного Кластерного Анализа. Это применение алгоритмов машинного обучения без учителя (Unsupervised Classification), которые группируют пиксели изображения исключительно на основе их спектральной статистики, без предварительных гипотез о геологии.

Мы позволяем данным «говорить самим за себя». Алгоритм находит естественные группы пикселей (кластеры), обладающие уникальными спектральными сигнатурами, а геолог затем присваивает этим кластерам геологические имена. Это превращает картирование из искусства рисования в строгую математическую процедуру.

2. Математическая физика кластеризации

Чтобы понять, как компьютер разделяет базальты и риолиты, нужно представить спутниковый снимок не как картинку, а как матрицу данных.

2.1. Многомерное признаковое пространство (Feature Space)

Каждый пиксель снимка характеризуется вектором яркости. Если мы используем данные Sentinel-2 (10 каналов), то каждый пиксель — это точка в 10-мерном пространстве.

  • Ось X — яркость в синем канале.
  • Ось Y — яркость в зеленом.
  • Ось Z — яркость в ближнем ИК (NIR).
  • …и так далее до 10-го измерения.

В этом пространстве пиксели, принадлежащие к одной породе (например, гранитам), будут группироваться в «облако» (кластер). Пиксели воды будут в другом углу пространства, пиксели растительности — в третьем. Задача алгоритма — найти эти облака и провести между ними разделяющие гиперплоскости.

2.2. Метрики близости: Как измерить «похожесть»?

Ключевой вопрос кластеризации: как определить, что пиксель А похож на пиксель Б? Мы используем две основные метрики:

  1. Евклидово расстояние (Euclidean Distance): Это прямая линия между двумя точками в многомерном пространстве.
    • Формула (словами): Корень квадратный из суммы квадратов разностей яркостей по каждому каналу.
    • Применение: Хорошо работает, когда яркость является важным признаком (например, разделение светлых известняков и темных сланцев).
    • Недостаток: Чувствительно к теням. Теневая часть скалы будет иметь большое евклидово расстояние от освещенной части той же скалы, и алгоритм ошибочно отнесет их к разным классам.
  2. Спектральный угол (Spectral Angle Mapper — SAM): Это угол между двумя векторами, выходящими из начала координат.
    • Физический смысл: Угол определяет форму спектральной кривой, игнорируя ее амплитуду (яркость).
    • Преимущество: Освещенный гранит и гранит в тени имеют разную яркость (длину вектора), но одинаковую форму спектра (направление вектора). Угол между ними равен нулю. SAM идеально подходит для горных районов с резким рельефом.

[ТЕХНИЧЕСКИЙ НЮАНС] В системе VEDART RS мы часто используем гибридный подход: сначала нормализуем векторы яркости на единичную сферу (убираем влияние рельефа), а затем применяем Евклидово расстояние. Это дает точность SAM при скорости вычисления Евклида.

3. Алгоритмическое ядро: K-Means vs ISODATA

В индустриальной практике мы используем два основных итеративных алгоритма. Рассмотрим их механику «под капотом».

3.1. Алгоритм K-Means (К-средних)

Это жесткий алгоритм, требующий от геолога заранее задать количество классов (K).

Алгоритм:

  1. Инициализация: Компьютер случайным образом бросает в многомерное облако точек K центроидов (центров будущих классов).
  2. Присвоение: Каждый пиксель изображения проверяется: к какому центроиду он ближе всего? Пиксель окрашивается в цвет этого центроида.
  3. Пересчет: Вычисляется среднее арифметическое положение всех пикселей, попавших в класс. Центроид перемещается в этот новый центр масс.
  4. Итерация: Шаги 2 и 3 повторяются до тех пор, пока центроиды не перестанут двигаться (сходимость алгоритма).
  • Плюсы: Быстрый, понятный. Идеален, когда мы точно знаем, что ищем (например, разделить сцену строго на 3 класса: лес, вода, камень).
  • Минусы: Если мы задали K=5, а реальных типов пород на снимке 10, алгоритм принудительно «слепит» разные породы в один класс, создавая «химеру».

3.2. ISODATA (Iterative Self-Organizing Data Analysis Technique)

Это интеллектуальная эволюция K-Means. Это динамический алгоритм, который может сам менять количество классов в процессе работы.

Особенности логики:

  • Расщепление (Splitting): Если дисперсия (разброс) внутри одного кластера слишком велика (то есть в кластер попали непохожие пиксели), алгоритм автоматически расщепляет его на два.
  • Слияние (Merging): Если расстояние между центрами двух кластеров меньше заданного порога (кластеры статистически неразличимы), алгоритм сливает их в один.
  • Удаление: Если в кластер попало слишком мало пикселей (шум), он удаляется.

[СОВЕТ ЭКСПЕРТА] Для первичного анализа новой площади (Greenfield) всегда используйте ISODATA. Задайте широкий диапазон: от 10 до 20 классов. Пусть алгоритм сам найдет оптимальную структуру данных. K-Means используйте только для финальной «полировки», когда количество литологических единиц уже известно.

4. Технологический процесс (Workflow) обработки

В GeoJet Exploration мы применяем строгий протокол кластерного анализа, состоящий из 5 этапов.

Этап 1: Подготовка данных и удаление корреляции

Сырые данные (Raw Bands) часто сильно коррелируют. Запускать кластеризацию на коррелированных каналах неэффективно — это увеличивает вычислительную нагрузку без прироста информации.

  • Решение: Мы часто подаем на вход кластеризатора не исходные каналы, а Главные Компоненты (PC1, PC2, PC3…) или MNF-трансформанты. Это ортогонализированное пространство, где кластеры разделяются наиболее четко.

Этап 2: Маскирование нецелевых объектов

Нет смысла тратить ресурсы на классификацию облаков или воды. Мы создаем бинарную маску (Mask) и исключаем эти пиксели из расчета. Статистика считается только по «полезным» пикселям (Land pixels).

Этап 3: Запуск итераций (The Crunch)

На типичной сцене Landsat (185×185 км) около 40 миллионов пикселей. Алгоритм ISODATA делает 10–20 итераций пересчета расстояний для каждого пикселя. На рабочих станциях с GPU-ускорением (CUDA) это занимает от 15 до 40 минут.

  • Результат: Растровый файл, где каждый пиксель имеет значение от 1 до N (номер класса). Это еще не геологическая карта, это спектральная карта.

Этап 4: Пост-обработка (Sieving and Clumping)

Сырой результат кластеризации страдает эффектом «Соль и перец» (Salt-and-Pepper noise) — множество одиночных пикселей другого класса внутри массивного тела.

  • Sieving (Просеивание): Алгоритм ищет изолированные группы пикселей (меньше, например, 5 штук) и перекрашивает их в цвет окружающего большинства.
  • Smoothing (Сглаживание): Применение фильтра большинства (Majority Filter, окно 3×3 или 5×5) для выравнивания границ и придания им «картографического» вида.

Этап 5: Интерпретация и перекодировка (Labeling)

Самый ответственный этап. Геолог накладывает полученную карту классов на исходный снимок (RGB) и начинает «присваивать имена».

  • Класс №1 (Красный): Совпадает с выходами известняков. Присваиваем имя «Карбонаты».
  • Класс №2 (Зеленый) и Класс №5 (Синий): Оба попадают на область гранитов. Видимо, это граниты разной степени выветривания. Объединяем их в один класс «Гранитоиды».
  • Класс №7: Совпадает с тенями от облаков. Помечаем как «Unclassified».

5. Кейс-стади: Районирование сложного интрузива (Кольский полуостров)

Задача: Выполнить расчленение крупного (20×20 км) щелочного массива, состоящего из концентрических зон фойяитов, луявритов и уртитов. Визуально на снимке породы выглядят одинаково серыми.

Решение:

  1. Использованы данные ASTER (VNIR + SWIR + TIR). Всего 14 каналов.
  2. Применен алгоритм ISODATA. Параметры: Min classes = 10, Max classes = 20, Max Iterations = 20.
  3. Результат: Алгоритм выделил 16 спектральных классов.
  4. Анализ:
    • Классы 1-4 четко легли на периферийную часть массива (фойяиты).
    • Классы 8-10 образовали кольцо внутри массива. Спектральный анализ показал наличие нефелина (уртиты).
    • Класс 15 выделился узкими дугами. При наложении на магнитную карту оказалось, что это зоны концентрации титаномагнетита.
  5. Итог: Автоматическая классификация позволила выявить внутреннюю зональность массива, которую геологи пропускали при маршрутном картировании из-за плохой обнаженности. Время работы: 2 дня. Традиционный метод: 2 месяца полевых работ.

6. Глубинный анализ: Спектральные vs Информационные классы

Инженер должен понимать фундаментальное различие между тем, что находит машина, и тем, что нужно человеку.

  • Спектральный класс (Spectral Class): Группа пикселей с одинаковой статистикой яркости.
    • Пример: «Темный влажный гранит северного склона» и «Светлый сухой гранит южного склона» — это ДВА разных спектральных класса. Для машины они чужие.
  • Информационный класс (Information Class): Геологическая сущность.
    • Пример: Геологу нужно, чтобы и северный, и южный склоны назывались просто «Гранит».

Проблема: Отношение «Спектральный класс» к «Информационному классу» — это Many-to-One (Многие к одному). Геолог должен вручную объединить 5-6 спектральных классов (тени, освещенные склоны, выветрелые участки), чтобы получить один литологический полигон. Обратная ситуация (One-to-Many) — это катастрофа. Если один спектральный класс включает в себя и гранит, и песчаник (потому что они случайно совпали по цвету), разделить их постфактум невозможно. В этом случае нужно возвращаться назад и добавлять новые каналы (например, тепловые) или менять параметры алгоритма.

7. Интеграция с VEDART RS: Supervised refinement

В экосистеме GeoJet Exploration мы часто используем гибридный подход. Мы начинаем с кластеризации без учителя (Unsupervised) для быстрой оценки гетерогенности площади.

Затем, получив кластерную карту, мы выбираем наиболее репрезентативные участки каждого кластера и используем их как Обучающую выборку (Training Data) для более мощных алгоритмов классификации с учителем (Supervised Learning), таких как:

  • Support Vector Machine (SVM): Метод опорных векторов, который строит оптимальные разделяющие гиперплоскости сложной формы.
  • Random Forest: Ансамбль деревьев решений, который отлично справляется с зашумленными данными и позволяет оценить «важность переменных» (какой канал спутника внес наибольший вклад в разделение пород).

Кластеризация здесь выступает как инструмент генерации обучающей выборки. Это решает проблему «холодного старта», когда у нас нет наземных данных для обучения нейросети. Мы используем статистику самого снимка для самообучения системы.

8. Заключение: Объективность против Интуиции

Кластерный анализ не заменяет геолога. Он заменяет рутину. Он снимает с человека задачу перебора миллионов пикселей и поиска оттенков серого. Алгоритм предоставляет специалисту карту спектральной неоднородности территории. Это каркас, на который геолог натягивает свои знания о генезисе, тектонике и стратиграфии.

Преимущество кластерного подхода для Индустриального Партнера:

  1. Воспроизводимость: Если вы запустите алгоритм завтра на тех же данных, вы получите тот же результат. Ручная карта зависит от настроения геолога и освещенности в кабинете.
  2. Детализация: Алгоритм не ленится. Он выделит дайку шириной 2 пикселя (60 метров) в самом дальнем углу снимка, которую глаз человека пропустил бы.
  3. Скорость: Экспресс-оценка лицензионной площади (License Area Evaluation) выполняется за часы, а не недели.

FAQ: Технический блиц

Вопрос 1: Сколько классов (кластеров) лучше задавать? Ответ: Правило большого пальца: задавайте в 2-3 раза больше классов, чем ожидаемое количество геологических пород. Если вы ожидаете найти 5 пород, ставьте 15 классов. Легче потом объединить избыточные классы, чем пытаться разделить смешанные.

Вопрос 2: Работает ли это для поиска золота? Ответ: Косвенно. Золото часто приурочено к зонам гидротермальных изменений (кварц, серицит, каолинит). Эти зоны имеют уникальный спектр. Кластеризация выделит их в отдельный класс (например, «Класс №12»). Если вы проверите один пиксель из Класса №12 и найдете там изменения, то с высокой вероятностью весь Класс №12 представляет интерес.

Вопрос 3: В чем отличие от классификации нейросетями (Deep Learning/CNN)? Ответ: Кластеризация (K-Means/ISODATA) работает с пикселем как отдельной единицей. Сверточные нейросети (CNN) работают с контекстом (паттернами, текстурами, формами). CNN мощнее, но требуют огромной размеченной базы данных для обучения. Кластеризация работает «здесь и сейчас» без учителя, что делает её незаменимой на ранних стадиях разведки (Greenfield) в неизученных регионах.

ОСТАВЬТЕ ЗАЯВКУ НА КОНСУЛЬТАЦИЮ
НАШИ ЭКСПЕРТЫ СВЯЖУТСЯ С ВАМИ
В ТЕЧЕНИЕ 1 РАБОЧЕГО ДНЯ

    Заполняя данную форму вы соглашаетесь на обработку персональных данных «ГЕОДЖЕТ-ГРУПП» в соответствии с законом №152-ФЗ «О персональных данных» от 27.07.2006

    ЭТОТ РАЗДЕЛ НАХОДИТСЯ
    В РАЗРАБОТКЕ

    loading

    Спасибо за ваше терпение!

    Мы работаем над этим разделом
    и скоро он будет доступен для вас.

    Следите за новостями
    и обновлениями.

    THIS SECTION IS CURRENTLY
    UNDER DEVELOPMENT

    loading

    Thank you for your patience.

    We’re actively working on this page and will make it available shortly.

    Please stay updated for further
    announcements.