I agree with @vascobnunes opinion but if you want to define certain objects you have to use LANDSAT TM because more classification needs more bands as (R, G, B, NIR, MIR, TIR, FIR)... and my choice is that you should use LANDSAT TM (I gave same information in the following explanation) for vegetation.
The important thing in this case is that you should look ...
NDVI is defined for any two bands with near-infrared and infrared data (it is an empirical remote sensing index). As such, you can calculate it straight from the DNs. This is mostly OK if you are only classifying or analyzing vegetation on a single image without significant atmospheric effects (cirrus clouds...)
However, if you are performing change ...
You may consider GRASS GIS which offers a rather complete processing chain for Landsat including radiance correction for Landsat 8. For details, see
Landsat 1-5,7,8 data import
Auto-enhance colors, natural color composites
Calculate Top-of-Atmosphere Reflectance and band-6 Temperature
Your script is missing the ds.FlushCache method, that saves to disk what you have in memory at the end of the modifications. See below a corrected version of your example. Notice that I also added two lines to set projection and geotransform as input
file = "path+filename"
ds = gdal.Open(file)
band = ds.GetRasterBand(1)
arr = band....
You could try the gdal_fillnodata tool which is also available in QGIS via the Raster->Analysis->Fill nodata menu. It uses an inverse distance weighting (IDW) interpolation. I just tried both that method and the single date Triangulation interpolation (in ENVI) and gdal_fillnodata looked much better. If you want to merge multiple dates, you might have to ...
I am in Canada so if I need this imagery I can get it free at Geobase.
Elsewhere you should be able to download from USGS direct. You will need to register on both sites. Here are NASA links to download free Landsat data.
Have a look at nlayers(s). The returned number of layers will equal 28 - at least for the above example with 4 multi-layer objects encompassing 7 layers each. Applying stack to multiple multi-layer files results in one huge 'RasterStack' object, i.e. all the single multi-layer objects are appended to one another.
If you would like to have separate stacks ...
If you only have SPOT 5 and Landsat TM to choose from, money is not a problem and for a small area of 30 000ha, I would agree that SPOT5 is the best choice, although Landsat would have some strong advantages:
2,5 m spatial resolution
3 spectral bands (Green, Red, Near Infra-red)
about 2,64€ per sqkm for new acquisitions
good revisit time
I would recommend using image segmentation with the free software SPRING, available from the Brazilian National Institute for Space Research. Documentation is available here and tutorials are available here. Image segmentation produces high classification accuracy compared to purely pixel based classification methods (e.g. ISODATA, Maximum Likelihood, etc). ...
The Scan Line Corrector in the ETM+ instrument onboard Landsat-7 suffered a (suspected) mechanical failure in 2003, so all subsequent images suffer from the striping you are seeing in your images. The Wikipedia page for the satellite has a good explanation.
Destriping Landsat Images? addresses methods for de-striping the imagery, however, note that it is ...
You need to use the Composite Bands ArcGIS Geoprocessing tool.
According to the ArcGIS Help,
This tool can also create a raster dataset containing subset of the
original raster dataset bands. This is useful if you need to create a
new raster dataset with a specific band combination and order.
I've only worked with Landsat 7 imagery but I believe the same technique apply for composing:
You need to create an RGB composite so use the Composite Bands tool (ArcToolbox -> Data Management Tools -> Raster -> Raster Processing -> Composite Bands)
Add the three R G B bands in the RGB order:
Band 4 (Red)
Band 3 (Green)
Band 2 (Blue)
If you don't add them ...
The Landsat reflectance data you downloaded from USGS has been scaled using a scale factor of 0.0001. So multiplying the digital number by 0.0001 will give you a value between 0 and 1. The 2000 value you are talking about, i believe, is the saturate value (which should be 20000). See this document for more details: https://landsat.usgs.gov/sites/default/...
Please mention the sensor of Landsat 5, is it MSS or TM? Assuming it is Thematic Mapper data, you have visible red and shortwave infrared data. You can directly infer from the band reflectance values about where vegetation patches lie and hence moisture content.
Band 3 (Red) can help you discriminate vegetation slopes and Band 5 (SWIR) can help you ...
The Supplementary Materials (SM) for the Science article provides references to a number of different journal-articles that outline various parts of the methodology.
The SM can be found here
Extending the time-series to include Landsat-5 (and potentially Landsat-8 to make the methodology something that can be rerun "easily") data will be a challenging task,...
gnutls.h which is required is missing from the filesystem even if you install libcurl4-gnutls-dev which supposedly has the headers files for curl.
to correct for that error run:
# apt-get install libgnutls28-dev
to add the missing header and pip finally to install pycurl and landsat-util
One can also follow the instructions given at
Landsat Scenes: Bulk Download, part of USGS' EarthExplorer web-service.
After selecting the scenes of interest within from either the USGS Global Visualisation Viewer or EarthExplorer, one has to save/create the scene IDs of interest as a list (each ID entry should be a single line) in a pure .txt ...
Consider integrating DEMs into your research on soil moisture/exposure. I have used the following indices in the past for regression models (Davies et al. 2010):
Site exposure index = slope∗cos(pi∗(aspect−180)/180) (Balice et al. 2000)
Heat load index = 0.039 + [0.808 * cos(l) * cos(s)] – [0.196*sin(l)*sin(s)] – [0.482*cos(a)*sin(s)] (McCune and Keon 2002)...
You can download the scene boundaries here;
You could use these as they are or generate an "inside" buffer shapefile to ensure that you trim all bad data in all bands.
Create a separate file for each scene (use split by attributes tool if there are many images to be processed).
Then clip the rasters (CLIP ...
Take a look at i.landsat.rgb - Performs auto-balancing of colors for LANDSAT images, probably before running the pansharpening. You may also consider to convert the digital numbers of the individual channels to top-of-atmosphere radiance or reflectance with i.landsat.toar. See also http://grasswiki.osgeo.org/wiki/LANDSAT
BTW: having a range of 0-65535 for ...
I just thought I'd add that there are some 'pure' Python solutions for several nodes in this workflow, also.
Some file reading and basic processing:
Spectral Python: http://spectralpython.sourceforge.net/
More classification than you'll find in pure remote sensing and GIS packages:
More links I can't share:
6S Python ...
This varies greatly on the characteristics of the scene. Fire scar mapping studies using Landsat-5 TM have used the following three band combinations:
Spain: Bands 4, 5, 7
CHUVIECO, E., and CONGALTON, R., 1988, Mapping and inventory of forest fires from digital
processing of TM data. Geocarto International, 4, 41–53.
Amazonia: Bands 3, 4, 5
PEREIRA, M. ...
Landsat and Modis are optical sensors, which means that they provide digital numbers of reflected materials that are within the electromagnetic spectrum. These values correspond to the wave length of the corresponding satellite band. To get elevation from just the raw values would be impossible. The only potential means to collect elevation information would ...
Kogan (2004) (p. 2891) provides the following formula for the Vegetation Condition Index (VCI):
VCI = 100 * (NDVI - NDVImin) / (NDVImax - NDVImin)
NDVI = Smoothed weekly NDVI value
NDVImin = Multiyear minimum NDVI value
NDVImax = Multiyear maximum NDVI value
As you know, NDVI ranges from -1 to 1 and functionally ranges from 0 - 1. VCI rescales ...
The three sensors are all slightly different. However the OLI/TIRs setup is a marked departure from the TM/ETM+ sensors. The changes are succintly summarised by Li et al. 2013 as the:
replacing of whisk-broom scanners with two separate push-broom OLI and TIRS scanners, an extended number of spectral bands (two additional bands provided) and narrower ...
It's going to be something like this, but you'll need to play with the threshold (10 in this example) to meet your needs. Watch out for ROIs that overlap a scene's footprint, but do not contain any valid pixels. Also watch out for ROIs that are very large or span multiple WRS cells.
var ic = ee.ImageCollection("LANDSAT/LC08/C01/T1_RT_TOA");
// A polygon ...
A brief explanation can be found in the pdf file 'Landsat 8 (L8) Data Users Handbook', available from landsat.usgs.gov.
On page 9, first paragraph, it is said:
The OLI panchromatic band, Band 8, is also narrower relative to the ETM+ panchromatic band to create greater contrast between vegetated areas and land without vegetation cover.
This would be in ...
A major reason for having panchromatic bands covering a broad spectral range is a technical reason: most of the solar energy reflected by the Earth is in the NIR wavelength. As the aim of a single panchromatic band is to achieve a better spatial resolution, you can improve the signal-to-noise ratio if your total amount of energy is larger. Originally, ...
One working approach inside GRASS-GIS version 7 to get an acceptable color-balanced composite image after Pan-sharpening is
check if input data are 8-bit ranging inside [0, 255]
if the data are inside [0, 255] proceed then to pan-sharpening (i.pansharpen)
if the data are not inside [0, 255], rescale them to this range (r.rescale)
pan-sharpen with ...