Extending Map Algebra with Flag Operators

CALDWELL, D.R.
U.S. Army Engineer Research and Development Center, USA
Email: caldwell@tec.army.mil

Key words: Map Algebra, Cartographic Modelling, Operator, Focal, Zonal

Map algebra provides a powerful tool for analysing and manipulating raster data. It is based on the concept of map layers, operations, and procedures. The purpose of the language is to create new map layers using existing map layers and operations that are sequenced in procedures. Map algebra computes new values for locations as a function of the location itself, its neighbourhood, or its zone. This leads directly to three of the four basic classes of operations, including local (cell), focal (neighbourhood), and zonal (zone) operations. The fourth class of operation, incremental, computes new values for a location based on values within an extended area. The map algebra framework has evolved and continues to evolve as extensions are developed and implemented.

This paper introduces a new operator to map algebra, the flag operator. The flag operator evaluates a conditional expression and flags or marks the locations where the condition is met. It is primarily used to evaluate neighbourhoods and zones, resulting in FOCALFLAG and ZONALFLAG operators. Flag operators differ from the traditional map algebra focal and zonal operators in a significant way. Traditional operators focus on assigning new values based on WHAT meets a required condition, while the flag operators identify and mark locations WHERE a required condition is met. For example, a FOCALMAX operator finds the maximum value in a neighbourhood and assigns the maximum value to the source cell of the neighbourhood. Flag operators evaluate a conditional expression and then flag (or mark) any locations that meet the condition. In the FOCALFLAGMAX example, they would find the location of the maximum value in the neighbourhood and flag it. Flag operators can be cumulative or binary. They can be used for many purposes. This paper demonstrates the use of the operator to identify 'dominant' locations.

Flag operators are an important addition to map algebra. They are not simply a special case of existing functions, but are a new family of operators. By focusing on 'where' conditions are met, rather than 'what' meets a condition, flag functions extend and enhance our spatial analysis capabilities.