Ханты-Мансийский автономный округ (ХМАО) – это не только 50% российской нефти, но и 530 тыс. кв. км лесов. Развитие инфраструктуры месторождений и интенсивные заготовки требуют жесткого контроля вырубок. С 2014 года здесь ведут мониторинг по снимкам со спутников, собрав базу из 15000 записей, включающих информацию о выявленных лесных рубках, но есть проблема: ручное дешифрирование происходит слишком долго и дорого.
Автоматизация через Deep Learning кажется логичным выходом, но готовые решения из мировых практик здесь не работают:
1. География: Популярные модели обучены на экваториальных лесах. Бореальные хвойные леса Сибири имеют совсем иную спектральную подпись.
2. Сезонность: Существующая модель U-Net++ неплохо справляется с «контрастными» зимними снимками (черный лес на белом снегу), но на летних кадрах ее точность падает почти до нуля из-за высокой плотности и сложности растительного покрова.
Плюсы и минусы методов дешифрирования
|
Метод |
Плюсы |
Минусы |
|
Традиционный (QGIS) |
Высокая точность, верификация экспертом. |
Низкая скорость, высокая стоимость, человеческий фактор. |
|
U-Net++ (Зимние снимки) |
Высокий контраст (снег/вырубка). |
Невозможность оперативного контроля в летний период. |
|
Deep Learning (Летние снимки) |
Оперативность, автоматизация. |
Трудности с разделением типов растительности, облачность. |
Поскольку основные вырубки происходят летом, региону нужен инструмент для оперативного анализа космических снимков летнего периода на северных территориях. Мы инициировали сравнительный анализ нейросетевых архитектур, чтобы найти ту, которая сможет эффективно сегментировать вырубки на летних снимках Sentinel-2 в условиях северных широт.
Для обучения мы использовали снимки Sentinel-2 (Level-2A), где каждый снимок представляет собой геометрически выровненное многоканальное изображение, очищенное от влияния атмосферы. Чтобы модель могла отличить свежую вырубку от густой тайги в летний период, классического RGB-спектра недостаточно. Мы задействовали 10 каналов с пространственным разрешением 10 и 20 метров.
Спектральные каналы, вошедшие в датасет
|
Канал |
Длина волны, нм |
Пространственное разрешение, м |
|
B2 |
492,4 |
10 |
|
B3 |
559,8 |
10 |
|
B4 |
664,6 |
10 |
|
B5 |
704,1 |
20 |
|
B6 |
740,5 |
20 |
|
B7 |
782,8 |
20 |
|
B8 |
832,8 |
10 |
|
B8A |
864,7 |
20 |
|
B11 |
1613,7 |
20 |
|
B12 |
2202,4 |
20 |
На снимках Sentinel-2 в естественных цветах (комбинация каналов B04, B03, B02) свежие вырубки выделяются более светлым тоном и характерной геометрией с ровными границами.
Несмотря на кажущуюся очевидность, при автоматическом анализе «летняя» вырубка часто сливается с поросшими травой участками или гарями. Именно поэтому для обучения нейросетей мы используем не только визуальный спектр, но и все 10 каналов данных, включая инфракрасный диапазон.
Для сегментации многоканальных снимков мы разделили испытуемые архитектуры на два лагеря. У каждого свои суперсилы в контексте поиска вырубок.
CNN заточены под поиск пространственных структур. Сверточные слои работают как фильтры, выцепляя границы, текстуры и формы объектов. В наш тест-лист вошли:
U-Net++ / 3D U-Net: Это усовершенствованные варианты U-Net, разработанные для улучшения сегментации изображений за счет повышения точности.
MA-Net: Сеть с мультимасштабным вниманием, которая умеет фокусироваться на объектах разного размера.
FPN-ConvLSTM: Гибрид, объединяющий пирамидальные сети (FPN) и рекуррентные блоки для учета временных изменений (динамика «было-стало»), для задач, где нужно анализировать не просто одно изображение, а последовательность изображений, и при этом точно детектировать объекты разных размеров.
Трансформеры пришли из NLP, но в Computer Vision они произвели революцию благодаря механизму внимания (Self-Attention). Вместо того чтобы смотреть на снимок через «замочную скважину» фильтра, они анализируют связи между всеми частями изображения сразу. Это критично для понимания контекста, например, отличить вырубку от естественного редколесья. Мы тестируем:
SegFormer: Эффективная архитектура, которая не требует позиционного кодирования и отлично справляется с многоканальными данными.
Swin-UperNet: Иерархический трансформер, который строит карты признаков разного разрешения, что идеально подходит для картографирования лесов.
Пайплайн подготовки данных: от спутника до датасета
Чтобы нейросеть научилась видеть изменения, мы не просто «скормили» ей картинки, а провели серьезную предобработку. Основной вызов, это разное разрешение каналов Sentinel-2 (10 и 20 метров).
Мы использовали нейросетевую модель DeepSentinel-2, чтобы «подтянуть» каналы с разрешением 20 м до 10 м. В итоге для каждой точки мы получили 20-канальный стек:
10 каналов - состояние участка «ДО» рубки.
10 каналов - состояние «ПОСЛЕ» рубки.
Этот массив данных мы нарезали на кадры размером 256x256 пикселей.
Маски и разметка
В качестве эталона использовались векторные контуры из базы данных ХМАО. Мы преобразовали их в бинарные маски, соответствующие нашим 20-канальным кадрам.
Итоговый датасет: 2 700 пар снимков за летний период 2017–2022 гг.
Объем: 43 000 кадров, каждый размером 256 на 256 пикселей
Разбиение данных: Обучение — 40000, Валидация — 1000, Тест — 2000.
Стратегия обучения
Процесс обучения строился по принципу «не переучи». Мы использовали механизм Early Stopping: обучение прекращалось, если метрика на валидационной выборке переставала расти, либо по достижении 15 эпох.
Как мы оцениваем успех?
Для оценки точности сегментации мы выбрали F1-меру. Это «золотой стандарт» для задач, где важно соблюсти баланс между полнотой, найти все вырубки, и точностью, не принять за вырубку естественное поредение леса. F1-мера рассчитывается по следующей формуле:
где TP (True Positive) – количество положительных объектов, которые модель верно классифицировала как положительные,
FP (False Positive) – количество отрицательных объектов, которые модель ошибочно классифицировала как положительные,
FN (False Negative) – количество положительных объектов, которые модель ошибочно классифицировала как отрицательные.
На рисунке 4 представлено семейство графиков зависимости значений метрики F1 от количества эпох обучения, рассчитанных по валидационной выборке для каждой исследуемой нами модели. Как видно из рисунка 4, для пяти моделей значение метрики F1 изменяется в достаточно узком интервале от 0,75 до 0,9, а для модели U-Net++ данный показатель изменяется в более широком диапазоне значений от 0,3 до 0,8.
Итоги: Почему победил трансформер?
Сравнив модели на тестовой выборке, мы получили однозначного лидера. Пока U-Net++, «король зимних снимков», провалил летний тест, архитектура SegFormer продемонстрировала приемлемую величину точности выявления лесных рубок, и может быть использована в практических задачах для картографирования новых лесных рубок по паре летних космических снимков.
Результаты сравнения нейронных сетей
|
Модель |
Метрика F1 |
|
SegFormer |
0,767 |
|
Swin-UperNet |
0,712 |
|
3D U-Net |
0,676 |
|
FPN-ConvLSTM |
0,675 |
|
MA-Net |
0,475 |
|
U-Net++ |
0,409 |
Обучение проводилось на Intel Core i7-9800X, 48 Гб RAM и паре NVIDIA RTX 2080Ti. Весь процесс занял 48 часов.
Анатомия SegFormer
Нейронная сеть SegFormer состоит из двух основных модулей кодировщика и декодировщика (рис. 5). Модуль кодировщика состоит из последовательности четырех блоков трансформеров, которые выявляют признаки, относящиеся к искомому объекту, в нашем случае, лесной рубке. Первый блок трансформера позволяет выявить признаки высокого разрешения, а последний блок трансформера – признаки низкого разрешения, что повышает эффективность семантической сегментации изображения.
Эксперимент: Нейросеть против эксперта
Мы протестировали SegFormer в «полевых» условиях на двух участках по 10 000 км². Против модели выступил опытный специалист с классическим визуальным дешифрированием.
Точность: Человек пока впереди. Суммарно в ходе эксперимента было выявлено 219 уникальных полигонов, из них 70 полигонов были найдены как с использованием модели, так и традиционным визуальным способом, и действительно являлись новыми лесными рубками. Модель смогла обнаружить 6 рубок, пропущенных визуальным способом, в то же время специалист визуальным способом выявил 29 рубок, не найденных моделью. Модель также ошибочно приняла за рубки 114 полигонов, выделяя облака и тени от них или другие лесные участки, не содержащие рубок.
Скорость: Безоговорочная победа ИИ. 15 минут против 4 часов на одну пару снимков.
Выводы
Трансформерная нейронная сеть SegFormer продемонстрировала наилучшие показатели точности выявления лесных рубок по сравнению с другими рассмотренными архитектурами. Она может за несколько минут обработать огромные территории ХМАО, подсветив подозрительные участки эксперту, которому останется лишь подтвердить результат.
План на будущее
Для выхода на следующий уровень точности нам предстоит решить две ключевые задачи. Во-первых, собрать больше размеченных снимков и повысить их качество. Во-вторых, целенаправленно разнообразить датасет, добавив разные типы рубок и объекты-обманки, которые модель сейчас путает с вырубками.
Источник


