SFire - составление карт гарей лесных массивов в Quantum GIS (Геоконкурс 2011)
Введение
Важной задачей мониторинга природопользования является учет и картографирование территорий, пострадавших в результате лесных пожаров.
Отслеживанию пожарной динамики и оценке последствий пожаров был посвящен геоконкурс, проведенный порталом GIS - Lab совместно с рядом российских и зарубежных компаний. Описываемый плагин был разработан для данного геоконкурса в рамках магистерской диссертации разработчика.
Ядром плагина является классификатор, состоящий из двух машин опорных векторов. На вход классификатора подается вектор спектральных яркостей пикселя спутникового снимка, с выхода классификатора снимается номер класса, к которому отнесен пиксель. По номерам классов плагин составляет карту гарей и сохраняет ее в файле формата GeoTIFF с привязкой карты к системе координат WGS84 и проекцией карты в проекцию UTM. Пиксели результирующей карты гарей могут быть установлены в следующие значения:
- 3 - пиксель занят лесом;
- 2 - пиксель занят гарью;
- 1 - пиксель не занят ни лесом, ни гарью;
- 0 - пиксель не попал в область интереса (AOI).
Входными данными для составления карты гарей являются:
- "старший" и "младший" спутниковые снимки - спутниковые снимки, по которым плагин составляет обучающее множество векторов, на котором обучает и тестирует качество обучения классификатора.
Обучающее множество векторов образуют вектора спектральных яркостей части пикселей младшего спутникового снимка.
Старший и младший спутниковые снимки должны быть сделаны в период активной вегетации растительности (конец весны - начало лета), примерно в одно и то же время с разницей в один - два года (старший спутниковый снимок должен быть сделан, очевидно, раньше младшего);
- карта леса и область интереса - полигональные векторные слои, сохраненные в файлах формата ESRI Shape.
Карта гарей будет составлена только для пересечения данных двух векторных слоев;
- несколько обрабатываемых спутниковых снимков, для которых будут составлены карты гарей.
В качестве источника спутниковых снимков должен исльзоваться КА "Landsat 5", данные от которого могут быть получены с помощью EarthExplorer.
Спутниковые снимки должны пройти предварительную обработку с целью минимизации помех и для устранения посторонних объектов (облака, дымка и тому подобные вещи).
Установка
Плагин SFire является свободно распространяемым программным обеспечением (лицензия GPLv3).
Имеются следующие требования к программной части вычислительной системы, в которой предполагается запуск плагина:
- ОС GNU/Linux;
- компилятор GNU C Compiler из состава коллекции компиляторов GNU Compiler Collection;
- интерпретатор для языка программирования Python 2;
- средство автоматизации сборки GNU Make;
- система контроля версий Git;
- программные библиотеки Qt4, pyqt4, GDAL / OGR;
- утилита swig;
- ГИС Quantum GIS версии не ниже 1.7.
Для установки плагина необходимо выполнить следующие действия:
- скачать исходный код плагина:
git checkout git://github.com/verzhak/sfire.git
- перейти в каталог с исходным кодом плагина:
cd sfire
- собрать плагин:
make
- создать символьную ссылку на каталог с исходным кодом плагина в каталоге с плагинами для QGIS:
ln -s `pwd` ~/.qgis/python/plugins/
Запуск
Для запуска плагина необходимо выполнить следующие действия:
- запустить qgis;
- подключить плагин (рисунок 1);
- выбрать пункт "Составление карт гарей лесных массивов" в одноименном подменю меню "Модули" панели инструментов QGIS (рисунок 2).
Рисунок 1 - Менеджер модулей QGIS
Рисунок 2 - Меню "Модули"
Составление карты гарей
Составление обучающего множества векторов
Обучающее множество векторов спектральных яркостей пикселей младшего спутникового снимка составляется по старшему и младшему спутниковым снимкам, векторной карте леса и области интереса.
Составление обучающего множества осуществляется на вкладке "Создание обучающего множества векторов" главного окна плагина (рисунки 3, 4 и 5).
Обучающее множество векторов сохраняется в три файла - по одному для каждого из целевых классов.
Рисунок 3 - Вкладка "Создание обучающего множества векторов"
Рисунок 4 - Составление обучающего множества векторов
Рисунок 5 - Обучающее множество векторов составлено
Обучение классификатора
Обучение классификатора производится по обучающему множеству векторов с помощью вкладки "Обучение классификатора" главного окна плагина (рисунки 6, 7 и 8).
По завершению обучения классификатора описатели двух машин опорных векторов, его составляющих, сохраняются каждый в отдельный файл.
Рисунок 6 - Вкладка "Обучение классификатора"
Рисунок 7 - Обучение классификатора
Рисунок 8 - Обучение классификатора завершено
Составление карты гарей
Для составления карты требуется обученный классификатор и спутниковый снимок целевой местности, по характеристикам совпадающей с местностью, на спутниковых снимках которой был обучен классификатор (например, классификатор, обученный на снимках Черноземья, скорее всего, будет эффективно работать только с Черноземьем - для других территорий требуется переобучение классификатора).
Составление карты гарей по некоторому спутниковому снимку производится с помощью вкладки "Формирование карты гарей лесного массива" главного окна плагина (рисунки 9, 10 и 11).
Карта гарей сохраняется в виде растровой маски в файле формата GeoTIFF.
Рисунок 9 - Вкладка "Формирование карты гарей лесного массива"
Рисунок 10 - Формирование карты гарей лесного массива
Рисунок 11 - Карта гарей лесного массива сформирована
Результат
На рисунке 12 приведена карта гарей лесного массива части национального парка "Мещерский", составленная по спутниковому снимку 29-го июля 2011-го года.
В качестве векторной карты леса был использован слой "vegetation-polygon" из числа слоев, сохраненных в наборе shape - файлов в рамках проекта "Данные OpenStreetMap в формате Shape и PostGIS"[1], разрабатываемого порталом GIS - Lab.
Рисунок 12 - Карта гарей лесного массива части национального парка "Мещерский" от 29-го июля 2011-го года
Ссылки
- Код плагина на github;
- Презентация для геоконкурса.
Об авторе
Автор: Акинин М.В., verzhak@gmail.com
Научный руководитель: к.т.н, доцент Конкин Ю.В.
Рязанский государственный радиотехнический университет, кафедра ЭВМ
2011 - 2012 гг.