ndi

From DavinciWiki
Jump to: navigation, search

Description

Generates a Normalized Difference Index map

Arguments and Return Values

Arguments: 1- or 2-dimensional greyscale images representing two spectral bands

Return Value: A float greyscale image

Usage

Syntax: ndi(band1, band2)

This function is a generalization of satellite image-processing formulae which take the form:

NDI = (band1 - band2) / (band1 + band2)

The most commonly-used variation is the Normalized Difference Vegetation Index, in which near-infrared is used for the first band, and red is used for the second.

See this discussion of related functions for a lengthy discussion of this topic.

NDI calculations will return both positive and negative values. Generally the distinction between positive and negative results provides important information. For example, in the NDVI variation, positive values generally indicate the presence of vegetation (and the greater the value, the healthier the vegetation is likely to be), whereas negative values indicate non-vegetative matter (rocks, soil, water, and so on).

Some commonly-used variations from "Landsat Image Processing" (James S. Aber, 2009):

Normalized Difference Vegetation Index (NDVI) = ndi(NIR, Red) ((NIR - Red) / (NIR + Red))

Green Normalized Difference Vegetation Index (GNDVI) = ndi(NIR, Green) ((NIR - Green) / (NIR + Green))

Normalized Burn Ratio (NBR) = ndi(NIR, LandSatTM7) ((NIR - LandSatTM7) / (NIR + LandSatTM7))

Examples

NDVI:

dv> nir
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> r
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> result = ndi(nir, r)
Generating a Normalized Difference Index image.
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> max(result)
1.000000000

dv> min(result)
-1.000000000

GNDVI:

dv> nir
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> g
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> result = ndi(nir, g)
Generating a Normalized Difference Index image.
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> max(result)
1.000000000

dv> min(result)
-1.000000000

NBR (mir2 is the LandSat band 7 image):

dv> nir
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> mir2
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> result = ndi(nir, mir2)
Generating a Normalized Difference Index image.
2000x1000x1 array of float, bsq format [8,000,000 bytes]

dv> max(result)
1.000000000

dv> min(result)
-1.000000000

Images

Full set of LandSat 7 imagery:

NYC-Band Comparison.PNG

Output of ndi() (NDVI):

Vegetation Index-NYC-NDVI.PNG

Output of ndi() (GNDVI):

Vegetation Index-NYC-GNDVI.PNG

Output of ndi() (NBR):

Vegetation Index-NYC-NBR.PNG

DavinciWiki Mini-Nav Bar

Contents


Contact Developers

  • davinci-dev [AT] mars.asu.edu

All other topics

  • See navigation on the left

Related Functions

Recent Library Changes

Created On: 07-16-2012
Modified On: 05-02-2013

Personal tools