Thematic interpretation of aerial photographs of forest areas based on conceptual modeling

Cover Page

Cite item

Full Text

Abstract

Earth remote sensing (ERS) is one of the main sources of information about the earth's surface. With the development of unmanned aerial vehicles (UAVs), it became possible to take aerial photographs with high spatial resolution, which can be used to more accurately identify objects. The purpose of the study is to increase the reliability of aerial imagery interpretation by developing a methodology for automated image processing based on conceptual modeling. An analysis of the methods for thematic interpretation of images showed that none of them provides sufficient quality of segmentation without additional adjustment to the subject area. The technique of conceptual modeling of subject tasks is applied, which ensures the adequacy of syntactic representations (including various images) and makes it possible to control the logic of solving problems and reduce the number of errors at the stage of its software implementation. The description of the information system for thematic interpretation of images, which implements the developed methodology, is given. An assessment was made of the reliability of thematic interpretation of images of forest areas. It is shown that the developed technique allowed to improve the identification of forest objects on aerial photographs by 18.6%. The development of this technique can be carried out to determine the characteristics of identifiable trees: age, species, height, and wood stock.

Full Text

Введение

На предприятиях лесного комплекса активно внедряются средства автоматизации существующих процессов: геоинформационные системы, электронные карты, логистические системы и др. Для получения всесторонней оценки состояния лесных ресурсов проводят таксацию леса в составе лесоустроительных и лесоохранных работ, что является одной из главных задач в лесном хозяйстве. Таксацию леса можно проводить наземным способом, ведя сплошной перечёт, при котором оценивается каждое дерево. При больших территориях этот способ невозможен в силу его трудоёмкости. Поэтому большое внимание уделяется дистанционному зондированию Земли.

В процессе развития беспилотных летательных аппаратов (БПЛА), цифровых камер, систем точного геопозиционирования появились новые средства сбора актуальной пространственной информации. Технические и технологические новшества могут внести изменения в существующую модель лесного хозяйства при создании эффективных методик обработки, анализа и интерпретации получаемых данных. Поэтому разработка интеллектуальных систем распознавания данных является актуальной темой.

Разрабатываемые технологии интеллектуального анализа данных практически исключают участие человека из процесса распознавания снимков и при этом позволяют учитывать опыт эксперта в дешифрировании. Для организации взаимосвязи между объектами на местности и объектами и их свойствами на снимках предлагается использовать аппарат онтологии, позволяющий структурировать данные предметной области (ПрО) и устанавливать связи между объектами и их свойствами, структурировать информацию из разных ПрО [1-6].

Цель настоящего исследования заключается в повышении достоверности интерпретации крон деревьев по аэроснимкам БПЛА путём разработки и применения методики автоматизированной обработки аэроснимков на основе концептуального моделирования [7-10]. 

Для выполнения съёмки с воздуха был выбран квадрокоптер серии DJI Phantom, подобраны совместимые аксессуары (подвес и камера) и специализированный объектив «4K LENS 4.35 mm FLAT NDVI».

В качестве опытной площадки (см. рисунок 1) для выполнения исследований была выбрана территория дендросада Северного научно-исследовательского института лесного хозяйства (Архангельск), на которой произрастает разнообразный породный и возрастной состав деревьев, необходимый для проверки работоспособности разрабатываемой методики.

 

Рисунок 1 – Вид опытной площадки на спутниковом снимке

 

Характеристики используемых технических средств съёмки позволяют чётко различать кроны деревьев до высоты 200 метров. На рисунке 2 показан исходный фрагмент снимка лесного участка, на котором представлены кроны деревьев и межкроновые пространства.

 

Рисунок 2 – Исходный снимок с БПЛА

 

1. Используемые методы

Универсальных методов идентификации объектов на снимках не существует. Алгоритм дешифрирования должен быть адаптирован для конкретной исследуемой отрасли (тематически дешифрирован).

Анализ методов тематического дешифрирования аэроснимков БПЛА [11-17], показал, что ни один из них не даёт достаточного качества сегментации без их дополнительной настройки под ПрО. Для разработки методики автоматизированной обработки аэроснимков БПЛА были выбраны методы фильтрации локальных максимумов и сегментации водораздела. Укрупнённый алгоритм включает определение по снимку границ лесных массивов, а далее выделение кроны каждого дерева отдельно.

Общая схема определения контуров включает операции: предобработка снимка; формирование маркеров; применение метода сегментации водораздела; извлечение и аппроксимация всех контуров. Метод сегментации водораздела может применяться несколько раз для каждого найденного контура кроны в целях повышения точности его выделения каждого дерева. Это обеспечивает определение контура кроны даже для деревьев с небольшими кронами.

При разработке методики автоматизированной обработки аэроснимков БПЛА и её программной реализации применялась методика концептуального моделирования предметных задач (ПрЗ) [7-10]. Концептуальное моделирование – процесс выявления системы знаний ПрО выделенной ПрЗ и фиксации полученных результатов в определённой форме [7]. Процесс концептуального моделирования состоит из следующих этапов описания:

1)    динамической составляющей - формирование системы предметных зависимостей (ПЗ) с последующим составлением спецификаций;

2)    статической составляющей - формирование основной концептуальной (понятийной) структуры;

3)    модели в целом - увязка статической и динамической составляющих в виде матричной диаграммы.

Методика концептуального моделирования позволяет обеспечить адекватность синтаксических представлений (в т.ч. различных изображений), контролировать логику решения задач и уменьшить количество ошибок на этапе программной реализации.

2. Разработка методики

Использование стандартного метода сегментации водораздела не позволяет точно выделять кроны деревьев на снимке БПЛА. В зависимости от настраиваемых параметров результат будет либо обобщённым (многие кроны будут объединены в группу и будут считаться за одно дерево), либо чрезмерно раздробленным (из-за внутренних теней крона одного дерева будет считаться за несколько, а маленькие кроны деревьев не будут обнаружены). Поэтому задача решается в два этапа: определение контуров общей области крон деревьев и разбиение этих областей на контуры единичных деревьев.

На первом этапе маркеры для водораздела определяются методом фильтрации локальных максимумов, на втором - применением адаптивного порога на основе среднего значения. Такие маркеры можно сужать. При сужении маркеры могут разрываться, образуя из одного несколько. При малом сужении разгруппировать кроны не получится, а при большом – потеряются маленькие кроны. Чтобы этого избежать, второй этап повторяется для каждого контура отдельно с увеличением коэффициента сужения до тех пор, пока маркеры не исчезнут полностью. При каждом таком проходе контур, который был разгруппирован, удаляется из рассмотрения, а новые добавляются.

Составлены модельные представления для ПрЗ на основе концептуального моделирования [7, 8]: «первичное определение контуров»; «вторичное определении контуров»; «разгруппирование контуров» (промежуточная задача, обеспечивающая циклическое решение задачи «вторичное определение контуров» для каждого контура отдельно).

2.1  Модельное представление ПрЗ «первичное определение контуров»

Задача заключается в том, чтобы по исходному снимку БПЛА лесной территории выделить области с кронами насаждений без попытки разделить их на отдельные деревья. В результате решения этой задачи формируется список контуров. Общая схема решения задачи состоит в расчёте маркеров методом фильтрации локальных максимумов с применением Евклидова преобразования расстояния и использовании их для выделения объектов методом сегментации водораздела. Далее по найденным объектам можно найти их контуры.

Вначале описывается динамическая составляющая концептуальной модели ПрЗ. Проводится декомпозиция ПрЗ на подзадачи, их проверка и построение диаграмм (системы ПЗ), отражающих декомпозицию ПрЗ. Каждая ПЗ кодируется: буква обозначает ПрЗ, первое число – номер уровня декомпозиции, второе число – порядковый номер действия на уровне.

На рисунке 3 представлена диаграмма декомпозиции ПрЗ «первичное определение контуров», а на рисунках 4-7 – диаграммы декомпозиции сложных ПЗ (СПЗ): «применение метода», «формирование маркеров», «нахождение контуров всех объектов» и «нахождение контура текущего объекта».

 

Рисунок 3 – Диаграмма декомпозиции предметной задачи «первичное определение контуров»

 

Рисунок 4 – Диаграмма декомпозиции сложной предметной зависимости «применение метода»

 

Рисунок 5 – Диаграмма декомпозиции сложной предметной зависимости «формирование маркеров»

 

Рисунок 6 – Диаграмма декомпозиции сложной предметной зависимости «нахождение контуров всех объектов»

 

Рисунок 7 – Диаграмма декомпозиции сложной предметной зависимости «нахождение контура текущего объекта»

 

СПЗ имеют структурные свойства (см. таблицу 1). Роль параметра определяется функцией, которой соответствует структурное свойство. В таблице 2 приведено описание фрагмента структуры СПЗ ПрЗ «первичное определение контуров». В таблице 3 приведено описание всех ПЗ ПрЗ «первичное определение контуров».

 

Таблица 1 - Описание структурных свойств сложной предметной зависимости

Структурное свойство (действие)

Обозначение

Роль параметра

Заголовок последовательности

[

Функция последовательности

Последний элемент последовательности

]

Функция последовательности

Заголовок цикла

{

Функция цикла

Тело цикла

!

Счётчик цикла

Функция цикла

$

Функция итерации

Конец цикла

}

Функция цикла

Заголовок переключателя

?

Аргумент альтернативы

Альтернатива переключателя

/

Аргумент альтернативы

Функция переключателя

#

Функция альтернативы

 

Таблица 2 - Описание фрагмента структуры сложной предметной зависимости предметной задачи
«первичное определение контуров»

Код сложного действия

Код начального действия

Код конечного действия

Вид компоновки

b1.1

b2.1

b2.2

Последовательность

b2.1

b3.1

b3.2

Последовательность

b3.2

b3.3

Последовательность

b3.3

b3.4

Последовательность

b2.2

b3.5

b3.6

Последовательность

b3.6

b3.7

Последовательность

b3.3

b4.1

b4.2

Последовательность

b4.2

b4.3

Последовательность

b4.3

b4.4

Последовательность

b3.6

b4.5

Цикл

b4.5

b5.1

b5.2

Последовательность

b5.2

b5.3

Последовательность

b5.2

b6.1

b6.2

Последовательность

b6.2

b6.3

Последовательность

b5.3

b6.4

Переключатель

b6.5

Переключатель

b6.4

b7.1

b7.2

Последовательность

 

Таблица 3 – Описание предметной зависимости предметной задачи «первичное определение контуров»

Код

Наименование ПЗ

Степень формализации

Статус

Структурное свойство

b1.1

Первичное определение контуров

Алг.

П

[

b2.1

Применение метода

Алг.

П

[

b2.2

Формирование результата

Алг.

П

] [

b3.1

Перевод снимка в градации серого

Ан.

Э

b3.2

Размытие по Гауссу

Ан.

Э

b3.3

Формирование маркеров

Алг.

П

[

b3.4

Применение водораздела

Ан.

Э

]

b3.5

Создание результирующего списка

Ан.

Э

b3.6

Нахождение всех контуров

Алг.

П

{

b3.7

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

Ан.

Э

]

b4.1

Применение порогового значения

Ан.

Э

b4.2

Вычисление Евклидова преобразование расстояния

Ан.

Э

b4.3

Определение координат локальных максимумов

Ан.

Э

b4.4

Создание маркеров

Ан.

Э

]

b4.5

Нахождение контура i-ого объекта

Алг.

П

! $ [

b5.1

Фиксация текущего объекта

Ан.

Э

b5.2

Нахождение контура текущего объекта

Алг.

П

[

b5.3

Нахождение контуров всех объектов в зависимости от наличия объекта

Ан.

П

] ? #

b6.1

Нахождение контура

Ан.

Э

b6.2

Аппроксимация кривых контура

Ан.

Э

b6.3

Добавление контура к результирующему списку

Ан.

Э

]

b6.4

Нахождение контуров всех объектов при наличии объекта

Алг.

П

/ [

b6.5

Нахождение контуров всех объектов при отсутствии объекта

Ан.

Э

/ }

b7.1

Переход к следующему объекту

Ан.

Э

b7.2

Нахождение контуров всех объектов при наличии объекта для предыдущего объекта

Ан.

Э

]

 

 Степень формализации может быть аналитической (ан.), статистической (стат.), эмпирической (эмп.), алгоритмической (алг.), информационной (инф.). Статус ПЗ может быть элементарным (Э), промежуточным (П), квазиэлементарным (КЭ). При описании информационной составляющей задачи проводится классификация информации, определение и описание параметров ПрЗ.

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

 

Таблица 4 - Описание содержания элементарных предметных зависимостей предметной задачи «первичное определение контуров»

Код

Наименование зависимости

Аргументы зависимости

Функция зависимости

 

b3.1

Перевод снимка в градации серого

Обозначение исходного снимка

Обозначение снимка в градации серого

 

b3.2

Размытие по Гауссу

Обозначение снимка в градации серого

Обозначение размытого снимка

 

b3.4

Применение водораздела

Евклидово преобразование расстояния; массив маркеров; порог

Обозначение массива объектов

 

b3.5

Создание результирующего списка

Обозначение результирующего списка

 

b3.7

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

Обозначение результирующего списка

Обозначение результирующего списка

 

b4.1

Применение порогового значения

Обозначение размытого снимка

Порог

 

b4.2

Вычисление Евклидова преобразования расстояния

Порог

Евклидово преобразование расстояния

 

b4.3

Определение координат локальных максимумов

Евклидово преобразование расстояния; порог

Массив координат локальных максимумов

 

b4.4

Создание маркеров

Массив координат локальных максимумов

Массив маркеров

 

b5.1

Фиксация текущего объекта

Количество объектов (счётчик цикла)

Номер объекта

 

b6.1

Нахождение контура

Обозначение объекта

Обозначение контура

 

b6.2

Аппроксимация кривых контура

Обозначение контура

Обозначение контура

 

b6.3

Добавление контура к результирующему списку

Результирующий список; обозначение контура

Обозначение результирующего списка

 

 

b6.5

Нахождение контуров всех объектов при отсутствии объекта

Количество объектов; обозначение результирующего списка

Обозначение результирующего списка

 

b7.1

Переход к следующему объекту

Количество объектов

Количество объектов

 

b7.2

Нахождение контуров всех объектов при наличии объекта для предыдущего объекта

Номер объекта; обозначение результирующего списка

Обозначение результирующего списка

 

В таблице 5 приведено описание потоков данных, которое обеспечивает нормализованное описание содержательных характеристик (входных и выходных) для каждой элементарной ПЗ. Каждая категория может выполнять роль атрибута (А), функции (Ф) или атрибута по умолчанию (Ау). В таблице 6 описаны структурные свойства для ПЗ ПрЗ «первичное определение контуров».

Итогом концептуального моделирования является формирование матричной диаграммы, отражающей представление ПрЗ «первичное определение контуров» в целом. Фрагмент её представлен на рисунке 8. Для элементарных действий их роль заменяется знаками: «+» для аргумента, «.» для аргумента по умолчанию, «*» для функции.

 

Таблица 5 – Нормализованное описание содержания предметной зависимости предметной задачи
«первичное определение контуров»

Код

Код категории

Роль

 

Код

Код категории

Роль

b3.1

A3.1

A3.2

А

Ф

b4.4

A3.9

A3.5

А

Ф

b3.2

A3.2

A3.3

А

Ф

b5.1

A3.10

A1.1

Ау

Ф

b3.4

A3.4

A3.5

A3.6

A3.7

А

А

А

Ф

b6.1

A3.11

A3.12

А

Ф

b3.5

A3.8

Ф

b6.2

A3.12

A3.12

Ау

Ф

b3.7

A3.8

A3.8

Ау

Ф

b6.3

A3.8

A3.12

A3.8

Ау

А

Ф

b4.1

A3.3

A3.6

А

Ф

b6.5

A3.10

A3.8

A3.8

Ау

Ау

Ф

b4.2

A3.6

A3.4

А

Ф

b7.1

A3.10

A3.10

Ау

Ф

b4.3

A3.3

A3.6

A3.9

А

А

Ф

b7.2

A1.1

A3.8

A3.8

Ау

Ау

Ф

 

Таблица 6 – Описание структурных свойств предметной зависимости предметной задачи «первичное определение контуров»

Код

Код категории

Структурное свойство зависимости

 

Код

Код категории

Структурное свойство зависимости

b1.1

A3.8

[

b4.5

A3.10

A3.8

A3.8

!

$

[

b2.1

A3.7

[

b5.2

A3.8

[

b2.2

A3.8

A3.8

]

[

b5.3

A3.8

A3.10

A3.8

]

?

#

b3.3

A3.5

[

b6.3

A3.8

]

b3.4

A3.7

]

b6.4

A3.10

A3.8

/

[

b3.6

A3.8

{

b6.5

A3.10

A3.8

/

}

b3.7

A3.8

]

b7.2

A3.8

]

b4.4

A3.5

]

 

 

 

 

Рисунок 8 – Фрагмент матричной диаграммы концептуальной модели предметной задачи «первичное определение контуров»

 

Матричная диаграмма на рисунке 8 позволяет наглядно показать связь ПЗ (строк) с предметными категориями (столбцами). Обозначения на пересечениях строк и столбцов дают представления о структурах динамической составляющей концептуальной модели: последовательности, циклы, условия, входные и выходные параметры функции.

Матричная диаграмма позволяет проверить логику решения задачи. По матричной диаграмме проще программировать задачу, т.к. уже определены основные структуры и последовательности зависимостей.

2.2 Модельное представление ПрЗ «вторичное определение контуров»

Похожее модельное представление имеет ПрЗ «вторичное определение контуров». Задача заключается в том, чтобы разделить контуры, полученные в результате решения ПрЗ «первичное определение контуров», на несколько частей, если в данной области находятся кроны нескольких деревьев.

Имеется изображение с областью исходного снимка одного из контуров. Решение ПрЗ «вторичное определение контуров» состоит из следующей последовательности действий:

  • смешивание цветов (пирамидная фильтрация среднего значения для сглаживания внутренних теней крон деревьев);
  • перевод снимка в градации серого;
  • применение порогового значения;
  • расширение снимка;
  • вычисление Евклидова преобразования расстояния;
  • применение адаптивного порога на основе среднего значения;
  • сужение снимка;
  • удаление шума;
  • создание маркеров;
  • применение сегментации водораздела;
  • нахождение контура (для каждого объекта);
  • аппроксимация кривых контура (для каждого объекта);
  • добавление контура к результирующему списку (для каждого объекта);
  • вывод результирующего списка.

2.3   Модельное представление ПрЗ «разгруппирование контуров»

Решение ПрЗ «разгруппирование контуров» является связующим звеном для перехода от ПрЗ «первичное определение контуров» к ПрЗ «вторичное определение контуров».

Имеется список обобщённых контуров, полученный в процессе выполнения первого этапа дешифрирования. Решение ПрЗ «разгруппирование контуров» осуществляется в следующей последовательности действий:

  • задание индекса эрозии (коэффициента сужения);
  • создание результирующего списка;
  • создание изображения с вырезанной областью контура (для каждого контура);
  • проведение вторичного определения контуров (для каждого контура);
  • замена текущего контура на новый (для каждого контура при условии нахождения более одного контура);
  • перенос контура из исходного списка в результирующий (для каждого контура при условии достижения предела эрозии);
  • увеличение индекса эрозии;
  • вывод результирующего списка.

Действия 3-7 выполняются до тех пор, пока не будут разгруппированы все возможные контуры (пока не будет достигнут индекс эрозии, при котором сотрутся все маркеры).

2.4   Методика автоматизированной обработки снимков БПЛА

Разработанная методика состоит из первичного определения контуров и их дальнейшего разгруппирования, которое включает в себя вторичное определение контуров.

Первичное определение контуров состоит из следующей последовательности действий:

  • предобработка снимка (перевод в градацию серого, размытие по Гауссу);
  • формирование маркеров (применение порогового значения, вычисление Евклидова преобразования расстояния, определение локальных максимумов);
  • применение метода сегментации водораздела;
  • извлечение и аппроксимация всех контуров.

Разгруппирование контуров выполняется для каждого контура, полученного в ходе первичного определения. Оно состоит из следующей последовательности действий:

  • задание начального коэффициента сужения;
  • вырезание из исходного снимка области внутри контура;
  • вторичное определение контура;
  • если разделение произошло, то полученные контуры заменяют исходный;
  • повторение действий 2-4, увеличивая коэффициент сужения, до тех пор, пока вторичное определение контура не перестанет находить контуры.

Вторичное определение контуров состоит из следующей последовательности действий:

  • предобработка снимка (смешивание цветов, перевод в градацию серого);
  • формирование маркеров (применение порогового значения, расширение снимка, вычисление Евклидова преобразования расстояния, применение адаптивного порога на основе среднего значения, сужение снимка, удаление шума);
  • применение метода сегментации водораздела;
  • извлечение и аппроксимация всех контуров.

3. Описание информационной системы

Для разработки информационной системы (ИС) были использованы следующие библиотеки Python:

  • OpenCV и scikit-image (skimage) для обработки изображений и компьютерного зрения;
  • GDAL/OGR для работы с растровыми и векторными геопространственными данными;
  • SciPy для расчёта Евклидова преобразования расстояния;
  • NumPy для работы с многомерными массивами (в таком формате представлены снимки БПЛА для обработки);
  • PyQt для создания пользовательского интерфейса.

Функции, связанные с тематическим дешифрированием, представлены в таблице 7. Все фиксированные числовые значения, используемые в функциях, были получены опытным путём.

 

Таблица 7 – Функции информационной системы, связанные с тематическим дешифрированием

Функция

Входные данные

Выходные данные

Описание

TreeIdentification1

img (снимок)

Список контуров

Первичное определение контуров

Ungroup

img (снимок),

contours (список контуров)

Список контуров

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

TreeIdentification2

img (снимок),

iter (степень эрозии)

Список контуров

Вторичное определение контуров

ExpansionContours

img (снимок),

eax (список контуров)

Контур

Расширение контуров

VectorizationContours

lst (список контуров),

path (путь с именем для сохранения),

img (снимок)

Сохранение результатов дешифрирования

ConvertCoordinates

x и y (пиксельные координаты),

listGeo (список информации о географии снимка)

Географические координаты

Преобразование пиксельных координат в географические

DefinPropertiesPolygon

img (снимок),

contours (список контуров),

listGeo (список информации о географии снимка)

Списки параметров полигонов

Определение параметров полигонов

 

Функция TreeIdentification1 выделяет контуры крон деревьев без разгруппирования. Исходный снимок переводится в градации серого функцией cv2.cvtColor. cv2.GaussianBlur размывает по Гауссу снимок для сглаживания внутренних теней крон деревьев. cv2.threshold применяет порог фиксированного уровня. Функция ndimage.distance_transform_edt вычисляет Евклидово преобразование расстояния. peak_local_max находит пики локальных максимумов. На их основе функция ndimage.label создаёт маркеры для водораздела. watershed возвращает матрицу, помеченную с использованием алгоритма сегментации водораздела. Далее выделяется контур каждого определённого объекта. Цикл повторяется по каждому объекту сегментации. Создаётся изображение с размерами исходного снимка, заполненное чёрным цветом. На нём отображается белый силуэт объекта. Функция cv2.findContours находит контур этого объекта. Кривые контура аппроксимируются, и он добавляется к списку контуров, если его площадь больше определённого минимума (это необходимо для отсеивания помех). Контуры, полученные в результате работы функции TreeIdentification1, представлены на рисунке 9.

 

Рисунок 9 – Контуры, полученные в результате работы функции TreeIdentification1

 

Функция TreeIdentification2 отвечает за разделение одного контура, если он включает кроны нескольких деревьев. На рисунке 10 представлен пример входного изображения одиночного контура. Изображение переводится в градации серого функцией cv2.cvtColor. cv2.threshold применяет порог фиксированного уровня. На рисунке 11 представлен пример порога фиксированного уровня. cv2.dilate расширяет снимок для устранения случайных разрывов. На рисунке 12 представлен пример расширения снимка. cv2.distanceTransform вычисляет Евклидово преобразование расстояния. Диапазон значений нормируется к стандартной градации изображений в оттенках серого функцией cv2.normalize. На рисунке 13 представлен пример нормализованного Евклидова преобразования расстояния. cv2.adaptiveThreshold применяет адаптивный порог на основе среднего значения. На рисунке 14 представлен пример адаптивного порога на основе среднего значения. Функция cv2.erode сужает изображение в соответствии с выбранным количеством итераций, а cv2.morphologyEx удаляет возникший шум. На рисунке 15 представлен пример сужения снимка.

В переменную unknown записываются неизвестные области с помощью вычитания функции cv2.subtract. cv2.connectedComponents создаёт маркеры для сегментации водораздела. Добавляется последний маркер, обозначающий оставшуюся территорию. cv2.watershed выполняет сегментирование изображения на основе маркера с использованием алгоритма водораздела. На рисунке 16 представлен пример результата работы алгоритма водораздела.

 

Рисунок 10 – Пример входного изображения одиночного контура

 

Рисунок 11 – Пример порога фиксированного уровня

 

Рисунок 12 – Пример расширения снимка

 

Рисунок 13 – Пример нормализованного Евклидова преобразования расстояния

 

Рисунок 14 – Пример адаптивного порога на основе среднего значения

 

Рисунок 15 – Пример сужения снимка

 

Рисунок 16 – Пример результата работы алгоритма водораздела

 

Этот результат необходимо обработать функциями cv2.threshold, cv2.erode и cv2.findContours, чтобы найти контуры близко стоящих друг к другу объектов. Кривые всех найденных контуров аппроксимируются, и они добавляются к списку контуров, если их площади больше определённого минимума (это необходимо для отсеивания помех).

Функция ExpansionContours выполняет расширение контура, необходимое после выполнения функции TreeIdentification2. На нём отображается белый силуэт объекта. Применяется преобразование расстояния. Функция cv2.inRange берёт все пиксели, лежащие в данном диапазоне. cv2.findContours находит расширенный контур, являющийся результатом работы функции ExpansionContours.

Функция VectorizationContours сохраняет контуры крон деревьев и их характеристики в файл формата SHP. Вначале создаётся пустой файл. Средствами GDAL открывается исходный снимок, из которого импортируется информация о системе географических координат и информация о географических трансформациях в список listGeo. CreateLayer создаёт слой для хранения полигонов, FieldDefn и CreateField создают поля для атрибутов полигонов.

Функция ConvertCoordinates конвертирует пиксельные координаты в широту и долготу на основе информации о географии исходного снимка.

4. Оценка результатов

При обработке спутниковых снимков невозможно выделить каждый объект отдельно из-за низкого разрешения, поэтому они объединяются в группы. Высокое разрешение снимков БПЛА позволяет это сделать. Поэтому необходимо оценить достоверность идентификации каждого объекта. Из 113 деревьев стандартным методом водораздела правильно было определено 59 (52,2%), а разработанной методикой – 80 (70,8%). Разработанная методика позволила улучшить идентификацию объектов на 18,6%.

Заключение

Разработан прототип ИС, позволяющий на данном этапе идентифицировать контуры отдельных деревьев. Алгоритмы реализованы в виде программного средства на языке программирования Python на основе методики концептуального моделирования, позволяющей автоматизировать обработку и интерпретацию снимков с БПЛА лесных территорий.

В тестовом примере разработанная методика позволила улучшить идентификацию лесных объектов на снимках БПЛА на 18,6%. Развитие данной методики может выполняться для определения характеристик идентифицируемых деревьев: возраст, порода, высота, запас древесины.

×

About the authors

Ksenia V. Shoshina

Northern (Arctic) Federal University

Author for correspondence.
Email: k.shoshina@narfu.ru
Scopus Author ID: 56588048300
ResearcherId: N-3539-2016

Ph.D., Associate Professor of the Department of Information Systems and Information Security, Senior Researcher of the Center for Artificial Intelligence and Big Data Analysis 

Russian Federation, Arkhangelsk

Roman A. Aleshko

Northern (Arctic) Federal University

Email: r.aleshko@gmail.com
Scopus Author ID: 56588041100
ResearcherId: ABF-8022-2020

Cand. of Sciences, Professor of the Department of Information Systems and Information Security

Russian Federation, Arkhangelsk

Vladimir V. Berezovsky

Northern (Arctic) Federal University

Email: v.berezovsky@narfu.ru
SPIN-code: 5042-1121
Scopus Author ID: 24330874600
ResearcherId: W-3888-2017

Ph.D., Professor of the Department of Information Systems and Information Security, Senior Researcher at the Center for Artificial Intelligence and Big Data 

Russian Federation, Arkhangelsk

Irina S. Vasendina

Northern (Arctic) Federal University

Email: i.vasendina@narfu.ru
Scopus Author ID: 57217135305
ResearcherId: AAO-3831-2020

Ph.D., Associate Professor of the Department of Information Systems and Information Security, Senior Researcher at the Center for Artificial Intelligence and Big Data Analysis

Russian Federation, Arkhangelsk

Alexey S. Shoshin

Northern (Arctic) Federal University

Email: ashoshin@gmail.com

Ph.D., Assistant of the Department of Information Systems and Information Security 

Russian Federation, Arkhangelsk

Alexander T. Guryev

Northern (Arctic) Federal University

Email: atg1i@rambler.ru
Scopus Author ID: 56587843700
ResearcherId: AAO-3894-2020

Ph.D., D.Sc., Professor of the Department of Information Systems and Information Security

Russian Federation, Arkhangelsk

References

  1. Borgest NM. Formation and development of the scientific discipline "ontology of designing": a brief history of personal experience [In Russian]. Ontology of designing. 2020; 10(4): 415-448. - doi: 10.18287/2223-9537-2020-10-4-415-448.
  2. Borgest NM. The boundaries of the ontology of designing [In Russian]. Ontology of designing. 2017; 7(1): 7-33.
  3. Lomov PA. Application of ontological design patterns for the creation and use of ontologies in an integrated knowledge space [In Russian]. Ontology of designing. 2015; 5(2).. 233-245.
  4. Smirnov SV. Ontological approach to the formation of heterogeneous modeling environments [In Russian]. Bulle-tin of the Samara State Technical University. Series: Engineering sciences. No. 4. 2011. 50-61.
  5. Mokhov VA. Conceptual modeling as a basis for the design of complex systems [In Russian]. News of higher educational institutions. North Caucasian region. Technical science. No. 2 (198). 2018. 40-47.
  6. Smirnov AV, Pashkin MP, Shilov NG, Levashova TV. Ontologies in artificial intelligence systems: methods of construction and organization (part 1) [In Russian]. News of artificial intelligence. 2002; 1(49): 3-13.
  7. Volkova GD. Conceptual modeling of design problems [In Russian]. Moscow: FGBOU VO "MSTU "STANKIN", 2016.
  8. Volkova GD. Methodology of automation of intellectual work [In Russian]. Moscow: Janus-K, 2013.
  9. Novoselova OV. Modeling of subject tasks at the initial stages of automation of project activities [In Russian]. Moscow: FGBOU VO “MSTU “STANKIN”, 2016. 100 p.
  10. Vasendina I, Shoshina K, Guriev A, Aleshko R. Automated processing of unmanned aerial vehicles images based on conceptual modeling of objective tasks. In: Journal of Physics: Conference Series, 2020; 1553(1).
  11. Gonzales RC, Woods RE. Digital Image Processing. 3rd ed. New Jersey: Pearson Prentice Hall, 2008.
  12. Larsen M, Eriksson M, Descombes X, Perrin G, Brandtberg T, Gougeon F. Comparison of six individual tree crown detection algorithms evaluated under varying forest conditions. International Journal of Remote Sensing. 2011; 32(20): 5827–5852.
  13. Baddeley AJ, Van Lieshout MNM. Stochastic geometry models in high-level vision. Journal of Applied Statistics. 1993; 20(5-6): 231–256.
  14. Ke Y, Quackenbush LJ. A review of methods for automatic individual tree-crown detection and delineation from passive remote sensing. International Journal of Remote Sensing. 2011; 32(17): 4725–4747.
  15. Pouliot DA, King DJ, Bell FW, Pitt DG. Automated tree crown detection and delineation in high-resolution digital camera imagery of coniferous forest regeneration. Remote Sensing of Environment. 2002; 82(2): 322–334.
  16. Gougeon F. A crown-following approach to the automatic delineation of individual tree crowns in high spatial resolution aerial images. Canadian Journal of Remote Sensing. 1995; 21(3): 274–284.
  17. Szelisk, R. Computer vision: algorithms and applications. 1st ed. R. Szeliski; London: Springer-Verlag, 2010.
  18. Shoshina K., Vasendina I., Volkova G., Tyurbeeva T. Development of a methodology for determining overgrown agricultural fields based on data from unmanned aerial vehicles on computer vision // in Proc. of SPIE - The International Society for Optical Engineering, 2021, 11758, 117580V.
  19. Aleshko RA, Guryev AT. Methods of thematic interpretation of aerospace images of taiga forests using methods of system analysis [In Russian]. Arctic Environmental Research. 2013; 3: 126-132.
  20. Embley DW, Thalheim B. Handbook of conceptual modeling: theory, practice, and research challenges: Springer Science & Business Media, 2012.
  21. Guizzardi G, Wagner G. Using the unified foundational ontology (UFO) as a foundation for general conceptual modeling languages // Theory and applications of ontology: computer applications. Dordrecht: Springer Netherlands, 2010. P.175-196.
  22. Wand Y, Storey VC, Weber R. An ontological analysis of the relationship construct in conceptual modeling. ACM Transactions on Database Systems (TODS). 1999; 24(4): 494-528.
  23. Guizzardi G. Towards ontological foundations for conceptual modeling: The unified foundational ontology (UFO) story.Applied ontology. 2015; 10(3-4): 259-271.

Supplementary files

Supplementary Files
Action
1. JATS XML
2. Figure 1 – Experimental site on a satellite image

Download (372KB)
3. Figure 2 – Original image from a UAV

Download (740KB)
4. Figure 3 – Decomposition diagram of the "Primary definition of contours" subject task

Download (42KB)
5. Figure 4 – Decomposition diagram of the “Application of the method” complex subject dependence

Download (82KB)
6. Figure 5 – Decomposition diagram of the “Formation of markers” complex subject dependence

Download (85KB)
7. Figure 6 – Decomposition diagram of the “Finding the contours of all objects” complex subject dependence

Download (173KB)
8. Figure 7 – Decomposition diagram of the “Finding the contour of the current object” complex subject dependence

Download (74KB)
9. Figure 8 – A fragment of the matrix diagram of the conceptual model of the “Primary definition of contours” subject task

Download (126KB)
10. Figure 9 – Contours resulting from the TreeIdentification1 function

Download (1MB)
11. Figure 10 – An example of a single contour input image

Download (18KB)
12. Figure 11 – Fixed level threshold example

Download (12KB)
13. Figure 12 – Example of a snapshot extension

Download (10KB)
14. Figure 13 – An example of a normalized Euclidean distance transform

Download (10KB)
15. Figure 14 – An example of an adaptive threshold based on the mean

Download (10KB)
16. Figure 15 – Image narrowing example

Download (8KB)
17. Figure 16 – An example of the result of the watershed algorithm

Download (11KB)

Copyright (c) 2023 Shoshina K.V., Aleshko R.A., Berezovsky V.V., Vasendina I.S., Shoshin A.S., Guryev A.T.

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.

СМИ зарегистрировано Федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор).
Регистрационный номер и дата принятия решения о регистрации СМИ: серия ФС 77 - 70157 от 16.06.2017.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies