Вкладка алгебры изображений

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

Интерфейс и управляющие элементы

Вид интерфейса с включённой вкладкой алгебры изображений приведён ниже.

algebra_tab

Вкладка алгебры изображений включает в себя следующий набор активных компонент управления:

Переключатель активности вкладки on_off
Работа с результатами вычислений

Блок работы с результатами вычислений позволяет сохранять полученные результаты проведённых вычислений, а также загружать и редактировать ранее полученные результаты.

algebra_res_mgmt
Создание задач на вычисление

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

algebra_create

Использование вкладки

Значения в отдельных каналах спутниковых снимков могут быть преобразованы по формуле, задаваемой пользователем непосредственно в интерфейсе. Результатом обработки являются новые растровые изображения, которые созданы из существующих растровых слоев с помощью арифметических и логических выражений с участием целых и дробных чисел, нормировок и математических функции. С помощью этого инструмента в картографических web-интерфейсах возможен расчет “на лету” различных индексов, проведение экспериментов по созданию новых тематических продуктов. Например, для гиперспектрометров инструмент позволит исследователям удобно подбирать на основе зон поглощения и излучения в спектре разностные индексы для изучения минералогического и химического состава подстилающей поверхности.

Можно выделить два блока на вкладке: работа с результатами и создания нового задания.

Задание на вычисления будет поставлено по данным, которые выбраны на вкладке выбора данных (Вкладка выбора данных и каналов).

Блок создания новой задачи на вычисления

Перед созданием новой задачи необходимо установить ее параметры. Управляющие элементы этого блока имеют следующее значение:

Вся сцена – проводить вычисления для всей сцены, независимо от текущих границ карты. Недоступно для композитов.

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

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

Создать задачу – создание новой задачи с указанными параметрами на каналах и сценах с вкладки выбора данных.

Формула для вычислений – в данное поле вводится формула, по которой будет получен результат вычислений. Используемые для вычислений данные выбираются на вкладке каналов и обозначаются латинскими буквами и цифрами. Доступны арифметические и логические операции, различные математические функции (полный список операторов и функций доступен на сайте GRASS GIS).

Поддерживаемые операторы:

Оператор Значение Тип Приоритет
- negation Arithmetic 12
~ one’s complement Bitwise 12
! not Logical 12
^ exponentiation Arithmetics 11
% modulus Arithmetics 10
/ division Arithmetics 10
* multiplication Arithmetics 10
+ addition Arithmetics 9
- subtraction Arithmetics 9
<< left shift Bitwise 8
>> right shift Bitwise 8
>>> right shift (unsigned) Bitwise 8
> greater than Logical 7
>= greater than or equal Logical 7
< less than Logical 7
<= less than or equal Logical 7
== equal Logical 6
!= not equal Logical 6
& bitwise and Bitwise 5
| bitwise or Bitwise 4
&& logical and Logical 3
&&& logical and[1] Logical 3
|| logical or Logical 2
|||s logical or[1] Logical 2
?: conditional Logical 1

Поддерживаемые функции:

Функция Описание Тип
abs(x) return absolute value of x *
acos(x) inverse cosine of x (result is in degrees) F
asin(x) inverse sine of x (result is in degrees) F
atan(x) inverse tangent of x (result is in degrees) F
atan(x,y) inverse tangent of y/x (result is in degrees) F
cos(x) cosine of x (x is in degrees) F
double(x) convert x to double-precision floating point F
exp(x) exponential function of x F
exp(x,y) x to the power y F
float(x) convert x to single-precision floating point F
graph(x,x1,y1[x2,y2..]) convert the x to a y based on points in a graph  
if decision options: *
if(x) 1 if x not zero, 0 otherwise  
if(x,a) a if x not zero, 0 otherwise  
if(x,a,b) a if x not zero, b otherwise  
if(x,a,b,c) a if x > 0, b if x is zero, c if x < 0  
int(x) convert x to integer [ truncates ] I
isnull(x) уcheck if x = NULL  
log(x) natural log of x F
log(x,b) log of x base b F
max(x,y[,z...]) largest value of those listed *
median(x,y[,z...]) median value of those listed *
min(x,y[,z...]) smallest value of those listed *
mode(x,y[,z...]) mode value of those listed *
not(x) 1 if x is zero, 0 otherwise  
pow(x,y) x to the power y *
rand(a,b) random value x : a <= x < b  
round(x) round x to nearest integer I
sin(x) sine of x (x is in degrees) F
sqrt(x) square root of x F
tan(x) tangent of x (x is in degrees) F
xor(x,y) exclusive-or (XOR) of x and y I

Пример расчета индекса NDVI:

Данные:

A.1: 2013-07-17 07:36:12 LANDSAT 8 (USGS) OLI_TIRS (4)
A.2: 2013-07-17 07:36:12 LANDSAT 8 (USGS) OLI_TIRS (5)

Формула: float(A.2-A.1)/(A.1+A.2)

После создания новой задачи вид вкладки станет, как на Рис. 2. В области статус выполнения задачи можно отслеживать прогресс выполнения.

algebra_execution

Значение кнопок управления:

  • Сохранить и не ждать – не дожидаться выполнения задачи, но сохранить результат. В случае ее успешного завершения это задание можно будет загрузить позднее, в любое время.
  • Отменить задачу – не дожидаться выполнения задачи и удалить все ее результаты.

Блок работы с результатами

Принят следующий принцип работы вкладки: пользователь в каждый момент времени может работать только с одним результатом вычислений. Результату автоматически дается имя, но пользователь может изменить его на любое другое, нажав на него. Управляющие элементы для работы с текущим и проведенными ранее заданиями на вычисления имеют следующее значение:

  • Сохранить – сохранить проведенное задание.
  • Очистить – очистить проведенное задание (с возможностью восстановления, если задание было сохранено ранее).
  • Удалить – удалить проведенное задание (с удалением с сервера, без возможности восстановления).
  • Загрузить – загрузить список ранее проведенных заданий, сохраненных ранее на сервере. При нажатии откроется область работы с проведенными ранее заданиями. Значение полей и управляющих элементов области показано ниже. Чтобы загрузить как текущее любое задание из списка, надо нажать на него.

algebra_tasks

Управляющие элементы области информации о текущем задании:

  • Имя – имя текущего задания. Может быть изменено при щелчке по имени. Кнопка algebra_save позволяет загрузить в формате GeoTIFF результат задания на компьютер пользователя для дальнейшей работы с ней средствами настольных ГИС.
  • Данные – список данных, по которым проведено задание на вычисления. Для данных высокого разрешения при щелчке по ним, на вкладке высокого разрешения будет установлено время этих данных.
  • Статус – отображение, сохранено ли текущее задание. Если сохранено, то его результат может быть загружен пользователем с сервера в любой момент. Если нет, то текущее задание будет удалено, когда пользователь закончит работу с ним.
  • Формула – формула, по которой были проведены вычисления.