Generate a vegetation index

 Previous  |  Next 

Index generator

To generate predefined indices based from the imported images.

1. Click the tab Index generator.
2. Select the required Source layer from the menu.
3. A selection of indices is available to generate based on the source layer data type.
4. Check/uncheck the indices required.
5. Click GENERATE.

Available indices

Index Description Formula Image import type
BNDVI - Blue Normalized Difference Vegetation Index NDVI index without red channel availability, for areas sensitive to chlorophyll content. (NIR − BLUE) / (NIR + BLUE) Multispectral (excluding Sequoia)
GNDVI - Green Normalized Difference Vegetation Index NDVI index without red channel availability, for areas sensitive to chlorophyll content. (NIR − GREEN) / (NIR + GREEN) Multispectral
LCI - Leaf Chlorophyll Index

Index to assess chlorophyll content in areas of complete leaf coverage.

Value range clamp between -1 and 1.

(NIR − REDEDGE) / (NIR + RED)  Multispectral
MCARI - Modified Chlorophyll Absorption in Reflective Index Index used to measure chlorophyll concentrations including variations in the Leaf Area Index. 1.2 * (2.5 * (NIR - RED) - 1.3 * (NIR - GREEN)) / maxCoeff(max(RED; max(GREEN; NIR))) Multispectral
NDRE - Normalized Difference Red Edge Index sensitive to chlorophyll content in leaves against soil background effects. This index can only be formulated when the red edge band is available. (NIR − REDEDGE) / (NIR + REDEDGE) Multispectral
NDVI - Normalized Difference Vegetation Index Generic index used for leaf coverage and plant health. (NIR − RED) / (NIR + RED) Multispectral
SIPI2 - Structure Intensive Pigment Index 2

Index used in areas with high variability in canopy structure (e.g. forestry).

Value range clamp between -1 and 1.

(NIR − GREEN) / (NIR − RED) Multispectral
TGI - Triangular Greenness Index RGB index for chlorophyll sensitivity. (GREEN − (0.39 * RED) − (0.61 * BLUE)) / maxCoeff(max(RED; max(GREEN; BLUE))) RGB
VARI - Visible Atmospherically Resistant Index RGB index for leaf coverage. min(1; max(-1; (GREEN − RED) / (GREEN + RED − BLUE) )) RGB, MicaSense
Note 1: min(1, max(-1, ...) is clamping the values between -1 and 1.
Note 2: maxCoeff(max(...max(..)))) is the maximum value on all the bands.  It normalizes the index (see that if bands are defined between 0 and 1, this scale does not change).


Index calculator

To generate a custom index using the index calculator.

1. Click the tab Index generator.
2. Select the required Source layer from the menu.
3. Click the button Create custom index.
4. (optional) Name the custom index.
5. Enter the formula using either the Operations buttons or keyboard.
6. When a formula is valid, click PREVIEW.
7. To apply the formula as per the preview, click the button APPLY.
8. Your custom index will appear now as a layer in your layer menu.

Custom indices can be created depending on the available bands from your imported images, these are listed as buttons under Reflectance Map Bands.

The Operations buttons are described below:

Operation Description
( open parenthesis
) close parenthesis
* multiplication
+ addition
- subtraction
/ division
; (semicolon) separator for functions that take more than one parameter 
^ exponentiation
abs absolute value
exp exponential (e^x)
log natural logarithm
max maximum value of a value of a band (or operation),  it returns a scalar value
maxCoeff maximum value of a band (or operation),  it returns a scalar value
mean mean value of a band (or operation), it returns a scalar value
min minimum value between two arguments, separator is ";" (semicolon)
minCoeff minimum value of a band (or operation), it returns a scalar value
sqrt square root


Was this article helpful?
9 out of 11 found this helpful

Article feedback (for troubleshooting, post here)


  • Dusan Jovanovic

    how to work with multispectral geotiff? For example I have an image with 10 bands, and I want to create my index, but when I import image is not recognized as  an image with 10 bands 

  • Alex Wong

    How do you insert formula such as MCARI into Index Calculator since it wouldnt accept ","

  • Momtanu (Pix4D)

    Hi Alex,

    You will need to use ; instead of ,

    I have just changed it in the article. Thanks for letting us know :-)

    Edited by Momtanu (Pix4D)
  • Momtanu (Pix4D)

    Hi Dusan,

    Are you working with Pix4Dfields? Pix4Dfields can only process rededge and Sequoia imagery at this moment in terms of multispectral sensors. We are working on having more cameras in the database.

  • Wesley Davidson

    Hi I'm trying to use the below function from excel to convert drone measured temperatures to on ground calibration for thermal imagery.  However I'm not having any luck with Pix4d recognizing the exp function as mentioned above.  And I can't  see it in my index calculator as an option, 



  • Momtanu (Pix4D)

    Hi Wesley, We do not have exponential in the calculator. You can use 2.71828 (value of e)^(your formula) 

  • Cody Blake

    Is it possible to make a specific color more distinct? If I wanted to make red appear brighter and stand out over the green/yellow background.

  • Momtanu (Pix4D)

    Hi Cody,

    You cannot do that in fields. You can import the map in QGIS and try playing with the symbology

    Edited by Momtanu (Pix4D)
  • Adam DeZeeuw

    Is the Index Generator available on web based application or only on the Desktop software?

  • Momtanu (Pix4D)

    Adam It is not available on cloud. However, you can upload NDVI map to cloud for sharing with clients or anyone you want.

  • Rasmus Grønning

    Hello, is it possible to draw 30 regions on a reflectance map and calculate the average index map for every region, individually?

    I currently have to draw a region on each of my 30 plots, one at a time, and generate the index map each time.

  • Katherine James

    I keep getting this syntax error when trying to do this equation, and I have no idea why or how to fix it. Any ideas would be greatly appreciated.

  • Chinthaka Jayasinghe


    I use RedEdge M sensor for image acquisition and use Pix4D to create orthoimage from each band then I do radiometric calibration in QGIS or sometimes use eCognition algorithms. As images are not radiometrically calibrated, I can't generate indices in Pix4D pipeline(step 3) but, I can use QGIS or eCognition to generate indices. When I generate indices through QGIS or in eCognition, the resolution is reduced so my question is, can I bring calibrated layers back to pix4D to generate indices using index calculator?


  • Nivin S


    Is it necessary to do a radiometric calibration for VARI algorithm?


  • Momtanu (Pix4D)

    Nivin, Pix4Dfields does not have 100% radiometric calibration yet, it will be there shortly.

    When working with common RGB cameras, keep in mind that they are probably not designed for radiometric fidelity. So indices like VARI will not have absolute values. They will give you some patterns and can be used for comparison.

    @Chinthaka you are using Pix4Dfields, right? There is no way you can bring back calibrated layers to Pix4D later. Radiometric calibration will be there in fields soon. Pix4Dmapper already does radiometric calibration. 

    @Katherine, It seems a multiplication or division symbol is missing. Though I don't know which formula you are using, it seems there might be a multiplication sign after 0.2 and another symbol before red_edge/red. You will need to look up this formula and use the correct symbols.

    @Rasmus, It is not possible to import 30 regions at a time because the values keep accumulating. You can draw 30 regions, but the index values and the statistics will be for all the 30 regions together, not for each of them. So while importing, we allow only one shp file import at a time.

    Edited by Momtanu (Pix4D)
  • Momtanu (Pix4D)

    Hello all, I would request you to keep Pix4Dmapper and Pix4Dfields questions separate. This page is for Pix4Dfields only, though the formulas can be used anywhere. If you have Pix4Dmapper agriculture questions, please post them on our community page: with the correct topic. For questions like this, the topic where you can post would be processing. 

Please sign in to leave a comment.