Remote sensing built-up index
This function calculates the built-up index. Three methods are available:
Bouhennache is a new method that uses a larger portion of the VIR/NIR following OLI bands (((b3+b4+b7)-b6)/3) / (((b3+b4+b7)+b6)/3)
Zha is the original band ratio method using TM5 ndbi = (b5 - b4) / (b5 + b4)
Xu is a modification to eliminate noise using ETM+7 (ndbi-((savi-nndwi)/2) / (ndbi+((savi-nndwi)/2)
Generally water has the highest values where built-up areas will occur in the mid portion of the distribution. Since Bouhennache et al (2018) index exploits a larger portion of the visible (Vis) and infra red spectrum, vegetation will occur as the lowest values and barren will exhibit greater values than the vegetation and lower values than the built-up areas.
Band wavelength (nanometers) designations for landsat TM4, TM5 and ETM+7
band-2 0.52-0.60 (green)
band-3 0.63-0.69 (red)
band-4 0.76-0.90 (NIR)
band-5 1.55-1.75 (SWIR 1)
band-7 2.09-2.35 (SWIR 2)
OLI (Landsat 8)
band-3 0.53-0.59 (green)
band-4 0.64-0.67 (red)
band-5 0.85-0.88 (NIR)
band-6 1.57-1.65 (SWIR 1)
band-7 2.11-2.29 (SWIR 2)
built.index( green, red, nir, swir1, swir2, L = 0.5, method = c("Bouhennache", "Zha", "Xu") )
green | Green band (0.53 - 0.59mm), landsat 5&7 band 3, OLI (landsat 8) band 3 |
---|---|
red | Red band (0.636 - 0.673mm), landsat 5&7 band 3, OLI (landsat 8) band 4 |
nir | Near infrared band (0.851 - 0.879mm) landsat 5&7 band 4, OLI (landsat 8) band 5 |
swir1 | short-wave infrared band 1 (1.566 - 1.651mm), landsat 5&7 band 5, OLI (landsat 8) band 6 |
swir2 | short-wave infrared band 2 (2.11 - 2.29mm), landsat 5&7 band 7, OLI (landsat 8) band 7 |
L | The L factor for the savi index |
method | Method to use for index options are "Bouhennache", "Zha", "Xu" |
Bouhennache, R., T. Bouden, A. Taleb-Ahmed & A. Chaddad(2018) A new spectral index for the extraction of built-up land features from Landsat 8 satellite imagery, Geocarto International 34(14):1531-1551
Xu H. (2008) A new index for delineating built-up land features in satellite imagery. International Journal Remote Sensing 29(14):4269-4276.
Zha G.Y., J. Gao, & S. Ni (2003) Use of normalized difference built-up index in automatically mapping urban areas from TM imagery. International Journal of Remote Sensing 24(3):583-594
Jeffrey S. Evans jeffrey_evans@tnc.org
if (FALSE) { library(raster) library(RStoolbox) data(lsat) lsat <- radCor(lsat, metaData = readMeta(system.file( "external/landsat/LT52240631988227CUB02_MTL.txt", package="RStoolbox")), method = "apref") plotRGB(lsat, r=3, g=2, b=1, scale=1.0, stretch="lin") # Using Bouhennache et al., (2018) method (needs green, red, swir1 and swir2) ( bouh <- built.index(red = lsat[[3]], green = lsat[[4]], swir1 = lsat[[5]], swir2 = lsat[[7]]) ) plotRGB(lsat, r=6,g=5,b=2, scale=1, stretch="lin") plot(bouh, legend=FALSE, col=rev(terrain.colors(100, alpha=0.35)), add=TRUE ) # Using simple Zha et al., (2003) method (needs nir and swir1) ( zha <- built.index(nir = lsat[[4]], swir1 = lsat[[5]], method = "Zha") ) plotRGB(lsat, r=6,g=5,b=2, scale=1, stretch="lin") plot(zha, legend=FALSE, col=rev(terrain.colors(100, alpha=0.35)), add=TRUE ) # Using Xu (2008) normalized modification of Zha (needs green, red, nir and swir1) ( xu <- built.index(green= lsat[[3]], red = lsat[[3]], nir = lsat[[4]], swir1 = lsat[[5]], , method = "Xu") ) plotRGB(lsat, r=6,g=5,b=2, scale=1, stretch="lin") plot(xu, legend=FALSE, col=rev(terrain.colors(100, alpha=0.35)), add=TRUE ) }