Cada día existen nuevos y mejores datos que, en conjunto con las nuevas herramientas de procesamiento digital de imágenes, ayudan a modelar problemas espaciales a partir de la creación de información (Longley et al. (2005)). El estudio de los bosques, en un contexto de cambio climático, ha sido abordado ampliamente por Naciones Unidas y existen estandares que los países deben cumplir en cuanto a su monitoreo y la deforestación producto de la misma (Ramírez Delgado et al. (2018)). En Colombia el sistema de monitoreo del IDEAM realiza anualmente la cuantifiación de bosque, no bosque y deforestación (IDEAM (2019)).
Es este contexto, el presente estudio busca interiorizar el proceso de clasificación no supervisada y supervisada en el software R-project.
Los resultados de la práctica permiten mejorar la productividad a partir de la ejecución de una secuencia de códigos programados. Los resulados del estudio pueden mejoran la capacidad de producción de información junto con las habilitades técnicas de quien desarrolla el estudio.
En esta línea, el estudio busca comparar tres métodos de clasificación: i) Clasificación no supervisada; ii) Clasificación por árbol de decisión; iii) Clasificación Random Forest.
En el departamento del Caquetá es posible encontrar el inicio del Bosque Amazónico. Es por ello que se seleccionó el área que se intersecta entre los municipios de Montañita, Cartagena del Chaira y Solano. En la Figura 1 se puede visualizar el área que será objeto de trabajo.
Figura 1. Definición del área de estudio
El IDEAM, a través del Sistema de Monitoreo de Bosque y Carbono, produce el mapa anual de bosque y no bosque que permite medir la deforestación y su equivalente en emisiones de CO2 (IDEAM (2019)). El mapa del 2016 será usado como base para el entrenamiento. Además, este mapa servirá como herramienta de validación de los métodos de clasificación que serán usados.
Figura 2. Mapa bosque no bosque IDEAM 2016
La imagen seleccionada fue descargarda en https://earthexplorer.usgs.gov/ del 01 de febrero de 2016. Esta imagen viene con un nivel de procesamiento 2 que indica que trae una corrección atmosférica tipo BoA, es decir que cada pixel expresa el valor de reflectancia en la superficie escalada entre 1 y 10,000. La imagen se cortó por el área de estudio y se realizó una transformación de coodenadas planas (UTM Zone 18N) a coordenadas geográficas WGS84.
La Figura 4 permite ver que existe una alta correlación en las primeras 4 bandas. Sin embargo, las bandas asociadas a la zona de los infrarojos y de los infrarojos de onda corta presentan menor correlación en relación a las bandas de espectro visible. En particular la banda 5 (NIR) presenta los menores valores de correlación con respecto a las primeras 4 bandas.
El análisis del perfil espectral busca conocer el comportamiento de las bandas de Landsat 8 en relación con las coberturas de la imagen. Para ello se definieron siete tipos de coberturas y de cada una se extrajeron muestras las cuales fueron analizadas y en base a estas se contruyó el perfil espectral. La Tabla 1 presenta el número de muestras por cada tipo de cobertura.
Tabla 1. Número de muestras por cada tipo de cobertura
| Cobertura | Muestras |
|---|---|
| Agua | 2 |
| Bancos de Arena | 5 |
| Bosque | 10 |
| Cultivos | 4 |
| Pasto | 7 |
| Quemas | 5 |
| Rastrojo | 2 |
En cada uno de los polígonos definidos como muestra se crearon 50 puntos a los cuales se les leyó el nivel de reflectancia por cada banda. En la Tabla 2 se puede ver los valores de reflectancia promedio por cada tipo de cobertura. La Figura 5 muestra el perfil espectral. En ella se puede ver que en la banda 5 es posible encontrar los mayores valores de reflectancia para los Bosques, los cultivos y los pastos.
Tabla 2. Valores promedio de reflectancia por cada cobertura
| b1 | b2 | b3 | b4 | b5 | b6 | b7 | |
|---|---|---|---|---|---|---|---|
| Agua | 418.4433 | 487.3866 | 795.3928 | 805.9019 | 687.141 | 227.4988 | 134.1164 |
| Bancos de Arena | 936.9077 | 1114.3506 | 1683.9798 | 2103.0966 | 3203.228 | 4195.8810 | 3675.8110 |
| Bosque | 131.2217 | 182.0630 | 408.4118 | 241.4549 | 2743.731 | 1346.5015 | 527.9094 |
| Cultivos | 239.1899 | 317.0946 | 637.7170 | 439.7978 | 3762.467 | 2019.9480 | 887.8756 |
| Pasto | 282.9400 | 352.9381 | 675.2437 | 557.8440 | 3039.367 | 2440.6017 | 1237.1636 |
| Quemas | 337.0348 | 434.3810 | 655.1928 | 674.3431 | 1391.644 | 1618.0088 | 1555.0241 |
A continuación se contruye el índice de vegetación normalizado a partir de una función la cual es posteriormente procesada con las bandas 5 y 4 equivalentes a la banda del infrarojo cercano y la banda roja.
# Create a NDVI
#Create a function to calculate the NDVI
ndvi_f <- function(x, y) {
(x - y) / (x + y)
}
ndvi <- overlay(landsat8_crop[[5]], landsat8_crop[[4]], fun=ndvi_f)
El índice de vegetación presenta valores entre -1 y 1 en el cual valores cercanos a 1 indican reflectancia asociada a la vegetación (Richards and Jia (2013)). la Figura 6 permite ver que en el área de estudio la mayor parte de las coberturas presentan valores superiores a 0.7. Este se puede evidenciar en el mapa de la Figura 7 en la cual se puede ver una alta presencia de tonos verdes asociados a la vegetación. El resultado NDVI será incluido como una banda adicional en la clasificación de coberturas.
La exploración del índice permite ver que la cobertura de bosque está asociada con valores entre 0.8 y 1. La
El proceso de clasificación de coberturas se hizo a partir del mapa del IDEAM 2016 el cual presenta las categorías Bosque y No Bosque. A partir de esto se hizo el entrenamiento de 200 muestras que se crearon de forma aleatorea y se clasificaron de acuerdo al mapa de coberturas 2016. La figura 10 muestra la distribución de las áreas de entrenamiento.
A cada muestra se les lee el valor de reflectancia de cada banda y el valor del NDVI. La tabla 3 presenta el ejemplo de este proceso. Con estos resultados se procede a clasificar la imagen por los dos mètodos seleccionados.
Tabla 3. Ejemplo de las primeras 6 filas de la tabla de muestras
| classvalue | b1 | b2 | b3 | b4 | b5 | b6 | b7 | NDVI |
|---|---|---|---|---|---|---|---|---|
| 1 | 144.8680 | 188.7505 | 404.1698 | 251.9688 | 2831.853 | 1420.479 | 533.3872 | 0.8365867 |
| 1 | 119.3564 | 165.2651 | 392.7919 | 231.9079 | 2797.905 | 1385.345 | 533.2018 | 0.8469160 |
| 1 | 126.1866 | 182.6480 | 425.2846 | 237.5991 | 2751.755 | 1334.695 | 517.6418 | 0.8410365 |
| 1 | 125.8587 | 177.5892 | 395.7013 | 239.7009 | 2864.756 | 1421.616 | 540.6122 | 0.8455763 |
| 1 | 154.9616 | 203.8661 | 434.3469 | 268.7267 | 2747.020 | 1358.909 | 558.4721 | 0.8217843 |
| 1 | 106.1861 | 156.7977 | 366.4940 | 212.0111 | 2643.414 | 1284.774 | 475.8431 | 0.8515030 |
La Figura 11 muestra el árbol de decisión para la clasificación de coberturas.
cart <- rpart(as.factor(classvalue)~., data=sampdata, method = 'class', minsplit = 5)
cart
## n=399 (1 observation deleted due to missingness)
##
## node), split, n, loss, yval, (yprob)
## * denotes terminal node
##
## 1) root 399 199 2 (0.49874687 0.50125313)
## 2) b6< 1573.321 208 13 1 (0.93750000 0.06250000)
## 4) b1< 363.2039 203 8 1 (0.96059113 0.03940887)
## 8) b5< 3272.576 201 6 1 (0.97014925 0.02985075) *
## 9) b5>=3272.576 2 0 2 (0.00000000 1.00000000) *
## 5) b1>=363.2039 5 0 2 (0.00000000 1.00000000) *
## 3) b6>=1573.321 191 4 2 (0.02094241 0.97905759) *
par(mfrow = c(1,1), mai=c(1,0,1,0), mar=c(2, 4, 5, 2) + 0.1)
plot(cart, uniform=TRUE, main="Figura 11. Árbol de clasificación")
text(cart, cex = 0.8)
pr2016 <- predict(landsat8_crop, cart, type='class')
pr2016 <- ratify(pr2016)
rat <- levels(pr2016)[[1]]
rat$legend <- classdf$classnames
levels(pr2016) <- rat
la validación permite ver que en general existió un 95% de precisión en los tipos de clases de coberturas analizadas.
## predicted
## observed Bosque No Bosque
## Bosque 193 7
## No Bosque 13 187
## [1] 0.95
El clasificador Random Forest se ejecutó con 200 árboles. la figura 12 muestra que en general existe un error por debajo de 0.09.
random <- randomForest(as.factor(classvalue)~., data=sampdata, type = 'classification', ntree=200,na.action=na.exclude)
plot(random, uniform=TRUE, main="Figura 12. Distribución del error en los árboles de random forest")
rf2016 <- predict(landsat8_crop, random, type='class')
rf2016 <- ratify(rf2016)
rat_rf <- levels(rf2016)[[1]]
rat_rf$legend <- classdf$classnames
levels(rf2016) <- rat_rf
Al igual que el método de clasificación anterior, la validación permite ver que en general existió un 95% de precisión en los tipos de clases de coberturas analizadas.
## predicted
## observed Bosque No Bosque
## Bosque 193 7
## No Bosque 13 187
## [1] 0.95
La figura 12 muestra el resultado de la clasificación por árbol de decisión y la Figura 13 muestra el resultado por Random Forest
Al comparar las dos matrices de confusión se puede ver que la precisión de Random Forest y Árbol de decisión son iguales. Esto puede ser porque el número de clases son altamente diferenciables por los dos métodos de clasificación.
Tabla 4. Matriz de confusión Árbol de decisión
## predicted
## observed Bosque No Bosque
## Bosque 193 7
## No Bosque 13 187
Tabla 5. de confusión Random Forest
## predicted
## observed Bosque No Bosque
## Bosque 193 7
## No Bosque 13 187
Los dos métodos de clasificación obtuvieron los mismos resultados, Esto indica que en la diferenciación de bosque y no bosque los dos métodos permiten obtener los mismos resultados.
La leyenda de clasificación del IDEAM tan solo presenta dos categorías, por lo cual se recomienda realizar la comparación con base en otra clasificación de coberturas que incluya mayor número de clases. Esto permitiría comparar la robustez de los clasificadores.
IDEAM. 2019. “Resultados Monitoreo de la deforestación 2018.”
Longley, Paul A, Michael F Goodchild, David J Maguire, and David W Rhind. 2005. Geographical Information Systems and Science. https://doi.org/10.2307/215736.
Ramírez Delgado, Juan Pablo, Gustavo Galindo García, Adriana Patricia Yepes Quintero, and Edersson Cabrera Montenegro. 2018. Estimación de la degradación de bosques de Colombia a través de un análisis de fragmentación. Vol. 111. 479. Bogotá: Instituto de Hidrología Meteorología y Estudios Ambientales – IDEAM, Ministerio de Ambiente y Desarrollo Sostenible – MADS, Programa ONU-REDD Colombia. https://doi.org/10.1192/bjp.111.479.1009-a.
Richards, John A., and Xiuping Jia. 2013. Remote Sensing Digital Image Analysis. https://doi.org/10.1007/978-3-662-03978-6.