Вкладка алгебры изображений позволяет проводить различные алгебраические операции над выбранными данными по задаваемым пользователем формулам. Для проведения вычислений данные должны быть помещены в корзину и затем выбраны на вкладке подготовки данных (см. Вкладка выбора данных и каналов).
Интерфейс и управляющие элементы
Вид интерфейса с включённой вкладкой алгебры изображений приведён ниже.
Вкладка алгебры изображений включает в себя следующий набор активных компонент управления:
Переключатель активности вкладки | |
Блок работы с результатами вычислений позволяет сохранять полученные результаты проведённых вычислений, а также загружать и редактировать ранее полученные результаты. |
|
Для создания новой задачи на вычисление нужно предварительно выбрать анализируемые данные, задать параметры вычислений и ввести формулу, по которой будет рассчитываться результат. После задания всех необходимых параметров нужно нажать кнопку Создать задание. Задание будет поставлено в очередь на обработку и после её завершения будет показано в этой же вкладке. |
Использование вкладки
Значения в отдельных каналах спутниковых снимков могут быть преобразованы по формуле, задаваемой пользователем непосредственно в интерфейсе. Результатом обработки являются новые растровые изображения, которые созданы из существующих растровых слоев с помощью арифметических и логических выражений с участием целых и дробных чисел, нормировок и математических функции. С помощью этого инструмента в картографических 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. В области статус выполнения задачи можно отслеживать прогресс выполнения.
Значение кнопок управления:
Блок работы с результатами
Принят следующий принцип работы вкладки: пользователь в каждый момент времени может работать только с одним результатом вычислений. Результату автоматически дается имя, но пользователь может изменить его на любое другое, нажав на него. Управляющие элементы для работы с текущим и проведенными ранее заданиями на вычисления имеют следующее значение:
Управляющие элементы области информации о текущем задании: