Hot answers tagged

13 votes

Writing code for monthly NDVI medians in Google Earth Engine?

For the record, here is a good way to do this: var imageCollection = ee.ImageCollection("LANDSAT/LT05/C01/T1"); var months = ee.List.sequence(1, 12); var composites = ee.ImageCollection.fromImages(...
user avatar
13 votes
Accepted

Creating Sentinel-2 NDVI time series chart in Google Earth Engine?

You are using the variable NDVI to compute the chart, but this variable is a single image, because you applied median(). If you want a time series plot you have to compute the chart using the NDVI ...
user avatar
  • 1,207
11 votes
Accepted

NDVI from ESA's Sentinel-2 training data

First of all, you should take note that the simulated Sentinel-2 images come from the SPOT 4 (and maybe SPOT 5) satellite. So you'll have less bands than with the actual Sentinel-2. For SPOT 4 and 5, ...
user avatar
  • 48.6k
10 votes

Using Raster Calculator to generate a NDVI in QGIS

For Raster calculator see the attached image. I suppose you have a Red-Green-Blue-NIR image as input and NDVI is calculated as (NIR-Red)/(NIR+Red) as in reference http://en.wikipedia.org/wiki/...
user avatar
  • 52.5k
10 votes
Accepted

Calculating NDVI with Rasterio

First I would use bands 4(red) and 5(nir) for Landsat 8 according to the description of the OLI instrument, and 3(red) and 4(NIR) for the Landsat TM and ETM. Second, you define an output in dtype=...
user avatar
  • 48.6k
9 votes

EVI and NDVI range value

You are right: the range of the NDVI is limited to values between -1 and 1 due to its' normalization properties. The negative limit of -1 will be reached if you encounter maximal reflectance (1) in ...
user avatar
  • 176
9 votes
Accepted

Which NIR bandwidth is suitable to Calculate NDVI?

Between 770 and 1040 nm, you are nearly on a plateau in term of reflectance from the green vegetation (in fact, it decreases a little bit when the wavelength increases), so your green vegetation NDVI ...
user avatar
  • 48.6k
8 votes

Creating a Time series NDVI map

When remote sensing vegetation, the time of year is very important. In most climates, vegetation has significantly more biomass (i.e., leaves etc.) during the summer, which means that it is easier for ...
user avatar
8 votes

Rescaling NDVI values 0-255 to [-1;1] using ArcGIS Raster Calculator?

Using the raster calculator, you'll want to rescale your NDVI image. The formula you'll want to use is: NDVI = 2/255*image-1 This is simply the linear regression between 0 to 255 and -1 to 1, ...
user avatar
8 votes

Tutorial Vegetation Condition Index

Kogan (2004) (p. 2891) provides the following formula for the Vegetation Condition Index (VCI): VCI = 100 * (NDVI - NDVImin) / (NDVImax - NDVImin) where, NDVI = Smoothed weekly NDVI value NDVImin ...
user avatar
  • 50.3k
8 votes
Accepted

Using a fixed palette range to plot an NDVI raster in R

You need to supply levelplot() with a bit more information, via its at= argument, so that it can know the set of intervals to which you want the colors in col.regions applied. library(rasterVis) ## ...
user avatar
8 votes
Accepted

Making stack from many images in Google Earth Engine?

You just need the function 'toBands()' and apply that on the image collection. Unfortunately, the function cannot deal with similar band names (at least, for your MODIS collection: it works fine for ...
user avatar
  • 9,298
7 votes

Mosaicking NDVI images from different scenes

Your best bet would be to mosaic the raw red band and near infrared band images from which the NDVI images are derived. There are techniques for creating seamless mosaics for images, e.g. through the ...
user avatar
  • 10.8k
7 votes

Using Loop for calculating NDVI in R?

There's no need for a for (or any other kind of) loop since such stuff is entirely included in the raster package. If you want to calculate the NDVI, then basically all you need is ## required ...
user avatar
  • 5,063
7 votes
Accepted

Extracting LANDSAT time-series data by polygon using Google Earth Engine?

The code that you copied uses an Earth Engine object of type "Image", and Image objects have a method/function named clip. Your reworked code (i.e. Landsat) uses an Earth Engine object of type "...
user avatar
7 votes
Accepted

Why vegetation index, NDVI or SAVI is not working in the desert?

The sensitivity of the normalized difference vegetation index (NDVI) to the soil background and atmospheric effects has generated an increasing interest in the development of new indices. The NDVI ...
user avatar
  • 1,675
7 votes

Problem generating NDVI chart in GEE

You are using an image property that does not exist. Use system:index instead of system:time_start. // Chart a single year mean of SB var TS1 = ui.Chart.image.series(modisNDVI, geometry, ee.Reducer....
user avatar
  • 1,207
6 votes

Estimating Area of farm under cultivation using NDVI?

Take raster NDVI dataset and use a raster calculator-type function to create a binary surface of 1 and NULL (no data); 1 is where values are between 0.1 and 1; NULL is everything else. For each farm ...
user avatar
6 votes
Accepted

Is atmospheric correction necessary when working with multi-spectral indexes?

It depends upon the intended use of the Landsat data. Generally speaking, if you are doing multi-temporal analyses, you need atmospherically corrected data, otherwise DN format is sufficient. I would ...
user avatar
  • 50.3k
6 votes
Accepted

Classify forest with NDVI from Landsat 8 and 7

No, the NDVI threshold value will not be the same for the time series due to differences in phenology and unique conditions on the ground. As Kersten mentioned in the comments, you may want to ...
user avatar
  • 50.3k
6 votes
Accepted

Difference between Landsat 7 and Landsat 8 TOA reflectance computation

The two products are comparable with some initial considerations. As you can see, the resolutions of the products are more or less the same: To give a more visual comparison of the spectral bands ...
user avatar
  • 4,428
6 votes
Accepted

landsat NDVI time series plot in R, based on point or pixel

Do you want an interactive map, or are you fine with plotting the NDVI timeseries for one (or few) specific points? In the latter you raster::extract() the NDVI-Stack values under your points, and use ...
user avatar
  • 356
6 votes
Accepted

Calculating Landsat 7 NDVI images using QGIS

Testing and comparing a Landsat 7 image (different area to yours, but same sensor data) reveals that the values are in fact both "correct". You (and I) have fallen into the trap of the Raster ...
user avatar
  • 702
6 votes
Accepted

Viewing bands of landsat 8 images in QGIS for NDVI calculation?

You have downloaded the data and you can find it if you unpack the .tar.gz file using 7zip or similar software for unpacking files. The .tar.gz file is the fourth file from the top that can be seen in ...
user avatar
6 votes
Accepted

Why is a normalized parameter involving the Green band and Red band not used for Vegetation determination?

The best explanation I came across is this: the ratio of the difference of the red and infrared radiances over their sum as a means to adjust for or “normalize” the effects of the solar zenith ...
user avatar
  • 11.9k
6 votes
Accepted

Smoothing/interpolating across images in an ImageCollection to remove missing data

You can replace the values using where(). // Replace masked pixels by the mean of the previous and next months // (otherwise, how to deal with the first images??) var replacedVals = composites.map(...
user avatar
  • 9,298
6 votes

Arcpy reclassify with function

This is how I would do it (it requires the Spatial Analyst extension which I think you have): import arcpy from arcpy.sa import * arcpy.CheckOutExtension = "Spatial" ndvi_raster = Raster("...
user avatar
  • 3,507
6 votes
Accepted

Rescale NDVI (-1:1) to 0-255 using R

SOLVED using rescaleImage() function in RStoolbox: library(RStoolbox) ndvi <- rescaleImage(x= ndvi, xmin = -1, xmax = 1, ymin=0, ymax=255) Now I get the expected results: ndvi class : ...
user avatar
  • 377
6 votes
Accepted

Calculating NDVI

Start the filename of the output raster with a character not a number, i.e NDVI_1988_1 instead of 1988_NDVI_1 From the Esri FAQ: What characters should not be used in ArcGIS for field names and table ...
user avatar
  • 52.8k
5 votes

Creating a Time series NDVI map

Reproducing the map example you provided is primarily a cartographic effort and requires very little analysis if you have already calculated NDVI. I would use the following workflow to produce the ...
user avatar
  • 50.3k

Only top scored, non community-wiki answers of a minimum length are eligible