💡 OBJETIVOS:
Conocer los principales índices espectrales empleados en teledetección, su cálculo a partir de imágenes multibanda y su aplicación al análisis de la evolución de la superficie terrestre.
Aplicar técnicas “density slicing” para discretizar imágenes ráster con valores continuos en categorías discretas que faciliten la interpretación de características como la salud de la vegetación o la temperatura de la superficie terrestre.
Realizar la transformación “tasseled cap” para extraer información biofísica de imágenes multiespectrales, centrándose especialmente en los componentes de brillo, verdor y humedad, que faciliten la evaluación de la cubierta terrestre.
Utilizar el análisis de componentes principales para reducir la dimensionalidad de los datos y mejorar la separabilidad espectral para la extracción o clasificación de características en imágenes multiespectrales de teledetección.
Realizar un pan sharpening integrando datos pancromáticos de alta resolución con datos multiespectrales de menor resolución para crear imágenes mejoradas con una mayor calidad espacial y espectral.
💡 MATERIALES PARA LA ACTIVIDAD:
Los materiales para el desarrollo de esta actividad son los siguientes.
Las transformaciones ráster implican la manipulación de imágenes para generar otras nuevas. Estas imágenes transformadas o bien contienen información de interés o bien resaltan las características singulares de las imágenes originales, aunque también se realizan para preservar la información esencial en un número reducido de dimensiones o capas.
Las herramientas más utilizadas para transformar las imágenes de satélite son las siguientes:
En primer lugar, deben activarese los paquetes necesarios para realizar este ejercicio:
library(terra) # Importación y transformación de imágenes ráster
## Warning: package 'terra' was built under R version 4.3.3
## terra 1.8.21
library(RStoolbox) # Transformación y visualización de datos ráster.
## Warning: package 'RStoolbox' was built under R version 4.3.3
## This is version 1.0.0 of RStoolbox
library(ggplot2) # Visualización de datos ráster con RStoolbox
## Warning: package 'ggplot2' was built under R version 4.3.3
En segundo lugar, debe establecerse la carpeta de trabajo
A continuación se importará el fichero imagen
.
imagen <- rast("D:/G174_2025/LABORATORIO_6_Transformaciones_matematicas/datos/imagen.tif")
Los nombres de las bandas son:
names(imagen)
## [1] "coastal aerosol" "blue" "green" "red"
## [5] "NIR" "SWIR1" "SWIR2"
Como se ha realizado en otras ocasiones, es conveniente conocer los atributos de ese objeto raster
imagen
## class : SpatRaster
## dimensions : 1245, 1497, 7 (nrow, ncol, nlyr)
## resolution : 30, 30 (x, y)
## extent : 594090, 639000, 4190190, 4227540 (xmin, xmax, ymin, ymax)
## coord. ref. : WGS 84 / UTM zone 10N (EPSG:32610)
## source : imagen.tif
## names : coast~rosol, blue, green, red, NIR, SWIR1, ...
## min values : 0.09641791, 0.0748399, 0.04259216, 0.02084067, 0.0008457669, -0.007872183, ...
## max values : 0.73462820, 0.7177562, 0.69246972, 0.78617686, 1.0124315023, 1.043204546, ...
Podemos verficar que el proceso ha tenido éxito representando algunas de las bandas.
par(mfrow = c(2,2))
plot(imagen[["blue"]], main = "Blue", col = gray(0:100 / 100))
plot(imagen[["green"]], main = "Green", col = gray(0:100 / 100))
plot(imagen[["red"]], main = "Red", col = gray(0:100 / 100))
plot(imagen[["NIR"]], main = "NIR", col = gray(0:100 / 100))
Otra manera de verificarlo es mediante una representación gráfica en
falso color, pudiendo utilizarse la función terra:plotRGB()
o, como en este caso, la función Rstoolbox::ggRGB()
.
ggRGB(imagen,
r=5, g=4, b=3,
stretch ="lin",
geom_raster = TRUE) +
ggtitle("Imagen falso color") + # Título de la imagen
labs(x="Longitud(m)", y="Latitud (m)") + # Etiquetas del eje
theme(plot.title = element_text(hjust =0.5, # Título centrado
size =20), # Tamaño del título
axis.title = element_text(size =10)) + # Tamaño de las etiquetas de los ejes
theme_bw()