Опыт классификации космоснимка Landsat с помощью Semi-Automatic Classification Plugin в QGIS: различия между версиями

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
 
(не показано 12 промежуточных версий 2 участников)
Строка 1: Строка 1:
  {{Статья|Черновик}}
  {{Статья|Опубликована|landsat_qgis_scp}}
'''Опыт классификации снимка Landsat с помощью QGIS и Semi-Automatic Classification Plugin.'''


{{Аннотация|Данная статья описывает опыт работы с Semi-Automatic Classification Plugin для QGIS для классификации снимка Landsat с целью выявления лесонарушений на примере НП "Орловское полесье", а также содержит пошаговую инструкцию для лесного дешифрирования снимка с помощью данного плагина.}}


'''''Карпачев Андрей Петрович, научный сотрудник НП "Орловское полесье"''
'''''Карпачев Андрей Петрович, научный сотрудник НП "Орловское полесье"''
Данная статья описывает опыт работы с Semi-Automatic classification plugin для Qgis для классификации снимка Landsat с целью выявления лесонарушений на примере НП "Орловское полесье", а также содержит пошаговую инструкцию для лесного дешифрирования снимка в плагине.


=Цели проекта=
=Цели проекта=
Строка 14: Строка 11:
2) Общее дешифрирование фрагмента территории Орловско-Брянско-Калужского региона.
2) Общее дешифрирование фрагмента территории Орловско-Брянско-Калужского региона.


Для реализации классификации были выбраны тестовые участки на основе материалов лесоустройства. Примеры этих участков показаны на рисунке
Для реализации классификации были выбраны тестовые участки на основе материалов лесоустройства. Примеры этих участков показаны на рисунке ниже.


[[Файл:%D0%96%D0%B0%D0%B1%D0%B0_1.png|frame|центр|Отметка тест-участков на местности: 1 - лиственный лес
[[Файл:landsat_qgis_scp_01.png|500px|центр|Отметка тестовых участков на местности: 1 - лиственный лес
2 - хвойный лес
2 - хвойный лес
3 - нарушенный лес, усыхание
3 - нарушенный лес, усыхание
Строка 26: Строка 23:
==1. Подготовка==
==1. Подготовка==


а) На этом этапе мы должны образовать область (тестовый участок) на базе космоснимка Landsat-8 за сентябрь 2014 года на территорию Орловско-Брянско-Калужского региона, включая границы НП «Орловское полесье» полностью. Космоснимок можно собрать непосредственно в QGis, как показано [http://gis-lab.info/qa/qgis-landsat-merge.html здесь]. Для данного проекта нам понадобятся  6 диапазонов: R, G, B, ближний ИК, коротковолновый ИК-1 и ИК-2. В работе необходимо использовать изображение, полученное из шести каналов (2-7), иначе плагин отказывается строить спектрограммы (однако, классификация выполнена будет), а этот момент важен для последующих расчётов и анализа.  
а) На этом этапе мы должны подготовить область (тестовый участок) на базе космоснимка Landsat 8 за сентябрь 2014 года на территорию Орловско-Брянско-Калужского региона включая границы НП «Орловское полесье». Космоснимок можно "собрать" непосредственно в QGIS, как показано [http://gis-lab.info/qa/qgis-landsat-merge.html здесь]. Для данного проекта нам понадобятся  6 диапазонов: R, G, B, ближний ИК, коротковолновый ИК-1 и ИК-2. В работе необходимо использовать изображение, полученное из шести каналов (2-7), иначе плагин отказывается строить спектрограммы (однако, классификация выполнена будет), а этот момент важен для последующих расчётов и анализа.  


==2. Начало работы==
==2. Начало работы==


Полученный растр соответствующей кнопкой добавляем в QGis. [[Файл:Kn1.png]]
Полученный растр добавляем в QGIS с помощью соответствующей кнопки. [[Файл:landsat_qgis_scp_02.png]]




Чтобы добавить наш космоснимок непосредственно в плагин, нажимаем на кнопку "обновить" в плагине (рисунок 1)
Чтобы добавить наш космоснимок непосредственно в плагин, нажимаем на кнопку "обновить" в плагине (рисунок ниже).


[[Файл:A1.png|frame|центр|Загрузка собранного изображения и включение его в плагин]]
[[Файл:landsat_qgis_scp_03.png|500px|центр|Загрузка собранного изображения и загрузка его в плагин]]


Для более точной визуализации объекта наблюдения можно использовать  функцию RGB : представить снимок в синтезированных и натуральных цветах (рисунок 2)
Для более точной визуализации объекта наблюдения можно использовать  функцию "RGB: представить снимок в синтезированных и натуральных цветах".


[[Файл:%D0%902.png|frame|центр|Функция плагина RGB]]
[[Файл:landsat_qgis_scp_04.png|frame|центр|Функция плагина RGB]]


==3.Формирование директорий==
==3.Формирование директорий==
Строка 45: Строка 42:
После загрузки космоснимка нам необходимо сформировать директории, куда впоследствии запишутся файлы ROI и файлы сигнатур.  
После загрузки космоснимка нам необходимо сформировать директории, куда впоследствии запишутся файлы ROI и файлы сигнатур.  


Переходим в часть плагина, отвечающего за регионы интереса (ROI)(рисунок 3).
Переходим в раздел интерфейса плагина, отвечающего за регионы интереса (ROI):


[[Файл:%D0%90%D0%903.png|frame|центр|Часть плагина, отвечающая за формирование, редактирование и запись ROI]]
[[Файл:landsat_qgis_scp_05.png|frame|центр|Часть плагина, отвечающая за формирование, редактирование и запись ROI]]




Нажимаем на кнопку  New shp  и задаём на рабочем столе папку с названием ROI, открываем и сохраняем документ с названием ROI (сюда будут записываться наши регионы интереса).  
Нажимаем на кнопку  "New shp" и задаём на рабочем столе папку с названием ROI, затем открываем и сохраняем документ с названием ROI (сюда будут записываться наши регионы интереса). Переходим в раздел интерфейса плагина, отвечающего за формирование сигнатур и классификацию.
переходим на часть плагина, отвечающего за формирование сигнатур и классификацию.


Нажимаем на кнопку SAVE , и на рабочем столе создаем папку SIG, в которой будет находиться документ с названием SIG. Здесь будут храниться наши сигнатуры для дальнейшей классификации.
Нажимаем на кнопку "SAVE" и на рабочем столе создаем папку SIG, в которой будет находиться документ с названием SIG. Здесь будут храниться наши сигнатуры для дальнейшей классификации.


==4. ROI и SIG==
==4. ROI и SIG==


Приступим к формированию файлов регионов интересов и сигнатур (рисунок 4).
Приступим к формированию файлов "регионов интереса" и сигнатур (рисунок 4).


[[Файл:3%D0%90.png|frame|центр|Часть плагина, отвечающая за запись, редактирование SIG и проведение классификации]]
[[Файл:landsat_qgis_scp_06.png|frame|центр|Раздел интерфейса, отвечающий за запись и редактирование SIG, а также за проведение классификации]]




Строка 65: Строка 61:
а) Для объектов с большой площадью, таких как зеркала озёр, используем кнопку полигонального захвата пикселей.
а) Для объектов с большой площадью, таких как зеркала озёр, используем кнопку полигонального захвата пикселей.


[[Файл:4%D0%904.png|frame|центр|Кнопка для полигонального захвата пикселей. Пример захвата]]
[[Файл:landsat_qgis_scp_07.png|frame|центр|Кнопка для полигонального захвата пикселей. Пример захвата]]




После  задаём выбранному объекту  id и название и нажимаем на SAVE ROI.  
После  задаём выбранному объекту  id и название и нажимаем на "SAVE ROI".  


[[Файл:5%D0%905.png|frame|центр|Раздел плагина, предназначенный для присвоения информации и записи региона интереса ]]
[[Файл:landsat_qgis_scp_08.png|frame|центр|Раздел плагина, предназначенный для присвоения информации и записи региона интереса]]


После записи ROI автоматически изменится и лист сигнатур.
После записи ROI автоматически изменится и лист сигнатур.
Строка 76: Строка 72:
б) Теперь перейдём к захвату пикселей, характеризующих застройку населенных пунктов, и используем коэффициент радиуса захвата.
б) Теперь перейдём к захвату пикселей, характеризующих застройку населенных пунктов, и используем коэффициент радиуса захвата.


[[Файл:66%D0%A4.png|frame|центр|Визуальное представление населенного пункта ]]
[[Файл:landsat_qgis_scp_09.png|frame|центр|Визуальное представление населенного пункта]]


В строчке Range radius меняем коэффициент на 2000, нажимаем на кнопку с плюсом и переходим к захвату пикселей на снимке.  
В строчке "Range radius" меняем коэффициент на 2000, нажимаем на кнопку с плюсом и переходим к захвату пикселей на снимке.  


[[Файл:77%D1%84%D1%84.png|frame|центр|Изменение range radius]]
[[Файл:landsat_qgis_scp_10.png|frame|центр|Изменение range radius]]


[[Файл:888-00.png|frame|центр|Захваченные пиксели городской застройки + элементы дорог]]
[[Файл:landsat_qgis_scp_11.png|frame|центр|Захваченные пиксели городской застройки + элементы дорог]]


Даём id и название элементу ROI  (2, Built-up / 2, Buildings) и нажимаем  save roi (снова произойдёт отображение в листе сигнатур).
Даём id и название элементу ROI  (2, Built-up / 2, Buildings) и нажимаем  "save roi" (снова произойдёт отображение в листе сигнатур).


в) Теперь выделим участки голого грунта (с/х угодия) таким же образом. Ввиду большого разнообразия цветности открытого грунта (в примере: от фиолетового до слабого марганцового) увеличим радиус захвата до 3500. Выбираем оптимальный вариант отображения.
в) Теперь выделим участки голого грунта (с/х угодия) таким же образом. Ввиду большого разнообразия цветности открытого грунта (в примере от фиолетового до слабого марганцового) увеличим радиус захвата до 3500. Выбираем оптимальный вариант отображения.


[[Файл:99-000.png|frame|центр|Захваченные пиксели голой почвы и с/х ]]
[[Файл:landsat_qgis_scp_12.png|frame|центр|Захваченные пиксели голой почвы и с/х ]]


Даём id и название элементу ROI  (3, Bare soil  / 3, sh) и нажимаем  save roi (снова произойдёт отображение в листе сигнатур).
Даём id и название элементу ROI  (3, Bare soil  / 3, sh) и нажимаем  "save roi" (снова произойдёт отображение в листе сигнатур).


г) Теперь мы переходим непосредственно к главной задаче проекта: поиску и идентификации леса и участков нарушенного леса (Vegetation:Veg).
г) Теперь мы переходим непосредственно к главной задаче проекта: поиску и идентификации леса и участков нарушенного леса (Vegetation:Veg).
В данном варианте нам нужно разбить территорию леса на хвойную составляющую (h), лиственную (l) и нарушенную (d: defect).
В данном варианте нам нужно разбить территорию леса на хвойную составляющую (h), лиственную (l) и нарушенную (d: defect).


[[Файл:10000-00.png|frame|центр|Фрагмент территории наблюдения НП "Орловское полесье":  
[[Файл:landsat_qgis_scp_13.png|frame|центр|Фрагмент территории наблюдения НП "Орловское полесье":  
у - усохшие участки;
у - усохшие участки;
вырубка - проведенная в 2014 году санитарная вырубка]]
вырубка - проведенная в 2014 году санитарная вырубка]]


Начнём с нарушенного леса. Выберем коэффициент радиуса захвата = 550.
Начнём с нарушенного леса. Выберем коэффициент радиуса захвата равным 550.


[[Файл:111000-00.png|frame|центр|Отмеченный (захваченные пиксели) участок усохшего леса]]
[[Файл:landsat_qgis_scp_14.png|frame|центр|Отмеченный (захваченные пиксели) участок усохшего леса]]


Даём id и название элементу ROI  (4, Veg  / 4, d) и нажимаем save roi (снова произойдёт отображение в листе сигнатур).
Даём id и название элементу ROI  (4, Veg  / 4, d) и нажимаем "save roi" (снова произойдёт отображение в листе сигнатур).
Далее, таким же образом захватываем темно-зеленые пиксели характерные для хвои (range radius 1000), и светло-зеленые, характерные для листвы (range radius 2000)
Далее таким же образом захватываем тёмно-зеленые пиксели, характерные для хвои (range radius = 1000), и светло-зелёные, характерные для листвы (range radius = 2000)
Лиственный и хвойные лес я отнёс к разным ROI соответственно меняя параметры записи регионов интереса, сохранения по порядку, т. е 5, Veg  / 5, h и 6, Veg  / 6, l   соответственно.
Лиственный и хвойные лес в данном случае были отнесены к разным ROI путём изменения параметров записи регионов интереса и сохранения по порядку, т.е. 5, Veg  / 5, h и 6, Veg  / 6, l соответственно.


д) Переходим в лист сигнатур.
д) Переходим в лист сигнатур.


[[Файл:12-000.png|frame|центр|Лист сигнатур. Записанные сигнатуры в авто-цветах]]
[[Файл:landsat_qgis_scp_15.png|frame|центр|Лист сигнатур. Записанные сигнатуры в авто-цветах]]


По мере записи ROI в листе SIG сформировались строчки с соответствующими названиями и классами регионов интереса + задался цвет. Теперь мы должны изменить цвет для финальной визуализации классифицированного изображения.  
По мере записи ROI в листе SIG сформировались строчки с соответствующими названиями и классами регионов интереса, а также задался цвет. Теперь мы должны изменить цвет для финальной визуализации классифицированного изображения.  
Изменяем цвета примерно вот так:
Изменяем цвета примерно вот так:


[[Файл:13-000.png|frame|центр|Изменение цветовых характеристик в листе сигнатур ( цвета изменены на более привычные)]]
[[Файл:landsat_qgis_scp_16.png|frame|центр|Изменение цветовых характеристик в листе сигнатур ( цвета изменены на более привычные)]]


==5. Классификация==
==5. Классификация==
Теперь выбираем метод классификации ( в части плагина, отвечающего за сигнатуры), выбираем Spectral Angle Mapping, Size=500 и нажимаем + и ведём курсор на космоснимок.
Теперь выбираем метод классификации (в разделе интерфейса плагина, отвечающего за сигнатуры), выбираем "Spectral Angle Mapping", "Size = 500" и наводим курсор на космоснимок.


[[Файл:14-000.png|frame|центр|Выбор метода классификации (пример)]]
[[Файл:landsat_qgis_scp_17.png|frame|центр|Выбор метода классификации (пример)]]


После нажимаем на кнопку perform classification создаем папку classification и называем в ней документ classification.tif .  
После нажимаем на кнопку "perform classification", создаем папку "classification" и называем в ней документ "classification.tif".  
Классификация выполнена.
Классификация выполнена.


''Хочется отметить следующее, если для демонстрации результатов классификации более ничего не требуется (т. е  визуализация проекта отвечает реальным полевым объектам), то дальнейшую более углубленную обработку проводить необязательно.''
Хочется отметить следующее: если для демонстрации результатов классификации более ничего не требуется (т.е. визуализация проекта отвечает реальным полевым объектам), то дальнейшую более углубленную обработку проводить необязательно.
''Что касается пиксельного захвата – то я советую пользоваться кнопкой show, т. е определить пиксели, отметить их и далее посмотреть как они ложатся и не втягиваются ли лишние. Поэтому с коэффициентом захвата можно поиграть до определения оптимального отображения  (не обязательно использовать числа, указанные в руководстве).
Что касается пиксельного захвата – то можно посоветовать пользоваться кнопкой "show", т.е. определить пиксели, отметить их и далее посмотреть, как они ложатся и не втягиваются ли лишние. Поэтому с коэффициентом захвата можно "поиграть" до определения оптимального отображения  (не обязательно использовать числа, указанные в руководстве).
Также нелишним, если позволяет снимок (т. е без проведения атмосферной коррекции), будет отметить дороги и травянистые сообщества.''
Также нелишним, если позволяет снимок (т.е. без проведения атмосферной коррекции), будет отметить дороги и травянистые сообщества.
''Ошибки, связанные с втягиванием пикселей в какой-то другой класс, я предлагаю не исправлять, а добавить новый (по очереди в соответствии с id) класс, корректно отображающий объект. Появление жёлтой строчки в QGis(предупреждение) и будет свидетельствовать о пересечении выбранных классов; проверку можно осуществить по графику спектральных кривых.''
Ошибки, связанные с втягиванием пикселей в какой-то другой класс, предлагается не исправлять, а добавить новый (по очереди в соответствии с id) класс, корректно отображающий объект. Появление жёлтой строчки в QGIS (предупреждение) будет свидетельствовать о пересечении выбранных классов; проверку можно осуществить по графику спектральных кривых.
''Тот класс, который получился ошибочным – я предлагаю просто забелить (изменить цвет на белый): так как в проекте меня интересует нарушенная и ненарушенная растительность, белым у меня будет: почва, застройка; воду я оставляю без изменений.
Тот класс, который получился ошибочным, предлагается просто забелить (изменить цвет на белый): так как в проекте нас интересует нарушенная и ненарушенная растительность, белым у нас будет: почва, застройка; воду оставляем без изменений.
''


=Конкретизация и корректировка результатов классификации; представление результатов, вывод=
=Конкретизация и корректировка результатов классификации; представление результатов, вывод=


''Для это раздела нам нужно будет подготовить shp-файл (квадрат) тренировочной территории, т. е часть территории, на которой мы будет проводить дальнейшую классификацию. shp-файл лучше сразу же подготовить в QGis; прошу обратить Ваше внимание на проекцию, используемую в проекте (в данном проекте проекция такая:  EPSG: 32636, WGS 84/ UTM zone 36N).''
''Для этого раздела нам нужно будет подготовить shp-файл (квадрат) тренировочной территории, т.е. часть территории, на которой мы будет проводить дальнейшую классификацию. Шейп-файл лучше сразу же подготовить в QGIS; обратите внимание на проекцию, используемую в проекте (в данном проекте проекция EPSG: 32636, WGS 84/ UTM zone 36N).''


==Загрузка исходного Landsat снимка. Атмосферная коррекция==
==Загрузка исходного снимка Landsat. Атмосферная коррекция==


а) Вызовем панель загрузки снимка  иконкой [[Файл:Kn_tools.png]] или так:
а) Вызовем панель загрузки снимка  иконкой [[Файл:landsat_qgis_scp_18.png]] или так:


[[Файл:106000000000006.png|frame|центр|Вариант открытия панели загрузки снимка Landsat]]
[[Файл:landsat_qgis_scp_19.png|frame|центр|Вариант открытия панели загрузки снимка Landsat]]


Далее мы оказались на вкладке параметров снимка, здесь нам предлагается создать/выбрать директорию загрузки снимка. Сделать это можно, нажав на кнопку select Landsat database directory и выбрать путь к папке (создать) и назвать её LandsatDB OK.  
Далее мы оказываемся на вкладке параметров снимка, здесь нам предлагается создать или выбрать директорию загрузки снимка. Сделать это можно, нажав на кнопку "Select Landsat database directory" и выбрав путь к папке (или создать). Hазовём папку "LandsatDB", нажмём "OK".  
Теперь ставим галочку в only Landsat 8 и жмём Update database для обновления (ОК).  
Теперь ставим галочку в графе "Only Landsat 8" и жмём "Update database" для обновления (ОК).  
Далее мы должны ввести Image ID (смотрим из предыдущей части анализа на номер архива космоснимка, это оно и есть: в данном проекте это LC81790232014255LGN00); продвинутый пользователь может внести координаты, интересующей территории. Нажимаем на Find images. В image list появится строчка с записью о космоснимке.
Далее мы должны ввести Image ID (смотрим из предыдущей части анализа на номер архива космоснимка, это оно и есть; в данном проекте это "LC81790232014255LGN00"). Продвинутый пользователь может внести координаты интересующей территории. Нажимаем "Find images". В "image list" появится строчка с записью о космоснимке.
Нажимаем на display image preview для отображения снимка.
Нажимаем на "display image preview" для отображения снимка.


[[Файл:105000000000005.png|frame|центр|Preview  снимка]]
[[Файл:landsat_qgis_scp_20.png|frame|центр|Preview  снимка]]


при увеличении масштаба мы видим качество детализации низкое.  
При увеличении масштаба мы видим: качество детализации низкое.  
Теперь нам необходимо задать параметры загрузки космоснимка.
Теперь нам необходимо задать параметры загрузки космоснимка.
Карточка параметров загрузки должна выглядеть вот так ( в нашем примере):
Карточка параметров загрузки должна выглядеть вот так (в нашем примере):


[[Файл:10400000000.png|frame|центр|Параметры загрузки снимка ( выбор бандов)]]
[[Файл:landsat_qgis_scp_21.png|frame|центр|Параметры загрузки снимка (выбор каналов)]]


Нажимаем на dawnload images from list (выбираем рабочий стол) и ждём загрузки. В зависимости от особенностей компьютера загрузка может занять значительное время. Ход загрузки мы можем наблюдать в QGis.
Нажимаем на "download images from list" (выбираем рабочий стол) и ждём загрузки. В зависимости от особенностей вашего компьютера и подключения к Интернету загрузка может занять разное (иногда значительное) время. Ход загрузки мы можем наблюдать в интерфейсе QGIS.


[[Файл:103000000.png|frame|центр|Ход загрузки снимка]]
[[Файл:landsat_qgis_scp_22.png|frame|центр|Ход загрузки снимка]]


Конец загрузки будет сопровождаться аудио эффектом.  
Конец загрузки будет сопровождаться звуковым эффектом.  
Удаляем из QGis слой космоснимка.
Удаляем из QGIS слой космоснимка.


Нажимаем на иконку [[Файл:Prepro.png]], открывается форма, заходим на вкладку Landsat:
Нажимаем на иконку [[Файл:landsat_qgis_scp_23.png]], в открывшейся форме заходим на вкладку "Landsat". Жмём на кнопку "Select directory" и на рабочем столе ищем и открываем папку со снимком (ОК) – в форме откроются строчки  с каналами. Далее ставим галочку в "Apply DOS1 atmospheric correction". Форма должна иметь следующий вид:
жмём на кнопку select directory и на рабочем столе ищем и открываем папку со снимком (ОК) – в форме откроются строчки  с каналами.
далее ставим галочку в Apply DOS1 atmospheric correction;
Форма должна иметь такой вид:


[[Файл:1020000000000.png|frame|центр|Заполненная карточка (вкладка) по снимку Landsat. pre processing]]
[[Файл:landsat_qgis_scp_24.png|frame|центр|Заполненная карточка (вкладка) по снимку Landsat, preprocessing]]


Жмём на perform conversion; в папке со снимком образуем папку с названием REF (ok-ok).
Жмём на "perform conversion"; в папке со снимком создаём папку с названием "REF" (ok-ok).
Ждём окончания процесса (звуковой сигнал).
Ждём окончания процесса (звуковой сигнал).


[[Файл:101000000.png|frame|центр|RT-снимок после коррекции]]
[[Файл:landsat_qgis_scp_25.png|frame|центр|RT-снимок после коррекции]]


''В данном проекте выполнение атмосферной коррекции имеет характер проверки (демонстрационный характер). Было необходимым проверить работу данной функции плагина.''
В данном проекте выполнение атмосферной коррекции имеет характер проверки (демонстрационный характер). Было необходимым проверить работу данной функции плагина.


В QGis отобразятся 7 каналов с префиксом RT.
В QGIS отобразятся 7 каналов с префиксом "RT".
Далее нам будет необходимо открыть заранее подготовленный shp-файл тренировочной территории и произвести прикрепление этого квадрата к снимку (clip).
Далее нам будет необходимо открыть заранее подготовленный shp-файл тренировочной территории и произвести прикрепление этого квадрата к снимку (clip).


Кнопкой [[Файл:Kn%2Bvekt.png]] добавляем shp-файл (в текущем проекте этот файл назван test_location).  
Кнопкой [[Файл:landsat_qgis_scp_26.png]] добавляем shp-файл (в текущем проекте этот файл назван "test_location").  


[[Файл:99999999.png|frame|центр|Снимок + территория наблюдения (shp-файл)]]
[[Файл:landsat_qgis_scp_27.png|frame|центр|Снимок + территория наблюдения (shp-файл)]]


В форме плагина [[Файл:Prepro.png]] нажимаем на вкладку Clip multiple rasters.
В форме плагина [[Файл:landsat_qgis_scp_23.png]] нажимаем на вкладку "Clip multiple rasters".
Далее нажимаем на refresh list – далее select all.  
Далее нажимаем на "refresh list" "select all".  
Ставим галочку в use shapefile for clipping жмём refresh list в сточке отобразится шейп-файл.
Ставим галочку на "use shapefile for clipping", жмём "refresh list" - в строчке отобразится шейп-файл.
Теперь нажимаем Clip selected rasters (на рабочем столе создаем папку clip; ок-ок) – звуковой сигнал.
Теперь нажимаем "Clip selected rasters" (на рабочем столе создаем папку "clip"; ок-ок) – звуковой сигнал.
Полученный вид в QGis:
Полученный вид в QGIS:


[[Файл:88888888.png|frame|центр|Clip-изображение:снимок + территория наблюдения (шейп-файл)]]
[[Файл:landsat_qgis_scp_28.png|frame|центр|Clip-изображение:снимок + территория наблюдения (шейп-файл)]]


Нажимаем на любой слой с префиксом clip_RT правой кнопкой выходим в свойства и нажимаем "увеличить до слоя" – таким образом, мы ограничиваем территорию исследования. Далее мы отключаем и удаляем все слои с префиксом RT.
Нажимаем на любой слой с префиксом "clip_RT", правой кнопкой выходим в свойства и нажимаем "увеличить до слоя". Таким образом, мы ограничиваем территорию исследования. Далее мы отключаем и удаляем все слои с префиксом "RT".


Следующим этапом мы создаем band set. Нажимаем на иконку [[Файл:Band_set.png]] (открывается форма) – нажимаем select all, потом add rasters to set. Справа будут кнопки со стрелочками (control bands) – ими можно передвигать порядок бандов.
Следующим этапом мы создаем "band set", т.е. набор каналов. Нажимаем на иконку [[Файл:landsat_qgis_scp_29.png]] (открывается форма) – нажимаем "select all", потом "add rasters to set". Справа будут кнопки со стрелочками (control bands) – ими можно передвигать порядок каналов.
В строчке quick wavelength settings выбираем Landsat 8 Oli [bands 2, 3, 4, 5, 6, 7].
В строчке "quick wavelength settings" выбираем Landsat 8 Oli [bands 2, 3, 4, 5, 6, 7].


[[Файл:77777777777.png|frame|центр|Функция band set]]
[[Файл:landsat_qgis_scp_30.png|700px|центр|Функция band set]]


В плагине у нас теперь отобразился <<band set>> и в дальнейшем процессе в строчке RGB мы сможет составить свою комбинацию каналов для наилучшей визуализации объектов (ну или воспользоваться предложенными).  
В плагине у нас теперь отобразился набор каналов, и в дальнейшем процессе в строчке RGB мы сможем составить свою комбинацию каналов для наилучшей визуализации объектов (ну или воспользоваться предложенными).  
Теперь, после настройки дополнительных параметров, мы можем продолжить классификацию. Иконкой  [[Файл:Kn%2Bvekt.png]] открываем shp-файл из папки ROI(из предыдущего раздела классификации) загружаем регионы интереса. В части плагина, отвечающего за регионы интереса нажимаем на кнопку [[Файл:Refresh.png]] выбираем файл. В ROI list отобразились записи.  
Теперь, после настройки дополнительных параметров, мы можем продолжить классификацию. Иконкой  [[Файл:landsat_qgis_scp_26.png]] открываем shp-файл из папки ROI (из предыдущего раздела классификации) и загружаем регионы интереса. В разделе интерфейса плагина, отвечающем за регионы интереса, нажимаем на кнопку [[Файл:landsat_qgis_scp_31.png]] выбираем файл. В ROI list отобразились записи.  
В части плагина, отвечающей за сигнатуры, нажимаем open и ищем папку из предыдущего раздела классификации SIG и из неё открываем XML-файл. В списке отобразятся сигнатуры.  
В разделе интерфейса плагина, отвечающем за сигнатуры, нажимаем "open", ищем папку из предыдущего раздела классификации (SIG) и из неё открываем XML-файл. В списке отобразятся сигнатуры.  
Теперь окрасим наш композит (в примере банды 5-4-6). После окраски визуально определим траву травянистые сообщества и, выбрав оптимально отражающий объект- коэффициент захвата, так же как в предыдущем разделе классификации создадим и сохраним новый регион интереса. Важный момент: теперь к макроклассу Veg (vegetation) добавим новый ROI- grassland:  в MC ID ставим 4 (в предыдущей части так мы назвали класс вегетации); в MC Info ставим Veg; в C ID ставим номер по порядку (у меня это номер 14, потому что ранее я проводил несколько раз классификацию для закрепления навыка); в C Info вписываем название grassland и жмём Save ROI.
Теперь настроим цвета композита (в примере каналы 5-4-6). После окраски визуально определим травянистые сообщества и, выбрав оптимально отражающий объект (коэффициент захвата), так же, как в предыдущем разделе классификации, создадим и сохраним новый регион интереса. Важный момент: теперь к макроклассу Veg (vegetation) добавим новый ROI (grassland). В "MC ID" ставим "4" (в предыдущей части так мы назвали класс вегетации); в "MC Info" ставим "Veg"; в "C ID" ставим номер по порядку (в данном случае это номер 14, потому что ранее автор проводил несколько раз классификацию для закрепления навыка); в "C Info" вписываем название "grassland" и жмём "Save ROI".


Нажмём на строчку grassland, далее на кнопку [[Файл:Kn_grafik.png]] отобразится спектральная кривая:
Нажмём на строчку "grassland", далее на кнопку [[Файл:landsat_qgis_scp_32.png]]. Отобразится спектральная кривая:


[[Файл:66666666.png|frame|центр|Кривая травы в графике]]
[[Файл:landsat_qgis_scp_33.png|frame|центр|Кривая травы в графике]]


Проведя курсором по снимку, мы так же сможем отметить некоторые закономерности: если выбрать все строки в листе сигнатур и нажать [[Файл:Kn_grafik.png]] то мы получим спектральный график, который в дальнейшем можно использовать в математическом объяснении результатов.
Проведя курсором по снимку, мы также сможем отметить некоторые закономерности: если выбрать все строки в листе сигнатур и нажать на кнопку [[Файл:landsat_qgis_scp_32.png]] то мы получим спектральный график, который в дальнейшем можно использовать в математическом объяснении результатов.


[[Файл:5555555555.png|frame|центр|ROI, представленные в форме графика]]
[[Файл:landsat_qgis_scp_34.png|frame|центр|ROI, представленные в форме графика]]


Следующим пунктом выделим дороги и добавим их к классу застройки Built-up (2), в C ID ставим номер по порядку -15, в C Info вписываем название road и жмём Save ROI.
Следующим пунктом выделим дороги и добавим их к классу застройки "Built-up" (2), в "C ID" ставим номер по порядку - 15, в "C Info" вписываем название "road" и жмём "Save ROI".
В листе ROI при нажатии C ID, стрелочками можно поправить нумерацию.
В листе ROI при нажатии "C ID" стрелочками можно поправить нумерацию.




[[Файл:44444.png|frame|центр|Фрагменты дорожного полотна]]
[[Файл:landsat_qgis_scp_35.png|frame|центр|Фрагменты дорожного полотна]]


Осталось финализировать классификацию (дополнительную).
Осталось финализировать классификацию (дополнительную).
По желанию (и для поиска наилучшего отображения результата классификации) можно выбрать другой классификационный алгоритм и размер окна. Нажимаем +. В конце процесса нажимаем perform classification, выбираем папку для сохранения.  
По желанию (и для поиска наилучшего отображения результата классификации) можно выбрать другой классификационный алгоритм и размер окна. Нажимаем +. В конце процесса нажимаем "perform classification", выбираем папку для сохранения.  
Данный способ (второй раздел) позволяет нам конкретизировать объекты городской застройки; а в ходе данного проекта, когда требовалось провести анализ вегетационной составляющей территории, способ имел ведущее значение.  
Данный способ (второй раздел) позволяет нам конкретизировать объекты городской застройки. В ходе данного проекта, когда требовалось провести анализ вегетационной составляющей территории, способ имел ведущее значение.  
Как отмечалось выше элементы голой почвы, застройки и некоторые погрешности в определении класса были окрашены белым цветом.  
Как отмечалось выше, элементы голой почвы, застройки и некоторые погрешности в определении класса были окрашены белым цветом.  


[[Файл:33333.png|frame|центр|Результат классификации]]
[[Файл:landsat_qgis_scp_36.png|frame|центр|Результат классификации]]


[[Файл:222222.png|frame|центр|Полученное классифицированное изображение. Вариант с закраской белым]]
[[Файл:landsat_qgis_scp_37.png|frame|центр|Полученное классифицированное изображение. Вариант с закраской белым цветом]]


[[Файл:11111.png|frame|центр|Сравнение исходного и классифицированного снимка]]
[[Файл:landsat_qgis_scp_38.png|frame|центр|Сравнение исходного и классифицированного снимка]]


=Выводы=
=Выводы=
Semi-Automatic Classification Plugin. для QGIS успешно справился с поставленной задачей классификации космического снимка Landsat с целью выявления усыханий леса. Поэтому ее можно использовать в качестве свободной альтернативы платному специализированному софту. Кроме того, одним из плюсов программы является ее непосредственная работа с самой QGIS, что облегчает визуализацию и анализ результатов классификации
Semi-Automatic Classification Plugin для QGIS успешно справился с поставленной задачей классификации космического снимка Landsat с целью выявления усыханий леса. Поэтому ее можно использовать в качестве свободной альтернативы платному специализированному ПО. Кроме того, одним из плюсов плагина является его тесная интерграция с QGIS, что облегчает визуализацию и анализ результатов классификации.


=Литература=
=Литература=

Текущая версия от 16:30, 25 июня 2016

Эта страница опубликована в основном списке статей сайта
по адресу http://gis-lab.info/qa/landsat_qgis_scp.html


Данная статья описывает опыт работы с Semi-Automatic Classification Plugin для QGIS для классификации снимка Landsat с целью выявления лесонарушений на примере НП "Орловское полесье", а также содержит пошаговую инструкцию для лесного дешифрирования снимка с помощью данного плагина.

Карпачев Андрей Петрович, научный сотрудник НП "Орловское полесье"

Цели проекта

1) Выявление участков усохшего и нарушенного леса на территории НП «Орловское полесье».

2) Общее дешифрирование фрагмента территории Орловско-Брянско-Калужского региона.

Для реализации классификации были выбраны тестовые участки на основе материалов лесоустройства. Примеры этих участков показаны на рисунке ниже.

Отметка тестовых участков на местности: 1 - лиственный лес 2 - хвойный лес 3 - нарушенный лес, усыхание 4 - санитарная вырубка, голая почва 5 - пойма реки, голая почва

Определение и формирование макроклассов, проведение классификации

1. Подготовка

а) На этом этапе мы должны подготовить область (тестовый участок) на базе космоснимка Landsat 8 за сентябрь 2014 года на территорию Орловско-Брянско-Калужского региона включая границы НП «Орловское полесье». Космоснимок можно "собрать" непосредственно в QGIS, как показано здесь. Для данного проекта нам понадобятся 6 диапазонов: R, G, B, ближний ИК, коротковолновый ИК-1 и ИК-2. В работе необходимо использовать изображение, полученное из шести каналов (2-7), иначе плагин отказывается строить спектрограммы (однако, классификация выполнена будет), а этот момент важен для последующих расчётов и анализа.

2. Начало работы

Полученный растр добавляем в QGIS с помощью соответствующей кнопки. Landsat qgis scp 02.png


Чтобы добавить наш космоснимок непосредственно в плагин, нажимаем на кнопку "обновить" в плагине (рисунок ниже).

Загрузка собранного изображения и загрузка его в плагин

Для более точной визуализации объекта наблюдения можно использовать функцию "RGB: представить снимок в синтезированных и натуральных цветах".

Функция плагина RGB

3.Формирование директорий

После загрузки космоснимка нам необходимо сформировать директории, куда впоследствии запишутся файлы ROI и файлы сигнатур.

Переходим в раздел интерфейса плагина, отвечающего за регионы интереса (ROI):

Часть плагина, отвечающая за формирование, редактирование и запись ROI


Нажимаем на кнопку "New shp" и задаём на рабочем столе папку с названием ROI, затем открываем и сохраняем документ с названием ROI (сюда будут записываться наши регионы интереса). Переходим в раздел интерфейса плагина, отвечающего за формирование сигнатур и классификацию.

Нажимаем на кнопку "SAVE" и на рабочем столе создаем папку SIG, в которой будет находиться документ с названием SIG. Здесь будут храниться наши сигнатуры для дальнейшей классификации.

4. ROI и SIG

Приступим к формированию файлов "регионов интереса" и сигнатур (рисунок 4).

Раздел интерфейса, отвечающий за запись и редактирование SIG, а также за проведение классификации


а) Для объектов с большой площадью, таких как зеркала озёр, используем кнопку полигонального захвата пикселей.

Кнопка для полигонального захвата пикселей. Пример захвата


После задаём выбранному объекту id и название и нажимаем на "SAVE ROI".

Раздел плагина, предназначенный для присвоения информации и записи региона интереса

После записи ROI автоматически изменится и лист сигнатур.

б) Теперь перейдём к захвату пикселей, характеризующих застройку населенных пунктов, и используем коэффициент радиуса захвата.

Визуальное представление населенного пункта

В строчке "Range radius" меняем коэффициент на 2000, нажимаем на кнопку с плюсом и переходим к захвату пикселей на снимке.

Изменение range radius
Захваченные пиксели городской застройки + элементы дорог

Даём id и название элементу ROI (2, Built-up / 2, Buildings) и нажимаем "save roi" (снова произойдёт отображение в листе сигнатур).

в) Теперь выделим участки голого грунта (с/х угодия) таким же образом. Ввиду большого разнообразия цветности открытого грунта (в примере от фиолетового до слабого марганцового) увеличим радиус захвата до 3500. Выбираем оптимальный вариант отображения.

Захваченные пиксели голой почвы и с/х

Даём id и название элементу ROI (3, Bare soil / 3, sh) и нажимаем "save roi" (снова произойдёт отображение в листе сигнатур).

г) Теперь мы переходим непосредственно к главной задаче проекта: поиску и идентификации леса и участков нарушенного леса (Vegetation:Veg). В данном варианте нам нужно разбить территорию леса на хвойную составляющую (h), лиственную (l) и нарушенную (d: defect).

Фрагмент территории наблюдения НП "Орловское полесье": у - усохшие участки; вырубка - проведенная в 2014 году санитарная вырубка

Начнём с нарушенного леса. Выберем коэффициент радиуса захвата равным 550.

Отмеченный (захваченные пиксели) участок усохшего леса

Даём id и название элементу ROI (4, Veg / 4, d) и нажимаем "save roi" (снова произойдёт отображение в листе сигнатур). Далее таким же образом захватываем тёмно-зеленые пиксели, характерные для хвои (range radius = 1000), и светло-зелёные, характерные для листвы (range radius = 2000) Лиственный и хвойные лес в данном случае были отнесены к разным ROI путём изменения параметров записи регионов интереса и сохранения по порядку, т.е. 5, Veg / 5, h и 6, Veg / 6, l соответственно.

д) Переходим в лист сигнатур.

Лист сигнатур. Записанные сигнатуры в авто-цветах

По мере записи ROI в листе SIG сформировались строчки с соответствующими названиями и классами регионов интереса, а также задался цвет. Теперь мы должны изменить цвет для финальной визуализации классифицированного изображения. Изменяем цвета примерно вот так:

Изменение цветовых характеристик в листе сигнатур ( цвета изменены на более привычные)

5. Классификация

Теперь выбираем метод классификации (в разделе интерфейса плагина, отвечающего за сигнатуры), выбираем "Spectral Angle Mapping", "Size = 500" и наводим курсор на космоснимок.

Выбор метода классификации (пример)

После нажимаем на кнопку "perform classification", создаем папку "classification" и называем в ней документ "classification.tif". Классификация выполнена.

Хочется отметить следующее: если для демонстрации результатов классификации более ничего не требуется (т.е. визуализация проекта отвечает реальным полевым объектам), то дальнейшую более углубленную обработку проводить необязательно. Что касается пиксельного захвата – то можно посоветовать пользоваться кнопкой "show", т.е. определить пиксели, отметить их и далее посмотреть, как они ложатся и не втягиваются ли лишние. Поэтому с коэффициентом захвата можно "поиграть" до определения оптимального отображения (не обязательно использовать числа, указанные в руководстве). Также нелишним, если позволяет снимок (т.е. без проведения атмосферной коррекции), будет отметить дороги и травянистые сообщества. Ошибки, связанные с втягиванием пикселей в какой-то другой класс, предлагается не исправлять, а добавить новый (по очереди в соответствии с id) класс, корректно отображающий объект. Появление жёлтой строчки в QGIS (предупреждение) будет свидетельствовать о пересечении выбранных классов; проверку можно осуществить по графику спектральных кривых. Тот класс, который получился ошибочным, предлагается просто забелить (изменить цвет на белый): так как в проекте нас интересует нарушенная и ненарушенная растительность, белым у нас будет: почва, застройка; воду оставляем без изменений.

Конкретизация и корректировка результатов классификации; представление результатов, вывод

Для этого раздела нам нужно будет подготовить shp-файл (квадрат) тренировочной территории, т.е. часть территории, на которой мы будет проводить дальнейшую классификацию. Шейп-файл лучше сразу же подготовить в QGIS; обратите внимание на проекцию, используемую в проекте (в данном проекте проекция EPSG: 32636, WGS 84/ UTM zone 36N).

Загрузка исходного снимка Landsat. Атмосферная коррекция

а) Вызовем панель загрузки снимка иконкой Landsat qgis scp 18.png или так:

Вариант открытия панели загрузки снимка Landsat

Далее мы оказываемся на вкладке параметров снимка, здесь нам предлагается создать или выбрать директорию загрузки снимка. Сделать это можно, нажав на кнопку "Select Landsat database directory" и выбрав путь к папке (или создать). Hазовём папку "LandsatDB", нажмём "OK". Теперь ставим галочку в графе "Only Landsat 8" и жмём "Update database" для обновления (ОК). Далее мы должны ввести Image ID (смотрим из предыдущей части анализа на номер архива космоснимка, это оно и есть; в данном проекте это "LC81790232014255LGN00"). Продвинутый пользователь может внести координаты интересующей территории. Нажимаем "Find images". В "image list" появится строчка с записью о космоснимке. Нажимаем на "display image preview" для отображения снимка.

Preview снимка

При увеличении масштаба мы видим: качество детализации низкое. Теперь нам необходимо задать параметры загрузки космоснимка. Карточка параметров загрузки должна выглядеть вот так (в нашем примере):

Параметры загрузки снимка (выбор каналов)

Нажимаем на "download images from list" (выбираем рабочий стол) и ждём загрузки. В зависимости от особенностей вашего компьютера и подключения к Интернету загрузка может занять разное (иногда значительное) время. Ход загрузки мы можем наблюдать в интерфейсе QGIS.

Ход загрузки снимка

Конец загрузки будет сопровождаться звуковым эффектом. Удаляем из QGIS слой космоснимка.

Нажимаем на иконку Landsat qgis scp 23.png, в открывшейся форме заходим на вкладку "Landsat". Жмём на кнопку "Select directory" и на рабочем столе ищем и открываем папку со снимком (ОК) – в форме откроются строчки с каналами. Далее ставим галочку в "Apply DOS1 atmospheric correction". Форма должна иметь следующий вид:

Заполненная карточка (вкладка) по снимку Landsat, preprocessing

Жмём на "perform conversion"; в папке со снимком создаём папку с названием "REF" (ok-ok). Ждём окончания процесса (звуковой сигнал).

RT-снимок после коррекции

В данном проекте выполнение атмосферной коррекции имеет характер проверки (демонстрационный характер). Было необходимым проверить работу данной функции плагина.

В QGIS отобразятся 7 каналов с префиксом "RT". Далее нам будет необходимо открыть заранее подготовленный shp-файл тренировочной территории и произвести прикрепление этого квадрата к снимку (clip).

Кнопкой Landsat qgis scp 26.png добавляем shp-файл (в текущем проекте этот файл назван "test_location").

Снимок + территория наблюдения (shp-файл)

В форме плагина Landsat qgis scp 23.png нажимаем на вкладку "Clip multiple rasters". Далее нажимаем на "refresh list" – "select all". Ставим галочку на "use shapefile for clipping", жмём "refresh list" - в строчке отобразится шейп-файл. Теперь нажимаем "Clip selected rasters" (на рабочем столе создаем папку "clip"; ок-ок) – звуковой сигнал. Полученный вид в QGIS:

Clip-изображение:снимок + территория наблюдения (шейп-файл)

Нажимаем на любой слой с префиксом "clip_RT", правой кнопкой выходим в свойства и нажимаем "увеличить до слоя". Таким образом, мы ограничиваем территорию исследования. Далее мы отключаем и удаляем все слои с префиксом "RT".

Следующим этапом мы создаем "band set", т.е. набор каналов. Нажимаем на иконку Landsat qgis scp 29.png (открывается форма) – нажимаем "select all", потом "add rasters to set". Справа будут кнопки со стрелочками (control bands) – ими можно передвигать порядок каналов. В строчке "quick wavelength settings" выбираем Landsat 8 Oli [bands 2, 3, 4, 5, 6, 7].

Функция band set

В плагине у нас теперь отобразился набор каналов, и в дальнейшем процессе в строчке RGB мы сможем составить свою комбинацию каналов для наилучшей визуализации объектов (ну или воспользоваться предложенными). Теперь, после настройки дополнительных параметров, мы можем продолжить классификацию. Иконкой Landsat qgis scp 26.png открываем shp-файл из папки ROI (из предыдущего раздела классификации) и загружаем регионы интереса. В разделе интерфейса плагина, отвечающем за регионы интереса, нажимаем на кнопку Landsat qgis scp 31.png выбираем файл. В ROI list отобразились записи. В разделе интерфейса плагина, отвечающем за сигнатуры, нажимаем "open", ищем папку из предыдущего раздела классификации (SIG) и из неё открываем XML-файл. В списке отобразятся сигнатуры. Теперь настроим цвета композита (в примере каналы 5-4-6). После окраски визуально определим травянистые сообщества и, выбрав оптимально отражающий объект (коэффициент захвата), так же, как в предыдущем разделе классификации, создадим и сохраним новый регион интереса. Важный момент: теперь к макроклассу Veg (vegetation) добавим новый ROI (grassland). В "MC ID" ставим "4" (в предыдущей части так мы назвали класс вегетации); в "MC Info" ставим "Veg"; в "C ID" ставим номер по порядку (в данном случае это номер 14, потому что ранее автор проводил несколько раз классификацию для закрепления навыка); в "C Info" вписываем название "grassland" и жмём "Save ROI".

Нажмём на строчку "grassland", далее на кнопку Landsat qgis scp 32.png. Отобразится спектральная кривая:

Кривая травы в графике

Проведя курсором по снимку, мы также сможем отметить некоторые закономерности: если выбрать все строки в листе сигнатур и нажать на кнопку Landsat qgis scp 32.png то мы получим спектральный график, который в дальнейшем можно использовать в математическом объяснении результатов.

ROI, представленные в форме графика

Следующим пунктом выделим дороги и добавим их к классу застройки "Built-up" (2), в "C ID" ставим номер по порядку - 15, в "C Info" вписываем название "road" и жмём "Save ROI". В листе ROI при нажатии "C ID" стрелочками можно поправить нумерацию.


Фрагменты дорожного полотна

Осталось финализировать классификацию (дополнительную). По желанию (и для поиска наилучшего отображения результата классификации) можно выбрать другой классификационный алгоритм и размер окна. Нажимаем +. В конце процесса нажимаем "perform classification", выбираем папку для сохранения. Данный способ (второй раздел) позволяет нам конкретизировать объекты городской застройки. В ходе данного проекта, когда требовалось провести анализ вегетационной составляющей территории, способ имел ведущее значение. Как отмечалось выше, элементы голой почвы, застройки и некоторые погрешности в определении класса были окрашены белым цветом.

Результат классификации
Полученное классифицированное изображение. Вариант с закраской белым цветом
Сравнение исходного и классифицированного снимка

Выводы

Semi-Automatic Classification Plugin для QGIS успешно справился с поставленной задачей классификации космического снимка Landsat с целью выявления усыханий леса. Поэтому ее можно использовать в качестве свободной альтернативы платному специализированному ПО. Кроме того, одним из плюсов плагина является его тесная интерграция с QGIS, что облегчает визуализацию и анализ результатов классификации.

Литература

1.http://semiautomaticclassificationmanual-v4.readthedocs.org/en/latest/Tutorials.html

2.Крылов А. М., Соболев А. А., Владимирова Н. А. Выявление очагов короеда-типографа в Московской области с использованием снимков Landsat //Вестник Московского государственного университета леса - Лесной вестник. – 2011. – №. 4. – С. 54-60

3.Крылов А.М., Владимирова Н.А., Малахова Е.Г. Использование свободных ГИС в системе дистанционного лесопатологического мониторинга // Вестник Московского государственного университета леса - Лесной Вестник, №1 2012. С. 148-152

4.Крылов А.М., Владимирова Н.А. Дистанционный мониторинг состояния лесов по данным космической съемки // "ГЕОМАТИКА" №3(12), 2011 г. с. 53-57