This task calculates topographic features on an input DEM. The result is a classification image of different terrain types or morphometric features such as peak, ridge, pass, plane, channel, or pit.

Example


; Start the application
e = ENVI()
 
; Open an input file
File = Filepath('bhdemsub.img', SUBDIR=['classic','data'], $
  ROOT_DIR=e.Root_Dir)
Raster = e.OpenRaster(File)
 
; Get the task from the catalog of ENVITasks
Task = ENVITask('topographicFeatures')
 
; Define inputs
Task.INPUT_RASTER = Raster
 
; Run the task
Task.Execute
 
; Get the data collection
dataColl = e.Data
 
; Add the output to the data collection
dataColl.Add, Task.OUTPUT_RASTER
 
; Display the result
View = e.GetView()
Layer = View.CreateLayer(Task.OUTPUT_RASTER)

Syntax


Result = ENVITask('TopographicFeatures')

Input parameters (Set, Get): CURVATURE_TOLERANCE, FEATURES, INPUT_RASTER, KERNEL_SIZE, OUTPUT_RASTER_URI, PIXEL_SIZE, SLOPE_TOLERANCE

Output parameters (Get only): OUTPUT_RASTER

Parameters marked as "Set" are those that you can set to specific values. You can also retrieve their current values any time. Parameters marked as "Get" are those whose values you can retrieve but not set.

Input Parameters


CURVATURE_TOLERANCE (optional)

Specify the curvature tolerance. The default value is 0.1. For a pixel to be classified as a peak, pit, or pass, the slope value must be less than the slope tolerance and the cross-sectional curvature must be greater than the curvature tolerance. Increasing the slope tolerance and decreasing the curvature tolerance increases the number of peaks, pits, and passes in the classified output.

FEATURES (optional)

Specify a string array with the features to classify. By default, all features will be included.

  • Peak: A surface with a concave curvature in all directions
  • Ridge: A sloping surface that is concave in the cross-sectional direction
  • Pass: A surface with one convex curvature and one concave curvature
  • Plane: A surface of constant elevation
  • Channel: A sloping surface that is convex in the cross-sectional direction
  • Pit: A surface with a convex curvature in all directions

INPUT_RASTER (required)

Specify a raster on which to calculate topographic features.

KERNEL_SIZE (optional)

Specify the size of the kernel used for processing. The default value is 3.

OUTPUT_RASTER_URI (optional)

Specify a string with the fully qualified filename and path of the associated OUTPUT_RASTER.

  • If you do not specify this parameter, or set it to an exclamation symbol (!), ENVI creates a temporary file.
  • If you set it to the hash symbol (#), ENVI creates a file in the temporary directory, but this file will not be deleted when ENVI closes.

PIXEL_SIZE (optional)

Specify a double-precision array with the X and Y pixel size of the input raster, in meters. If these values are not set, they will be calculated from the spatial reference of the input image. The default value is 1.0 if the input image does not have a valid spatial reference.

SLOPE_TOLERANCE (optional)

Specify the slope tolerance in degrees. The default value is 1.0.

For a pixel to be classified as a peak, pit, or pass, the slope value must be less than the slope tolerance and the cross-sectional curvature must be greater than the curvature tolerance. Increasing the slope tolerance and decreasing the curvature tolerance increases the number of peaks, pits, and passes in the classified output.

Output Parameters


OUTPUT_RASTER

This is a reference to the output raster of filetype ENVI.

Methods


Execute

Parameter

ParameterNames

Properties


DESCRIPTION

DISPLAY_NAME

NAME

REVISION

TAGS

Version History


ENVI 5.5

Introduced

See Also


ENVITask, TopographicModeling Task, GenerateContourLines Task, TopographicShadingUsingHLS Task,TopographicShadingUsingHSV Task, TopographicShadingUsingRGB Task