DESCRIPTION

i.vi calculates vegetation indices based on biophysical parameters.

Background for users new to remote sensing

Vegetation Indices are often considered the entry point of remote sensing for Earth land monitoring. They are suffering from their success, in terms that often people tend to harvest satellite images from online sources and use them directly in this module.

From Digital number to Radiance:
Satellite imagery is commonly stored in Digital Number (DN) for storage purposes; e.g., Landsat5 data is stored in 8bit values (ranging from 0 to 255), other satellites maybe stored in 10 or 16 bits. If the data is provided in DN, this implies that this imagery is "uncorrected". What this means is that the image is what the satellite sees at its position and altitude in space (stored in DN). This is not the signal at ground yet. We call this data at-satellite or at-sensor. Encoded in the 8bits (or more) is the amount of energy sensed by the sensor inside the satellite platform. This energy is called radiance-at-sensor. Generally, satellites image providers encode the radiance-at-sensor into 8bit (or more) through an affine transform equation (y=ax+b). In case of using Landsat imagery, look at the i.landsat.toar for an easy way to transform DN to radiance-at-sensor. If using Aster data, try the i.aster.toar module.

From Radiance to Reflectance:
Finally, once having obtained the radiance at sensor values, still the atmosphere is between sensor and Earth's surface. This fact needs to be corrected to account for the atmospheric interaction with the sun energy that the vegetation reflects back into space. This can be done in two ways for Landsat. The simple way is through i.landsat.toar, use e.g. the DOS correction. The more accurate way is by using i.atcorr (which works for many satellite sensors). Once the atmospheric correction has been applied to the satellite data, data vales are called surface reflectance. Surface reflectance is ranging from 0.0 to 1.0 theoretically (and absolutely). This level of data correction is the proper level of correction to use with i.vi.

Vegetation Indices

ARVI: Atmospheric Resistant Vegetation Index

ARVI is resistant to atmospheric effects (in comparison to the NDVI) and is accomplished by a self correcting process for the atmospheric effect in the red channel, using the difference in the radiance between the blue and the red channels (Kaufman and Tanre 1996).

ARVI = (nirchan - (2.0*redchan - bluechan)) / 
    ( nirchan + (2.0*redchan - bluechan))
arvi( redchan, nirchan, bluechan )

DVI: Difference Vegetation Index

DVI = ( nirchan - redchan )
dvi( redchan, nirchan )

EVI: Enhanced Vegetation Index

The enhanced vegetation index (EVI) is an optimized index designed to enhance the vegetation signal with improved sensitivity in high biomass regions and improved vegetation monitoring through a de-coupling of the canopy background signal and a reduction in atmosphere influences (Huete A.R., Liu H.Q., Batchily K., van Leeuwen W. (1997). A comparison of vegetation indices global set of TM images for EOS-MODIS. Remote Sensing of Environment, 59:440-451).

EVI = 2.5 * ( nirchan - redchan ) / 
    ( nirchan + 6.0 * redchan - 7.5 * bluechan + 1.0 )
evi( bluechan, redchan, nirchan )

EVI2: Enhanced Vegetation Index 2

A 2-band EVI (EVI2), without a blue band, which has the best similarity with the 3-band EVI, particularly when atmospheric effects are insignificant and data quality is good (Zhangyan Jiang ; Alfredo R. Huete ; Youngwook Kim and Kamel Didan 2-band enhanced vegetation index without a blue band and its application to AVHRR data. Proc. SPIE 6679, Remote Sensing and Modeling of Ecosystems for Sustainability IV, 667905 (october 09, 2007) doi:10.1117/12.734933).

EVI2 = 2.5 * ( nirchan - redchan ) / 
    ( nirchan + 2.4 * redchan + 1.0 )
evi2( redchan, nirchan )

GARI: green atmospherically resistant vegetation index

The formula was actually defined: Gitelson, Anatoly A.; Kaufman, Yoram J.; Merzlyak, Mark N. (1996) Use of a green channel in remote sensing of global vegetation from EOS- MODIS, Remote Sensing of Environment 58 (3), 289-298. doi:10.1016/s0034-4257(96)00072-7

GARI = ( nirchan - (greenchan - (bluechan - redchan))) / 
( nirchan + (greenchan - (bluechan - redchan)))
gari( redchan, nirchan, bluechan, greenchan )

GEMI: Global Environmental Monitoring Index

GEMI = (( (2*((nirchan * nirchan)-(redchan * redchan))+
1.5*nirchan+0.5*redchan) / (nirchan + redchan + 0.5)) * 
(1 - 0.25 * (2*((nirchan * nirchan)-(redchan * redchan))
+1.5*nirchan+0.5*redchan) /(nirchan + redchan + 0.5)))-
( (redchan - 0.125) / (1 - redchan))
gemi( redchan, nirchan )

GVI: Green Vegetation Index

GVI = ( -0.2848 * bluechan - 0.2435 * greenchan - 
0.5436 * redchan + 0.7243 * nirchan + 0.0840 * chan5chan-
0.1800 * chan7chan)
gvi( bluechan, greenchan, redchan, nirchan, chan5chan, chan7chan)

IPVI: Infrared Percentage Vegetation Index

IPVI = nirchan/(nirchan+redchan)
ipvi( redchan, nirchan )
MSAVI2: second Modified Soil Adjusted Vegetation Index
MSAVI2 = (1/2)*(2(NIR+1)-sqrt((2*NIR+1)^2-8(NIR-red)))
msavi2( redchan, nirchan )

MSAVI: Modified Soil Adjusted Vegetation Index

MSAVI = s(NIR-s*red-a) / (a*NIR+red-a*s+X*(1+s*s))	
msavi( redchan, nirchan )
where a is the soil line intercept, s is the soil line slope, and X is an adjustment factor which is set to minimize soil noise (0.08 in original papers).

NDVI: Normalized Difference Vegetation Index

Data Type Band Numbers ([NIR, Red]) 
MSS Bands = [7, 5] 
TM1-5,7 Bands= [4,3] 
TM8 Bands= [5,4] 
AVHRR Bands = [2, 1] 
SPOT XS Bands = [3, 2] 
AVIRIS Bands = [51, 29] 

NDVI = (NIR - Red) / (NIR + Red)

PVI: Perpendicular Vegetation Index

PVI = sin(a)NIR-cos(a)red 
pvi( redchan, nirchan )
for a isovegetation lines (lines of equal vegetation) would all be parallel to the soil line therefore a=1.

SAVI: Soil Adjusted Vegetation Index

SAVI = ((1.0+0.5)*(nirchan - redchan)) / (nirchan + redchan +0.5)
savi( redchan, nirchan )

SR: Simple Vegetation ratio

SR = (nirchan/redchan)
sr( redchan, nirchan )

VARI: Visible Atmospherically Resistant Index VARI was designed to introduce an atmospheric self-correction (Gitelson A.A., Kaufman Y.J., Stark R., Rundquist D., 2002. Novel algorithms for estimation of vegetation fraction Remote Sensing of Environment (80), pp76-87.)

VARI = (green - red ) / (green + red - blue)

WDVI: Weighted Difference Vegetation Index

WDVI = nirchan - a * redchan
if(soil_weight_line == None):
   a = 1.0 #slope of soil line
wdvi( redchan, nirchan, soil_line_weight )

EXAMPLE

This example uses a LANDSAT TM5 scene included in the North Carolina sample dataset.
g.region rast=lsat5_1987_30 -p
i.vi red=lsat5_1987_30 viname=ndvi output=lsat5_1987.ndvi nir=lsat5_1987_40
r.colors lsat5_1987.ndvi color=ndvi

NOTES

Originally from kepler.gps.caltech.edu:

A FAQ on Vegetation in Remote Sensing
Written by Terrill W. Ray, Div. of Geological and Planetary Sciences, California Institute of Technology, email: terrill@mars1.gps.caltech.edu

Snail Mail: Terrill Ray
Division of Geological and Planetary Sciences
Caltech, Mail Code 170-25
Pasadena, CA 91125

SEE ALSO

i.albedo, i.aster.toar, i.landsat.toar, i.atcorr, i.tasscap

AUTHORS

Baburao Kamble, Asian Institute of Technology, Thailand
Yann Chemin, Asian Institute of Technology, Thailand

REFERENCES

AVHRR, Landsat TM5:

Last changed: $Date$