SFire - составление карт гарей лесных массивов в Quantum GIS (Геоконкурс 2011): различия между версиями
Verzhak (обсуждение | вклад) Нет описания правки |
Verzhak (обсуждение | вклад) Нет описания правки |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 5: | Строка 5: | ||
Важной задачей мониторинга природопользования является учет и картографирование территорий, пострадавших в результате лесных пожаров. | Важной задачей мониторинга природопользования является учет и картографирование территорий, пострадавших в результате лесных пожаров. | ||
Отслеживанию пожарной динамики и оценке последствий пожаров был посвящен | Отслеживанию пожарной динамики и оценке последствий пожаров был посвящен [http://gis-lab.info/projects/geokonkurs2011 геоконкурс], проведенный порталом GIS - Lab совместно с рядом российских и зарубежных компаний. Описываемый плагин был разработан для данного геоконкурса в рамках магистерской диссертации разработчика. | ||
Ядром плагина является классификатор, состоящий из двух машин опорных векторов. На вход классификатора подается вектор спектральных яркостей пикселя спутникового снимка, с выхода классификатора снимается номер класса, к которому отнесен пиксель. По номерам классов плагин составляет карту гарей и сохраняет ее в файле формата GeoTIFF с привязкой карты к системе координат WGS84 и проекцией карты в проекцию UTM. Пиксели результирующей карты гарей могут быть установлены в следующие значения: | Ядром плагина является классификатор, состоящий из двух машин опорных векторов. На вход классификатора подается вектор спектральных яркостей пикселя спутникового снимка, с выхода классификатора снимается номер класса, к которому отнесен пиксель. По номерам классов плагин составляет карту гарей и сохраняет ее в файле формата GeoTIFF с привязкой карты к системе координат WGS84 и проекцией карты в проекцию UTM. Пиксели результирующей карты гарей могут быть установлены в следующие значения: | ||
Строка 20: | Строка 20: | ||
Обучающее множество векторов образуют вектора спектральных яркостей части пикселей младшего спутникового снимка. | Обучающее множество векторов образуют вектора спектральных яркостей части пикселей младшего спутникового снимка. | ||
Старший и младший спутниковые снимки должны быть сделаны в период активной вегетации растительности (конец весны - начало лета), примерно в одно и то же время с разницей в один - два года; | Старший и младший спутниковые снимки должны быть сделаны в период активной вегетации растительности (конец весны - начало лета), примерно в одно и то же время с разницей в один - два года (старший спутниковый снимок должен быть сделан, очевидно, раньше младшего); | ||
* карта леса и область интереса - полигональные векторные слои, сохраненные в файлах формата ESRI Shape. | * карта леса и область интереса - полигональные векторные слои, сохраненные в файлах формата ESRI Shape. | ||
Строка 28: | Строка 28: | ||
* несколько обрабатываемых спутниковых снимков, для которых будут составлены карты гарей. | * несколько обрабатываемых спутниковых снимков, для которых будут составлены карты гарей. | ||
В качестве источника спутниковых снимков должен исльзоваться КА "Landsat 5", данные от которого могут быть получены с помощью | В качестве источника спутниковых снимков должен исльзоваться КА "Landsat 5", данные от которого могут быть получены с помощью [http://earthexplorer.usgs.gov/ EarthExplorer]. | ||
Спутниковые снимки должны пройти предварительную обработку с целью минимизации помех и для устранения посторонних объектов (облака, дымка и тому подобные вещи). | Спутниковые снимки должны пройти предварительную обработку с целью минимизации помех и для устранения посторонних объектов (облака, дымка и тому подобные вещи). | ||
Строка 59: | Строка 59: | ||
# запустить qgis; | # запустить qgis; | ||
# подключить плагин (рисунок | # подключить плагин (рисунок 1); | ||
# выбрать пункт "Составление карт гарей лесных массивов" в одноименном подменю меню "Модули" панели инструментов QGIS (рисунок | # выбрать пункт "Составление карт гарей лесных массивов" в одноименном подменю меню "Модули" панели инструментов QGIS (рисунок 2). | ||
[[Файл:Sfire-qgis-1.png]] | [[Файл:Sfire-qgis-1.png]] | ||
<small>Рисунок 1 - Менеджер модулей QGIS</small> | |||
[[Файл:Sfire-qgis-2.png]] | [[Файл:Sfire-qgis-2.png]] | ||
<small>Рисунок 2 - Меню "Модули"</small> | |||
== Составление карты гарей == | == Составление карты гарей == | ||
Строка 73: | Строка 78: | ||
Обучающее множество векторов спектральных яркостей пикселей младшего спутникового снимка составляется по старшему и младшему спутниковым снимкам, векторной карте леса и области интереса. | Обучающее множество векторов спектральных яркостей пикселей младшего спутникового снимка составляется по старшему и младшему спутниковым снимкам, векторной карте леса и области интереса. | ||
Составление обучающего множества осуществляется на вкладке "Создание обучающего множества векторов" главного окна плагина (рисунки | Составление обучающего множества осуществляется на вкладке "Создание обучающего множества векторов" главного окна плагина (рисунки 3, 4 и 5). | ||
Обучающее множество векторов сохраняется в три файла - по одному для каждого из целевых классов. | Обучающее множество векторов сохраняется в три файла - по одному для каждого из целевых классов. | ||
[[Файл:Sfire-qgis-103.png]] | [[Файл:Sfire-qgis-103.png]] | ||
<small>Рисунок 3 - Вкладка "Создание обучающего множества векторов"</small> | |||
[[Файл:Sfire-qgis-104.png]] | [[Файл:Sfire-qgis-104.png]] | ||
<small>Рисунок 4 - Составление обучающего множества векторов</small> | |||
[[Файл:Sfire-qgis-105.png]] | [[Файл:Sfire-qgis-105.png]] | ||
<small>Рисунок 5 - Обучающее множество векторов составлено</small> | |||
=== Обучение классификатора === | === Обучение классификатора === | ||
Обучение классификатора производится по обучающему множеству векторов с помощью вкладки "Обучение классификатора" главного окна плагина (рисунки | Обучение классификатора производится по обучающему множеству векторов с помощью вкладки "Обучение классификатора" главного окна плагина (рисунки 6, 7 и 8). | ||
По завершению обучения классификатора описатели двух машин опорных векторов, его составляющих, сохраняются каждый в отдельный файл. | По завершению обучения классификатора описатели двух машин опорных векторов, его составляющих, сохраняются каждый в отдельный файл. | ||
[[Файл:Sfire-qgis-106.png]] | [[Файл:Sfire-qgis-106.png]] | ||
<small>Рисунок 6 - Вкладка "Обучение классификатора"</small> | |||
[[Файл:Sfire-qgis-108.png]] | [[Файл:Sfire-qgis-108.png]] | ||
<small>Рисунок 7 - Обучение классификатора</small> | |||
[[Файл:Sfire-qgis-109.png]] | [[Файл:Sfire-qgis-109.png]] | ||
<small>Рисунок 8 - Обучение классификатора завершено</small> | |||
=== Составление карты гарей === | === Составление карты гарей === | ||
Составление карты гарей по некоторому спутниковому снимку производится с помощью вкладки "Формирование карты гарей лесного массива" главного окна плагина (рисунки | Для составления карты требуется обученный классификатор и спутниковый снимок целевой местности, по характеристикам совпадающей с местностью, на спутниковых снимках которой был обучен классификатор (например, классификатор, обученный на снимках Черноземья, скорее всего, будет эффективно работать только с Черноземьем - для других территорий требуется переобучение классификатора). | ||
Составление карты гарей по некоторому спутниковому снимку производится с помощью вкладки "Формирование карты гарей лесного массива" главного окна плагина (рисунки 9, 10 и 11). | |||
Карта гарей сохраняется в виде растровой маски в файле формата GeoTIFF. | Карта гарей сохраняется в виде растровой маски в файле формата GeoTIFF. | ||
[[Файл:Sfire-qgis-111.png]] | [[Файл:Sfire-qgis-111.png]] | ||
<small>Рисунок 9 - Вкладка "Формирование карты гарей лесного массива"</small> | |||
[[Файл:Sfire-qgis-112.png]] | [[Файл:Sfire-qgis-112.png]] | ||
<small>Рисунок 10 - Формирование карты гарей лесного массива</small> | |||
[[Файл:Sfire-qgis-113.png]] | [[Файл:Sfire-qgis-113.png]] | ||
<small>Рисунок 11 - Карта гарей лесного массива сформирована</small> | |||
=== Результат === | === Результат === | ||
На рисунке | На рисунке 12 приведена карта гарей лесного массива части национального парка "Мещерский", составленная по спутниковому снимку 29-го июля 2011-го года. | ||
В качестве векторной карты леса был использован слой "vegetation-polygon" из числа слоев, сохраненных в наборе shape - файлов в рамках проекта "Данные OpenStreetMap в формате Shape и PostGIS"[http://gis-lab.info/projects/osm_shp/region/RU-RYA], разрабатываемого порталом GIS - Lab. | В качестве векторной карты леса был использован слой "vegetation-polygon" из числа слоев, сохраненных в наборе shape - файлов в рамках проекта "Данные OpenStreetMap в формате Shape и PostGIS"[http://gis-lab.info/projects/osm_shp/region/RU-RYA], разрабатываемого порталом GIS - Lab. | ||
[[Файл:Sfire-qgis-map_2011.png]] | [[Файл:Sfire-qgis-map_2011.png]] | ||
<small>Рисунок 12 - Карта гарей лесного массива части национального парка "Мещерский" от 29-го июля 2011-го года</small> | |||
== Ссылки == | == Ссылки == | ||
* | * [https://github.com/verzhak/sfire Код плагина] на github; | ||
* | * [http://www.scribd.com/doc/73507244/Akinin-Geokonkurs-2011 Презентация] для геоконкурса. | ||
<br /> | <br /> | ||
<br /> | <br /> | ||
== Об авторе == | |||
Автор: Акинин М.В., verzhak@gmail.com | |||
Научный руководитель: к.т.н, доцент Конкин Ю.В. | |||
Рязанский государственный радиотехнический университет, кафедра ЭВМ | |||
2011 - 2012 гг. |
Текущая версия от 02:08, 26 марта 2012
Введение
Важной задачей мониторинга природопользования является учет и картографирование территорий, пострадавших в результате лесных пожаров.
Отслеживанию пожарной динамики и оценке последствий пожаров был посвящен геоконкурс, проведенный порталом 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 гг.