Introducción
El siguiente informe tiene como base imágenes satelitales de la misión Sentinel2 desarrollada por la Agencia Espacial Europea (ESA en inglés). La descarga de las imágenes consiste en 13 bandas, 4 de ellas con una resolución de 10 metros, 3 de 60 metros y 6 de 20 metros. Se realizará en primer lugar un análisis exploratorio de cada banda, poseriormente se realizará un análisis multibanda para explorar las relaciones entre las mismas, se proyectarán en falso y verdadero color. Finalmente se aplicaran tres tipos de convoluciones espaciales y se construirá el Ãndice SAVI para una de las bandas.
banda1 <- raster("T18NWL_20181220T152639_B01.jp2")
banda2 <- raster("T18NWL_20181220T152639_B02.jp2")
banda3 <- raster("T18NWL_20181220T152639_B03.jp2")
banda4 <- raster("T18NWL_20181220T152639_B04.jp2")
banda5 <- raster("T18NWL_20181220T152639_B05.jp2")
banda6 <- raster("T18NWL_20181220T152639_B06.jp2")
banda7 <- raster("T18NWL_20181220T152639_B07.jp2")
banda8 <- raster("T18NWL_20181220T152639_B08.jp2")
banda8A <- raster("T18NWL_20181220T152639_B8A.jp2")
banda9 <- raster("T18NWL_20181220T152639_B09.jp2")
banda10 <- raster("T18NWL_20181220T152639_B10.jp2")
banda11 <- raster("T18NWL_20181220T152639_B11.jp2")
banda12 <- raster("T18NWL_20181220T152639_B12.jp2")
bandaTCI <- raster("T18NWL_20181220T152639_TCI.jp2")
Se genera un steck para cada grupo de resolución:
Debido a la capacidad computacional se recorta cada stack y de este producto se harán todas las estadÃstica uni y multibanda.
EstadÃsticas generales por cada banda, se examinan valores como los de la desviación, asimetrÃa, media y mediana.
Stack 1: Banda 2, Banda 3 Banda 4,banda 8, las tres primeras hacen referencia al espectro visible mientras que la banda 8 corresponde al infrarrojo cercano.
Banda2: Tiene un promedio de 1001.53 valores de luminosidad y una mediana de 810, la distribución de la banda es asimétrica hacia la derecha y leptocúrtica debido a que su valor de curtosis es mayor a 3.Respecto a su desviación es alta y su coeficiente variación es del 86% lo cual quiere decir que los datos están dispersos respecto a su media.El mÃnimo valor de luminosidad de esta banda es de 387 y su máximo es de 10732 valores de luminosidad.
Banda3: Tiene un promedio de 939.96 valores de luminosidad y una mediana de 758. la distribución de la banda es asimétrica hacia la derecha, es decir que la mayorÃa de sus datos está hacia los valores bajos. Respecto a su forma, la banda 3 tiene una disitribución es leptocúrtica.El valor mÃnimo de luminosidad de la banda 3 es de 419 y su máximo es de 10952.
Banda 4:La banda 4 tiene un promedio de 703.59 valores de luminosidad y una mediana de 467. Su disitribución es asimétrica hacia la derecha y leptocúrtica por su kurtosis.SU valor máximo de luminosidad es de 220 y su máximo es de 11951.
Banda 8: Corresponde al infrarrojo cercano y tiene una media de 703.59 valores de luminosidad y una mediana de 467, su disitrbución es asimétrica hacia la derecha, es decir sus valores están hacia los valores bajos y es leptocúrtica.Respecto a su desvición es alta y su coeficiente de variación corresponde al 31% el menor de este grupo de bandas. Su mÃnimo de valor de luminosidad es de 405 y su máximo es de 12194.
Stack 2: Banda 5, Banda 6, Banda 7,banda 8A, banda 11 y banda 12, las tres primeras junto con la 8A corresponden a la zona del vegatation red edge la transición entre el rojo y el infrarrojo cerca, mientras que la banda 11 y 12 corresponden al infrarrojo medio.
Banda 5: Tiene una media de 1000 valores de luminosidad y una mediana de 811. Su distribución es asimétrica hacia al derecha y es leptocúrtica. Su coeficnete de variación es del 92%.El mÃnimo valor de luminosidad de la banda 5 es de 248 y su máximo es de 11650.
Banda 6: Tiene una media de 2330.99 valores de luminosidad y una mediana de 2197, su asimetrÃa es positiva y es leptocúrtica debido a que su valor de curtosis es mayor a 3. Su coeficiente variación es de 36%.El rango de lumonisidad en el cual se encuentra la banda es entre 395 y 12011.
Banda 7: Tiene una media de 1780.14 y una mediana de 16.30, la distribución es leptocúrtica y tiene asimetrÃa hacia la derecha, su coeficiente de variación es del 30% el más bajo de este grupo de bandas.El rango de valores de luminosidad en el que la banda se refleja es entre 457 y 12645.
Banda 8A: Tiene una media de 32.79.36 y una mediana de 3173. la distribución de la banda 8A es platicúrtica a diferencia de las demás bandas de este grupo. Su coeficiente de variación es del 28% el más bajo de este grupo. El mÃnimo valor de luminosidad de la banda 8A es de 392 y su máximo es 13077.
Banda 11: Tiena una media de la banda 11 es de 1780.14 valores de luminosidad y una media de 1630. La distribución de la banda 11 es asimétrica hacia la derecha y es leptocúrtica. Su coeficiente de variación de 40%.Su valor mÃnimo de luminosidad es de 168 y su máximo 9687.
Banda 12: Tiene una media de 871.28 y una mediana de 687, la distribución es asimétrica hacia la derechay es leptocúritca debido a su valor mayor de 3 en la curtosis. Su rango es entre 49 y 7299 valores de luminosidad.
Stack3: Banda 1, banda 9 y banda 10, las cuales corresponden a la banda del aerosol, el vapor de agua y el infrarrojo medio cirrus.
Banda 1: Tiene un valor medio de luminosidad de 1248.11 y una mediana de 1077. Su distribución es asimétrica hacia la derecha y leptocúrtica. Su coeficiente de variación es del 63% el más alto de las tres bandas de este grupo, su rango va entre 938 y 9302 valores de luminosidad.
Banda 9: Tiene un promedio de 601.21 y una mediana de 549. Su distribución es asimétrica hacia la derecha y es leptocúrtica, su coeficiente de variación es del 45%.Su rango está entre los 113 y 3467 valores de luminosidad.
Banda 10: Tiene una media de 10.84 la el más bajo de todas las bandas que componen la imagen. Su distribución es platicúritca a diferencia de las bandas de este grupo, su coeficiente de variación es el más bajo de todas las 13 banda y es del 14%. Su rango va entre los 6 y los 23 valores de luminosidad.Generación de plot de cada una de las bandas
par(mfrow = c(5, 3))
plot(banda1, main = "Banda 1 Sentinel")
plot(banda2, main = "Banda 2 Sentinel")
plot(banda3, main = "Banda 3 Sentinel")
plot(banda4, main = "Banda 4 Sentinel")
plot(banda5, main = "Banda 5 Sentinel")
plot(banda6, main = "Banda 6 Sentinel")
plot(banda7, main = "Banda 7 Sentinel")
plot(banda8, main = "Banda 8 Sentinel")
plot(banda8A, main = "Banda 8A Sentinel")
plot(banda9, main = "Banda 9 Sentinel")
plot(banda10, main = "Banda 10 Sentinel")
plot(banda11, main = "Banda 11 Sentinel")
plot(banda12, main = "Banda 12 Sentinel")
6. Análisis multibanda, este análisis se hace por resolucion.
En general para el stack uno, las bandas 2 3 y 4 tienen una correlación muy alta entre ellas que no es inferior al 90%, esto se debe a que corresponden al espectro visible, mientras que el infrarrojo cercano tiene una correlación promedio de 77% con todas ellas.
Respecto al stack número dos es decir las bandas de la resolución de 20m, en general las correlaciones no son del menos del 70% la banda 12 es la que tiene correlaciones más bajas respecto a las demás bandas.La correlación más alta la tiene la banda 7 con la 8A. Finalmente el stack tres, las bandas 1 9 y 10, la banda 1 y 9 es decir aerosoles y vapor de agua tienen la correlación más alta. Mientras que la banda cirrus tiene correlaciones del 70% con las otras dos bandas de este grupo.
names(Villeta_10_mask) <- paste("Banda ", c(2, 3, 4, 8), sep = "")
pairs(Villeta_10_mask, main = "Análisis multibanda sentinel 10m")
names(Villeta_20_mask) <- paste("Banda ", c(5, 6, 7, 8, 11, 12),
sep = "")
names(Villeta_20_mask)[4] <- "Banda 8A"
pairs(Villeta_20_mask, main = "Análisis multibanda sentinel 20m")
names(Villeta_60_mask) <- paste("Banda ", c(1, 9, 10), sep = "")
pairs(Villeta_60_mask, main = "Análisis multibanda sentinel 60m")
# Para bandas de resolución 10
hist(Villeta_10_mask, main = "Bandas 10m", maxpixels = ncell(Villeta_10_mask))
# Para bandas de resolución 20
hist(Villeta_20_mask, main = "Bandas 20m", maxpixels = ncell(Villeta_20_mask))
# Para bandas de resolución 60
hist(Villeta_60_mask, main = "Bandas 60m", maxpixels = ncell(Villeta_60_mask))
5. Generación de plots de falso color y color real
# Color real
plotRGB(Villeta_10_mask, r = 3, g = 2, b = 1, stretch = "lin",
scale = 65535, main = "Color real Sentinel", axes = T)
# Falso color
plotRGB(Villeta_10_mask, r = 3, g = 2, b = 4, stretch = "lin",
scale = 65535, main = "Falso color Sentinel", axes = T)
# Para nubes y urbana
nubes = matrix(c(0, -1, 0, -1, 50, -1, 0, -1, 0), nrow = 3)
vil_nubes = focal(Villeta_10_mask[[4]], w = nubes)
plot(vil_nubes, col = gray(0:100/100))
# Convolucion realce de bordes
t = matrix(c(-2, -1, 0, -1, 1, 1, 0, 1, 2), nrow = 3)
VIlleta_filtro = focal(Villeta_10_mask[[4]], w = t)
plot(VIlleta_filtro, col = gray(0:100/100))
# El que me muestra todo de la mejor manera
best = matrix(c(1, -2, 1, -2, 2, 7, 1, -2, 1), nrow = 3)
VIlleta_filtro_best = focal(Villeta_10_mask[[4]], w = best)
plot(VIlleta_filtro_best, col = gray(0:100/100))
iv <- function(img, k, i) {
bk <- img[[k]]
bi <- img[[i]]
iv <- ((bk - bi)/(bk + bi + 0.8)) * (1 + 0.8)
return(iv)
}
ndvi_sentinel <- iv(Villeta_10_mask, 4, 3)
plot(ndvi_sentinel, col = rev(terrain.colors(10)), main = "Sentinel_SAVI")
Jensen, J.R., 2015. Introductory digital image processing. A remote sensing perspective 4th ed.