Introducción

Debido a los problemas de erosión y pérdida de biodiversidad que se ha evidenciado en las zonas costeras colombianas, principalmente en ecosistemas de manglar, se hace necesario conocer inicialmente cuales son las zonas que corresponden a esta cobertura vegetal y de esta manera determinar las diferentes medidas que se deben tomar para el manejo de los impactos. El objetivo de esta investigación es realizar una clasificación supervisada mediante el método de “Random forest” de las coberturas de la tierra presentes en el municipio de Nuquí, departamento del Chocó, Colombia. Para esto se utilizó una imagen satelital Landsat 8 tomada en el año 2018.

Datos y métodos

Zona de estudio
El municipio de Nuquí se encuentra ubicado sobre la vertiente occidental de la Serranía del Baudó constituida por basaltos de ambiente oceánico, aglomerados, tobas y lavas basálticas, almohadilladas e intercaladas con sedimentos de origen marino del Cretácico. Las rocas que conforman la Serranía son de edad Cretácica, Terciaria y Cuaternaria. El Cuaternario, está constituido por depósitos aluviales recientes, formados a partir de la meteorización y erosión de las rocas del flanco occidental de la serranía del Baudó (Fundación Plan, 2012). Se encuentra a 5 metros sobre el nivel del mar, limita al norte con Bahía solano, al sur con el municipio del Bajo Baudó, al occidente con el océano Pacifico y al oriente con el municipio del Bajo Baudó (PDM, 2016).
Según MarViva (2016), el clima en el Pacífico colombiano es cálido y superhúmedo, con variaciones poco significativas en el régimen de temperatura, pero con ciertas variaciones en las lluvias mensuales. El régimen normal de pluviosidad se caracteriza por una distribución bimodal, con dos periodos de valores máximos relativos y dos de mínimos relativos en el año, en conformidad con los desplazamientos de la Zona de Convergencia Intertropical (ZCIT).
área de estudio corresponde a la región del Golfo de Tribugá, municipio de Nuquí, departamento del Chocó. Se trabajará con los manglares provenientes de cinco corregimientos de siete en los cuales está dividido el municipio, estos son, Jurubirá, Tribugá, Nuquí, Panguí y Coquí. Estos bosques poseen un área 2259,4 ha de acuerdo al levantamiento de la distribución y superficie del bosque de manglar en el Chocó realizado por el instituto de investigaciones ambientales del pacifico.
Área de estudio
Datos
Para el análisis de coberturas se utilizó una escena obtenida en la fecha 8 de marzo del año 2018 por la plataforma satelital Landsat 8, la imagen se descargó en formato GeoTIFF, con sistema de coordenadas geográficas WGS84 zona 18N.
Se tomaron siete bandas de las 11 de las que se compone y se recortó el área de estudio que corresponde a un área de 72436,88 ha.
También se empleó la capa de coberturas generada por el Ideam para el periodo de tiempo 2010 a 2012 con el fin de determinar los polígonos de entrenamiento y validación de cada uno de los tipos de cobertura que se determinaron.
Métodos

La clasificación se realizó en el Software R, para esto se siguieron una serie de pasos, que se observan a continuación:

Inicialmente se importa la composición previamente realizada en el software ArcGIS y se verifican cada una de las bandas que la componen. En este caso se utilizaron las bandas: azul, verde, roja, NIR, SWIR1, SWIR2:

## class      : RasterStack 
## dimensions : 980, 939, 920220, 6  (nrow, ncol, ncell, nlayers)
## resolution : 30, 30  (x, y)
## extent     : 235106.4, 263276.4, 618845.1, 648245.1  (xmin, xmax, ymin, ymax)
## crs        : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 
## names      : Mask_2018.1, Mask_2018.2, Mask_2018.3, Mask_2018.4, Mask_2018.5, Mask_2018.6 
## min values :        8246,        7060,        6213,        5801,        5288,        5161 
## max values :       28317,       28471,       29672,       34877,       32014,       26582

Se nombran cada una de las bandas como corresponden de acuerdo a la reorganización que se da en la composición, las bandas corresponden a los números 2, 3, 4, 5, 6 y 7:

Band2 <- raster('r:/Reporte1/Primer reporte_PRA_PV/Insumos_Primer_reporte/Composicion/Mask_2018.tif',
                band = 1)
Band3 <- raster('r:/Reporte1/Primer reporte_PRA_PV/Insumos_Primer_reporte/Composicion/Mask_2018.tif',
                band = 2)
Band4 <- raster('r:/Reporte1/Primer reporte_PRA_PV/Insumos_Primer_reporte/Composicion/Mask_2018.tif',
                band = 3)
Band5 <- raster('r:/Reporte1/Primer reporte_PRA_PV/Insumos_Primer_reporte/Composicion/Mask_2018.tif',
                band = 4)
Band6 <- raster('r:/Reporte1/Primer reporte_PRA_PV/Insumos_Primer_reporte/Composicion/Mask_2018.tif',
                band = 5)
Band7 <- raster('r:/Reporte1/Primer reporte_PRA_PV/Insumos_Primer_reporte/Composicion/Mask_2018.tif',
                band = 6)

En la figura se pueden observar cada una de las bandas utilizadas:

En la figura se presentan las composiciones a verdadero color y a falso color de la imagen utilizada:
Área de estudio
Preprocesamiento de la imagen satelital

Para utilizar la información de cada una de las bandas de la imagen satelital es necesario realizar un preprocesamiento, este consiste en realizar una serie de transformaciones, que van desde el paso de niveles digitales a valores de radiancia y porteriormente a valores de reflectancia. Con estos ultimos valores ya es posible realizar la clasificación de la imagen.

Calibración radiométrica

Para esto se obtienen los valores de radiancia de acuerdo a la formula propuesta por Holinger (2018):

\(Lλ=M˻×Qcal+ A\)˻

Donde,

Lλ: radiancia espectral M˻: Factor de reajuste multiplicativo específico de banda de los metadatos (RADIANCE_MULT_BAND_x, donde x es el número de banda) A˻: Factor de reescalamiento aditivo específico de banda del metadatos (RADIANCE_ADD_BAND_x, donde x es el número de banda) Qcal: valores de niveles digitales

Corrección radiométrica

La corrección radiométrica consiste en transformar los valores de radiancia en valores de reflectancia; a su vez se puede realizar la corrección atmosférica con el fin de minimizar los efectos de valores haze o valores de neblina.

Corrección atmosférica

Existen diversas formas de corregir atmosfericamente una imagen satelital, en este caso se utiliza el modelo DOS de Chavez (1996), en el cual se halla el nivel digital que corresponda al objeto oscuro de cada una de las bandas , posteriormente se calcula el valor de radiancia de este nivel digital y por ultimo se calcula el Lpath, que será utilizado en la fórmula de reflectancia. La formula para determinar el Lpath, es la siguiente:

\(Lpathλ = Ldosλ - Lλ0,01\)

donde,

Ldosλ: Radiancia del objeto oscuro en determinada banda y,

\(Lλ0,01 = (0,01ESUN×CosƟ ̥) / πd²\)

donde, ESUN: irradiancia solar exoatmosférica CosƟ: Coseno del angulo Ɵ, que corresponde al ángulo cenital solar d: distancia tierra-sol en unidades astronómicas, se tiene en cuenta el día del año

Reflectancia DOS

La reflectancia dos incluye los valores de Lpath hallados anteriormente los cuales corresponden a la corrección atmosférica realizada. La fórmula para determinar el la reflectancia dos, es la siguiente:

\(ρdosλ=π ((Lλ-Lpathλ) d^2)/(ESUN X CosƟ ̥)\)

Donde,

ρdosλ: Reflectancia dos, con corrección atmosférica de acuerdo al método del objeto más oscuro Lλ:radiancia espectral ESUN: irradiancia solar exoatmosférica CosƟ: Coseno del angulo Ɵ, que corresponde al ángulo cenital solar d: distancia tierra-sol en unidades astronómicas, se tiene en cuenta el día del año

Reflectancia COST

La reflectancia cost incluye los valores de Lpath hallados anteriormente los cuales corresponden a la corrección atmosférica realizada. La formula para determinar el la reflectancia cost, es muy similar a la reflectancia dos hallada anteriormente, y se presenta de la siguiente manera:

\(ρcostλ=π ((Lλ-Lpathλ) d^2)/(ESUN X Cos^2Ɵ ̥)\)

Donde,

ρcostλ: Reflectancia cost, con corrección atmosférica de acuerdo al método del objeto más oscuro Lλ:radiancia espectral ESUN: irradiancia solar exoatmosférica CosƟ: Coseno del angulo Ɵ, que corresponde al ángulo cenital solar d: distancia tierra-sol en unidades astronómicas, se tiene en cuenta el día del año

Índice de vegetación de diferencia normalizada

Es el índice que ha sido más ampliamente utilizado en estudios globales de seguimiento y evaluación de la dinámica vegetal, gracias a su facilidad de cálculo e interpretación (Chuvieco, 2002, citado por Carvacho et al., 2010). Este índice muestra la diferencia normalizada entre la banda roja e infrarroja cercana (Gilabert et al., 1997) y su principal ventaja es que posee un rango de -1 a +1 con un umbral crítico para cubiertas vegetales en torno a 0,2, estudios a través del NDVI permiten conocer el vigor vegetal sobre grandes espacios, detectando fenómenos de amplio rango de acción (Chuvieco, 1995). Para el cálculo del índice de vegetación de diferencia normalizada se emplea la siguiente fórmula:

\(NDVI=((ρNIR-ρR)/(ρNIR+ρR))\)

donde,

NDVI: índice de vegetación de diferencia normalizada ρNIR: reflectancia de la banda infrarroja cercana ρR: reflectancia de la banda roja

Resultados

Clasificación supervisada “Random forest”

Random forest es un algoritmo que es ampliamente utilizado por presentar buenos resultados predictivos.Para realizar la clasificación inicialmente se importa la composición de las bandas 2, 3, 4, 5, 6 y 7 con las correccciones radiométricas y geométricas realizadas, es decir, en valores de reflectancia.

## class      : RasterBrick 
## dimensions : 980, 939, 920220, 6  (nrow, ncol, ncell, nlayers)
## resolution : 30, 30  (x, y)
## extent     : 235106.4, 263276.4, 618845.1, 648245.1  (xmin, xmax, ymin, ymax)
## crs        : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 
## source     : memory
## names      :  Mask_2018.1,  Mask_2018.2,  Mask_2018.3,  Mask_2018.4,  Mask_2018.5,  Mask_2018.6 
## min values :  0.014997319,  0.015807305,  0.014165091,  0.014730218,  0.002134447, -0.009275351 
## max values :    0.4310469,    0.4660801,    0.5030153,    0.6183792,    0.5326826,    0.3963911
## [1] "B2" "B3" "B4" "B5" "B6" "B7"

Posteriormente se determinan las bandas azul, verde, roja, NIR, SWIR1 y SWIR2 y NDVI como las covariables o varibles explicativas de la clasificación

Poligonos de entrenamiento y validación

Se obtuvieron los poligonos de entrenamiento y validación teniendo en cuenta la capa de coberturas producida por el Ideam para los años 2010 a 2012, las clases de cobertura de interes para el estudio son: el tejido urbano, mosaico de cultivos, bosque denso, bosque fragmentado, ríos, mares y principalmente manglares.

Para la creación de los poligonos de entrenamiento se generaron poligonos en cada una de las clases de coberturas de interes, en total se generaron 356 poligonos, 50% corresponde a poligonos de entrenamiento y 50% a poligonos de validación.

• Área promedio de cada polígono (entrenamiento y validación): 22 ha • Área promedio de polígonos de validación = 21,07 ha • Área promedio de polígonos de entrenamiento = 22,9 ha • Área total de polígonos de entrenamiento y validación = 7832,16 ha (10.8%) • Área total de estudio = 72436,88 ha

Los poligonos de validación y entrenamiento representan más del 10% de la imagen. En la figura se presenta el resumen de los polígonos de entrenamiento y validación por cada clase.

Resumen de poligonos de entrenamiento y validación

Posteriormente se cargan los poligonos de entrenamiento

train1 <- shapefile('r:/Reporte1/Primer reporte_PRA_PV/Insumos_Primer_reporte/Resultados/puntos_ent4.shp')

Se determina la columna que contiene los valores de las clases y se presenta el ploteo de los poligonos en la imagen.

##   OBJECTID cob1 Shape_Leng Shape_Area   AREA_HA
## 0        1    1   314.0725   7839.312 0.7839312
## 1        2    1   314.0724   7839.307 0.7839307
## 2        3    1   314.0723   7839.301 0.7839301
## 3        5    1   314.0731   7839.340 0.7839340
## 4        6    1   314.0723   7839.303 0.7839303
## 5        7    1   314.0726   7839.317 0.7839317
##   [1] 1 1 1 1 1 1 1 2 2 2 2 2 2 7 2 3 3 3 4 4 4 4 4 4 5 5 5 6 6 6 6 7 7 7 7
##  [36] 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
##  [71] 7 7 7 7 7 7 7 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5
## [106] 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4
## [141] 4 4 4 4 4 4 4 4 4 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
## [176] 8 8
## class      : RasterLayer 
## dimensions : 980, 939, 920220  (nrow, ncol, ncell)
## resolution : 30, 30  (x, y)
## extent     : 235106.4, 263276.4, 618845.1, 648245.1  (xmin, xmax, ymin, ymax)
## crs        : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 
## source     : memory
## names      : layer 
## values     : 1, 8  (min, max)

## class      : RasterBrick 
## dimensions : 980, 939, 920220, 6  (nrow, ncol, ncell, nlayers)
## resolution : 30, 30  (x, y)
## extent     : 235106.4, 263276.4, 618845.1, 648245.1  (xmin, xmax, ymin, ymax)
## crs        : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 
## source     : memory
## names      :  Mask_2018.1,  Mask_2018.2,  Mask_2018.3,  Mask_2018.4,  Mask_2018.5,  Mask_2018.6 
## min values :  0.014997319,  0.015807305,  0.014165091,  0.014730218,  0.002134447, -0.009275351 
## max values :    0.4310469,    0.4660801,    0.5030153,    0.6183792,    0.5326826,    0.3963911

Posteriomente se combina la imagen con la capa de clases para hacer el nuevo conjunto de datos de entrenamiento de entrada. se plotean los poligonos con el valor de las covariables, en este caso son las bandas, azul, verde, roja, NIR, SWIR1, SWIR2 y el NDVI:

## class      : RasterLayer 
## dimensions : 980, 939, 920220  (nrow, ncol, ncell)
## resolution : 30, 30  (x, y)
## extent     : 235106.4, 263276.4, 618845.1, 648245.1  (xmin, xmax, ymin, ymax)
## crs        : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 
## source     : memory
## names      : Clase 
## values     : 1, 8  (min, max)

Luego se extraen todos los valores en una matriz

##       BANDA.2    BANDA.3    BANDA.4   BANDA.5    BANDA.6    BANDA.7
## 1  0.02745538 0.03759436 0.02923132 0.2606244 0.10949074 0.02818360
## 2  0.02874058 0.03854071 0.02979396 0.2639877 0.10647333 0.02717990
## 3  0.02938317 0.03965530 0.03302393 0.2680361 0.12481601 0.03570190
## 4  0.03139387 0.04703682 0.03825439 0.3103679 0.16166019 0.05463969
## 5  0.02903078 0.04219992 0.03123182 0.2898144 0.13257791 0.04121280
## 6  0.02768340 0.03376690 0.02883539 0.2380571 0.10031940 0.02551337
## 7  0.02820162 0.03971839 0.03073169 0.2992400 0.13253820 0.03780400
## 8  0.02778705 0.03824629 0.02804353 0.2946933 0.11334191 0.02937668
## 9  0.02809798 0.03494458 0.02806437 0.2456764 0.11199202 0.02827829
## 10 0.02861620 0.03957118 0.03008570 0.2988040 0.13490052 0.03545571
## 11 0.02712372 0.03761539 0.02712663 0.2677662 0.10508374 0.02753971
## 12 0.02648113 0.03330424 0.02610555 0.2382232 0.09402651 0.02136599
## 13 0.02726882 0.03528106 0.02720999 0.2407353 0.10613586 0.02600575
## 14 0.02710299 0.03650080 0.02789766 0.2338841 0.10176855 0.02729352
## 15 0.02927953 0.03923470 0.03341986 0.2734755 0.13392780 0.04111811
## 16 0.03044034 0.04426086 0.03575377 0.3209768 0.16295053 0.05240503
## 17 0.03081346 0.04815141 0.03719163 0.3390182 0.16295053 0.05187478
## 18 0.02886495 0.04043341 0.03229458 0.2901051 0.14256315 0.04339065
## 19 0.02828454 0.03662698 0.03018989 0.2570535 0.10000178 0.02816466
## 20 0.02807725 0.03782569 0.02956474 0.2970808 0.12108395 0.03013419
## 21 0.02706154 0.03460810 0.02687657 0.2561607 0.10466686 0.02691477
## 22 0.02811871 0.03460810 0.02873120 0.2581123 0.10157004 0.02585425
## 23 0.02770413 0.03755230 0.02852281 0.2614963 0.12479616 0.03365662
## 24 0.02660550 0.03406132 0.02650148 0.2525898 0.09347067 0.02246439
## 25 0.02708226 0.03549136 0.02702244 0.2472127 0.10029955 0.02401729
## 26 0.02739320 0.03696346 0.02843946 0.2561192 0.10577853 0.02538081
## 27 0.02791142 0.03851968 0.02898126 0.2874477 0.11354043 0.02928199
## 28 0.02780778 0.03929779 0.02908545 0.2870117 0.11836431 0.03227416
## 29 0.02731028 0.03643771 0.02850197 0.2524653 0.11423522 0.02935774
## 30 0.02934171 0.04167417 0.03196116 0.2883196 0.12120306 0.03598597
##         NDVI Clase
## 1  0.7983043     3
## 2  0.7971693     3
## 3  0.7806156     3
## 4  0.7805396     3
## 5  0.8054373     3
## 6  0.7839175     3
## 7  0.8137313     3
## 8  0.8262143     3
## 9  0.7949566     3
## 10 0.8170469     3
## 11 0.8160238     3
## 12 0.8024766     3
## 13 0.7968989     3
## 14 0.7868632     3
## 15 0.7822068     3
## 16 0.7995475     3
## 17 0.8022825     3
## 18 0.7996612     3
## 19 0.7897957     3
## 20 0.8189797     3
## 21 0.8100846     3
## 22 0.7996733     3
## 23 0.8033039     3
## 24 0.8100874     3
## 25 0.8029250     3
## 26 0.8001153     3
## 27 0.8168229     3
## 28 0.8159714     3
## 29 0.7971153     3
## 30 0.8004179     3
##         BANDA.2   BANDA.3   BANDA.4   BANDA.5   BANDA.6   BANDA.7
## 41341 0.1952558 0.2081054 0.2214873 0.3732532 0.2689371 0.1862763
## 41342 0.2383511 0.2622366 0.2762925 0.4266714 0.3318461 0.2428435
## 41343 0.2480937 0.2716790 0.2888164 0.4384430 0.3444716 0.2492823
## 41344 0.2555976 0.2781142 0.2975478 0.4490519 0.3576728 0.2639402
## 41345 0.2362161 0.2636456 0.2835651 0.4527058 0.3586256 0.2556833
## 41346 0.1963337 0.2146457 0.2288641 0.4184916 0.3139600 0.2081305
## 41347 0.2683044 0.2747704 0.2976936 0.4491557 0.3382978 0.2383363
## 41348 0.3102804 0.3319930 0.3562081 0.5058542 0.4117678 0.2948277
## 41349 0.3107364 0.3246115 0.3548328 0.5018888 0.4083137 0.2940323
## 41350 0.3139702 0.3310046 0.3617720 0.5202416 0.4237183 0.3162274
## 41351 0.2325263 0.2563692 0.2697284 0.4480969 0.3401837 0.2469908
## 41352 0.1510203 0.1636691 0.1725585 0.3504160 0.2482718 0.1575666
## 41353 0.1386244 0.1469713 0.1594511 0.3337864 0.2299490 0.1506354
## 41354 0.1842695 0.2059183 0.2133394 0.3768864 0.2764210 0.1946657
## 41355 0.2244006 0.2552967 0.2614555 0.4100418 0.3195383 0.2272577
## 41356 0.2736525 0.2967888 0.3133850 0.4526435 0.3565015 0.2626524
## 41357 0.2842864 0.3086918 0.3320771 0.4812108 0.3840751 0.2950739
## 41358 0.2594532 0.2811846 0.2990064 0.4625050 0.3580897 0.2685610
## 41359 0.2208560 0.2473053 0.2625182 0.4345399 0.3361737 0.2383931
## 41360 0.2462903 0.2634563 0.2835651 0.4393772 0.3486602 0.2449266
## 41361 0.2561158 0.2734035 0.2949638 0.4565051 0.3598961 0.2605124
## 41362 0.2588520 0.2833086 0.3013404 0.4650379 0.3705166 0.2687504
## 41363 0.1817613 0.2097878 0.2177363 0.3877029 0.3018904 0.2019757
## 41364 0.1497351 0.1660875 0.1726418 0.3518900 0.2428325 0.1589680
## 41365 0.1827148 0.2082736 0.2135061 0.3852531 0.2825750 0.1938135
## 41366 0.2424347 0.2532147 0.2758132 0.4359101 0.3406998 0.2461197
## 41367 0.2484876 0.2672837 0.2882538 0.4450865 0.3480846 0.2598685
## 41368 0.2654645 0.2748335 0.2974852 0.4666365 0.3447495 0.2608344
## 41369 0.2278416 0.2496606 0.2578504 0.4409135 0.3235085 0.2334692
## 41370 0.2124193 0.2235835 0.2416381 0.4166438 0.3043917 0.2197015
##            NDVI Clase
## 41341 0.2551801     8
## 41342 0.2139213     8
## 41343 0.2057403     8
## 41344 0.2029255     8
## 41345 0.2297261     8
## 41346 0.2929263     8
## 41347 0.2028013     8
## 41348 0.1735908     8
## 41349 0.1716497     8
## 41350 0.1796680     8
## 41351 0.2484846     8
## 41352 0.3400884     8
## 41353 0.3534511     8
## 41354 0.2770922     8
## 41355 0.2212761     8
## 41356 0.1817929     8
## 41357 0.1833713     8
## 41358 0.2147027     8
## 41359 0.2467823     8
## 41360 0.2155249     8
## 41361 0.2149674     8
## 41362 0.2135989     8
## 41363 0.2807327     8
## 41364 0.3417299     8
## 41365 0.2868381     8
## 41366 0.2249426     8
## 41367 0.2138608     8
## 41368 0.2213669     8
## 41369 0.2619813     8
## 41370 0.2658523     8

Se determina el Subconjunto de poligonos de entrenamiento por cada clase:

Tejidourbano <- subset(valuetable, Clase == 1)
Cultivos <- subset(valuetable, Clase == 2)
Bosquedenso <- subset(valuetable, Clase == 3)
Bosquefragmentado <- subset(valuetable, Clase == 4)
Rios <- subset(valuetable, Clase == 5)
Oceano <- subset(valuetable, Clase == 6)
Manglar <- subset(valuetable, Clase == 7)
Nubes <- subset(valuetable, Clase == 8)

Finalmente se aplica el método random forest para las covariables, con un número de árboles de 500:

## 
## Call:
##  randomForest(x = valuetable[, c(1:6)], y = M, importance = TRUE) 
##                Type of random forest: classification
##                      Number of trees: 500
## No. of variables tried at each split: 2
## 
##         OOB estimate of  error rate: 4.48%
## Confusion matrix:
##    1  2    3    4   5     6    7    8  class.error
## 1 49  0    0    0   0     0    0    3 0.0576923077
## 2  0 26   20    9   0     0    5    0 0.5666666667
## 3  0  4 7389  739   0     0   19    0 0.0934854619
## 4  0  2  851 1615   0     0   65    0 0.3624161074
## 5  1  1    0    0 165     0   11    0 0.0730337079
## 6  0  0    0    0   1 22020    0    0 0.0000454112
## 7  1  1   14   93  14     0 5977    0 0.0201639344
## 8  0  0    0    0   0     0    0 2275 0.0000000000

Se genera la matriz de confusión:

##    1  2    3    4   5     6    7    8  class.error
## 1 49  0    0    0   0     0    0    3 0.0576923077
## 2  0 26   20    9   0     0    5    0 0.5666666667
## 3  0  4 7389  739   0     0   19    0 0.0934854619
## 4  0  2  851 1615   0     0   65    0 0.3624161074
## 5  1  1    0    0 165     0   11    0 0.0730337079
## 6  0  0    0    0   1 22020    0    0 0.0000454112
## 7  1  1   14   93  14     0 5977    0 0.0201639344
## 8  0  0    0    0   0     0    0 2275 0.0000000000

Se genera el grafico que nos arroja el modelo con el fin de determinar las covariables que mas aportan al modelo

Con el modelo entrenado se realiza una predicción de la clasificación, como se puede observar, en donde:

Leyenda

Se determina el valor Kappa para la predicción del modelo a través de la matriz de confusión de acuerdo a la siguiente formula:

\(KIA = d - q/N - q\)

donde,

KIA = Índice de exactitud de kappa

q = número de aciertos debido al azar

N = número total

d = Sumatoria de la diagonal principal

Para este caso, el índice Kappa fue de 0,93

Validación del modelo

Para validar el modelo se cargan inicialmente los poligonos de validación con el fin de realizar una predicción del modelo obtenido.

Se determina la columna que contiene los valores de las clases y se presenta el ploteo de los poligonos en la imagen.

##   OBJECTID cob1 Shape_Leng Shape_Area   AREA_HA
## 0        9    1   314.0727    7839.32  0.783932
## 1        0    2     0.0000       0.00 26.477303
## 2        0    2     0.0000       0.00 19.802459
## 3        0    2     0.0000       0.00  9.955665
## 4        0    2     0.0000       0.00  5.338629
## 5        0    2     0.0000       0.00 43.858959
##   [1] 1 2 2 2 2 2 2 2 1 1 1 1 1 1 3 3 3 3 3 3 3 3 3 3 3 3 7 7 7 7 7 7 7 7 7
##  [36] 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
##  [71] 7 7 7 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5
## [106] 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4
## [141] 4 4 4 4 4 3 3 3 3 3 3 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
## [176] 8 8 8 8

Posteriomente se combina la imagen con la capa de clases para hacer el nuevo conjunto de datos de validación. se plotean los poligonos con el valor de las covariables, en este caso son las bandas, azul, verde, NIR, SWIR1, SWIR2 y el NDVI:

## class      : RasterLayer 
## dimensions : 980, 939, 920220  (nrow, ncol, ncell)
## resolution : 30, 30  (x, y)
## extent     : 235106.4, 263276.4, 618845.1, 648245.1  (xmin, xmax, ymin, ymax)
## crs        : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 
## source     : memory
## names      : Clase 
## values     : 1, 8  (min, max)

Luego se extraen todos los valores en una matriz

##       BANDA.2    BANDA.3    BANDA.4   BANDA.5    BANDA.6    BANDA.7
## 1  0.03651391 0.04981277 0.04784010 0.1353521 0.07220984 0.02140387
## 2  0.03454467 0.04953938 0.04304724 0.2209292 0.09442354 0.02577850
## 3  0.03601642 0.04653210 0.04809016 0.1461478 0.08777333 0.02928199
## 4  0.03612006 0.04707888 0.04644392 0.1125356 0.06516260 0.02183944
## 5  0.03792348 0.04848789 0.05390410 0.1233106 0.09088999 0.02581638
## 6  0.04202780 0.05601662 0.06276046 0.1328607 0.09466176 0.04058785
## 7  0.04121937 0.05197886 0.05582124 0.1484523 0.10720783 0.04172412
## 8  0.03491779 0.04484970 0.04523528 0.1255528 0.06367374 0.01619598
## 9  0.03786129 0.04859304 0.05269546 0.1500924 0.08848798 0.02699052
## 10 0.17829954 0.19658097 0.20242004 0.3770109 0.27697689 0.18012149
## 11 0.20872956 0.22192209 0.23444880 0.3982288 0.31100216 0.20409674
## 12 0.16859842 0.18173381 0.18841657 0.3668380 0.25768134 0.16103220
## 13 0.12521285 0.13088333 0.13617447 0.3163263 0.20384438 0.11419904
## 14 0.10991492 0.12781295 0.12475497 0.2983057 0.20434067 0.12010763
## 15 0.16822530 0.18263810 0.18820818 0.3527828 0.25976574 0.16648628
## 16 0.19809564 0.21756889 0.22494645 0.3865610 0.30294250 0.20441868
## 17 0.18317083 0.19557153 0.20512904 0.3693086 0.28082806 0.18309473
## 18 0.19906989 0.21353113 0.22409207 0.3878690 0.30016331 0.20201358
## 19 0.17261983 0.18678100 0.19506405 0.3550250 0.26661446 0.16319111
## 20 0.02950754 0.04055959 0.03052331 0.2907487 0.11445359 0.02805103
## 21 0.02834673 0.03917161 0.02825191 0.3038489 0.11800699 0.02771015
## 22 0.02865766 0.03700552 0.02835610 0.2957729 0.12582843 0.03140302
## 23 0.02865766 0.03870895 0.02896042 0.3125270 0.12785328 0.03172497
## 24 0.02876130 0.04245228 0.02943971 0.3410320 0.12582843 0.02933880
## 25 0.02745538 0.03990766 0.02802269 0.3071292 0.10657259 0.02248332
## 26 0.02840891 0.04028620 0.02929384 0.2884234 0.11306399 0.02611938
## 27 0.02697862 0.03706861 0.02654316 0.2683060 0.10681081 0.02390366
## 28 0.02786996 0.04072783 0.02841862 0.3220356 0.12402196 0.02947137
## 29 0.02816017 0.04070680 0.02914797 0.3081880 0.11729234 0.02831616
## 30 0.18727515 0.20856806 0.21846567 0.3680837 0.29462477 0.18936314
##         NDVI Clase
## 1  0.4777058     5
## 2  0.6738554     5
## 3  0.5048326     5
## 4  0.4157246     5
## 5  0.3916522     5
## 6  0.3583470     5
## 7  0.4534658     5
## 8  0.4702760     5
## 9  0.4802898     5
## 10 0.3013144     8
## 11 0.2588680     8
## 12 0.3213327     8
## 13 0.3981250     8
## 14 0.4102266     8
## 15 0.3042095     8
## 16 0.2642888     8
## 17 0.2858092     8
## 18 0.2676264     8
## 19 0.2907910     8
## 20 0.8099846     4
## 21 0.8298594     4
## 22 0.8250320     4
## 23 0.8303866     4
## 24 0.8410691     4
## 25 0.8327762     4
## 26 0.8155981     4
## 27 0.8199543     4
## 28 0.8378184     4
## 29 0.8271873     4
## 30 0.2550817     8
##          BANDA.2    BANDA.3    BANDA.4   BANDA.5    BANDA.6    BANDA.7
## 45534 0.02587999 0.03690037 0.02802269 0.2760291 0.10224499 0.02528612
## 45535 0.02610801 0.03458707 0.02693909 0.2501608 0.09986282 0.02293783
## 45536 0.02706154 0.03662698 0.02868952 0.2787488 0.10855773 0.02621407
## 45537 0.02677133 0.03635359 0.02798101 0.2777315 0.10641378 0.02803210
## 45538 0.02617019 0.03696346 0.02783514 0.2516348 0.11044361 0.02776697
## 45539 0.02861620 0.04188447 0.03054415 0.3691633 0.13771941 0.03928114
## 45540 0.02948682 0.04731021 0.03252380 0.4222493 0.16616645 0.04803040
## 45541 0.02913442 0.04632180 0.03204452 0.3992460 0.16201751 0.04772740
## 45542 0.02913442 0.04367202 0.03233626 0.3685404 0.15294543 0.04369365
## 45543 0.02797361 0.04060165 0.02948138 0.3800213 0.14010158 0.03772825
## 45544 0.02807725 0.04453425 0.03131517 0.3807272 0.13619086 0.03672454
## 45545 0.02859547 0.04846686 0.03073169 0.4318409 0.14915381 0.04070148
## 45546 0.02822235 0.04306215 0.02929384 0.4167269 0.14915381 0.03861832
## 45547 0.03002577 0.05071706 0.03229458 0.4839720 0.17345191 0.04778421
## 45548 0.02977702 0.05073809 0.03381579 0.4473287 0.16771486 0.04679945
## 45549 0.02805652 0.04116945 0.02943971 0.3662982 0.12688056 0.03303167
## 45550 0.02757976 0.03942397 0.02900210 0.3162433 0.13357047 0.03621322
## 45551 0.02886495 0.04310421 0.03091924 0.3661737 0.15022579 0.04083404
## 45552 0.02838818 0.04146387 0.02964809 0.3568312 0.13827525 0.03598597
## 45553 0.02847110 0.04268361 0.03035660 0.3656754 0.14510413 0.03858045
## 45554 0.02859547 0.04140078 0.03010654 0.3597377 0.14351602 0.03945158
## 45555 0.02915515 0.04409262 0.03089840 0.3757860 0.14468725 0.04011441
## 45556 0.03054399 0.04665828 0.03548287 0.3736476 0.16128301 0.04740546
## 45557 0.03218157 0.04762566 0.04060914 0.3614817 0.17807728 0.06003696
## 45558 0.02652258 0.03793084 0.02846030 0.2843127 0.10947089 0.02776697
## 45559 0.02716518 0.04018105 0.02933551 0.2988040 0.11568438 0.02890324
## 45560 0.02625311 0.03677419 0.02825191 0.2787073 0.11161484 0.02604363
## 45561 0.02538249 0.03458707 0.02662651 0.2572611 0.09974371 0.02261589
## 45562 0.02587999 0.03443986 0.02704328 0.2606866 0.09865189 0.02320296
## 45563 0.02592145 0.03553342 0.02725166 0.2536902 0.09902906 0.02380897
##            NDVI Clase
## 45534 0.8156716     3
## 45535 0.8055641     3
## 45536 0.8133640     3
## 45537 0.8169456     3
## 45538 0.8008005     3
## 45539 0.8471675     2
## 45540 0.8569669     2
## 45541 0.8514017     2
## 45542 0.8386723     2
## 45543 0.8560137     2
## 45544 0.8480002     2
## 45545 0.8671271     2
## 45546 0.8686436     2
## 45547 0.8748918     2
## 45548 0.8594360     2
## 45549 0.8512162     2
## 45550 0.8319914     2
## 45551 0.8442720     2
## 45552 0.8465734     2
## 45553 0.8466962     2
## 45554 0.8455458     2
## 45555 0.8480473     2
## 45556 0.8265450     2
## 45557 0.7980101     2
## 45558 0.8180131     3
## 45559 0.8212010     3
## 45560 0.8159240     3
## 45561 0.8124151     3
## 45562 0.8120232     3
## 45563 0.8059978     3

Se determina el Subconjunto de poligonos de entrenamiento por cada clase:

Tejidourbano <- subset(valuetablet, Clase == 1)
Cultivos <- subset(valuetablet, Clase == 2)
Bosquedenso <- subset(valuetablet, Clase == 3)
Bosquefragmentado <- subset(valuetablet, Clase == 4)
Rios <- subset(valuetablet, Clase == 5)
Oceano <- subset(valuetablet, Clase == 6)
Manglar <- subset(valuetablet, Clase == 7)
Nubes <- subset(valuetablet, Clase == 8)

Por ultimo, se genera la predicción de la clasificación utilizando los poligonos de validación en el modelo generado por Random forest:

##    pred_1
## MM      1     2     3     4     5     6     7     8
##   1    44     0     0     0     1     0     0     6
##   2     4   142   935   308     0     0    54     0
##   3     0     1 10162   591     0     0    35     0
##   4    13   200  4020  1304     0     0   156     5
##   5     0     0     0     0   134     0    12     0
##   6     0     0     0     0     0 20406     0     0
##   7     0     2    36    98    21     0  4874     0
##   8     0     0     0     0     0     0     0  1999
Clasificación Random Forest con 4 bandas

Se realiza el modelo de random forest con las 4 bandas que más aportan a la predicción

## class      : RasterBrick 
## dimensions : 980, 939, 920220, 4  (nrow, ncol, ncell, nlayers)
## resolution : 30, 30  (x, y)
## extent     : 235106.4, 263276.4, 618845.1, 648245.1  (xmin, xmax, ymin, ymax)
## crs        : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 
## source     : memory
## names      : Mask_2018.1, Mask_2018.2, Mask_2018.4, Mask_2018.5 
## min values : 0.014997319, 0.015807305, 0.014730218, 0.002134447 
## max values :   0.4310469,   0.4660801,   0.6183792,   0.5326826

Posteriomente se combina la imagen con la capa de clases para hacer el nuevo conjunto de datos de entrenamiento de entrada. se plotean los poligonos con el valor de las covariables, las covariables en este caso son las bandas, azul, verde, NIR, SWIR2:

## class      : RasterLayer 
## dimensions : 980, 939, 920220  (nrow, ncol, ncell)
## resolution : 30, 30  (x, y)
## extent     : 235106.4, 263276.4, 618845.1, 648245.1  (xmin, xmax, ymin, ymax)
## crs        : +proj=utm +zone=18 +datum=WGS84 +units=m +no_defs +ellps=WGS84 +towgs84=0,0,0 
## source     : memory
## names      : Clase 
## values     : 1, 8  (min, max)

Luego se extraen todos los valores en una matriz

##            B2         B3        B5         B6 Clase
## 1  0.02745538 0.03759436 0.2606244 0.10949074     3
## 2  0.02874058 0.03854071 0.2639877 0.10647333     3
## 3  0.02938317 0.03965530 0.2680361 0.12481601     3
## 4  0.03139387 0.04703682 0.3103679 0.16166019     3
## 5  0.02903078 0.04219992 0.2898144 0.13257791     3
## 6  0.02768340 0.03376690 0.2380571 0.10031940     3
## 7  0.02820162 0.03971839 0.2992400 0.13253820     3
## 8  0.02778705 0.03824629 0.2946933 0.11334191     3
## 9  0.02809798 0.03494458 0.2456764 0.11199202     3
## 10 0.02861620 0.03957118 0.2988040 0.13490052     3
## 11 0.02712372 0.03761539 0.2677662 0.10508374     3
## 12 0.02648113 0.03330424 0.2382232 0.09402651     3
## 13 0.02726882 0.03528106 0.2407353 0.10613586     3
## 14 0.02710299 0.03650080 0.2338841 0.10176855     3
## 15 0.02927953 0.03923470 0.2734755 0.13392780     3
## 16 0.03044034 0.04426086 0.3209768 0.16295053     3
## 17 0.03081346 0.04815141 0.3390182 0.16295053     3
## 18 0.02886495 0.04043341 0.2901051 0.14256315     3
## 19 0.02828454 0.03662698 0.2570535 0.10000178     3
## 20 0.02807725 0.03782569 0.2970808 0.12108395     3
## 21 0.02706154 0.03460810 0.2561607 0.10466686     3
## 22 0.02811871 0.03460810 0.2581123 0.10157004     3
## 23 0.02770413 0.03755230 0.2614963 0.12479616     3
## 24 0.02660550 0.03406132 0.2525898 0.09347067     3
## 25 0.02708226 0.03549136 0.2472127 0.10029955     3
## 26 0.02739320 0.03696346 0.2561192 0.10577853     3
## 27 0.02791142 0.03851968 0.2874477 0.11354043     3
## 28 0.02780778 0.03929779 0.2870117 0.11836431     3
## 29 0.02731028 0.03643771 0.2524653 0.11423522     3
## 30 0.02934171 0.04167417 0.2883196 0.12120306     3
##              B2        B3        B5        B6 Clase
## 41341 0.1952558 0.2081054 0.3732532 0.2689371     8
## 41342 0.2383511 0.2622366 0.4266714 0.3318461     8
## 41343 0.2480937 0.2716790 0.4384430 0.3444716     8
## 41344 0.2555976 0.2781142 0.4490519 0.3576728     8
## 41345 0.2362161 0.2636456 0.4527058 0.3586256     8
## 41346 0.1963337 0.2146457 0.4184916 0.3139600     8
## 41347 0.2683044 0.2747704 0.4491557 0.3382978     8
## 41348 0.3102804 0.3319930 0.5058542 0.4117678     8
## 41349 0.3107364 0.3246115 0.5018888 0.4083137     8
## 41350 0.3139702 0.3310046 0.5202416 0.4237183     8
## 41351 0.2325263 0.2563692 0.4480969 0.3401837     8
## 41352 0.1510203 0.1636691 0.3504160 0.2482718     8
## 41353 0.1386244 0.1469713 0.3337864 0.2299490     8
## 41354 0.1842695 0.2059183 0.3768864 0.2764210     8
## 41355 0.2244006 0.2552967 0.4100418 0.3195383     8
## 41356 0.2736525 0.2967888 0.4526435 0.3565015     8
## 41357 0.2842864 0.3086918 0.4812108 0.3840751     8
## 41358 0.2594532 0.2811846 0.4625050 0.3580897     8
## 41359 0.2208560 0.2473053 0.4345399 0.3361737     8
## 41360 0.2462903 0.2634563 0.4393772 0.3486602     8
## 41361 0.2561158 0.2734035 0.4565051 0.3598961     8
## 41362 0.2588520 0.2833086 0.4650379 0.3705166     8
## 41363 0.1817613 0.2097878 0.3877029 0.3018904     8
## 41364 0.1497351 0.1660875 0.3518900 0.2428325     8
## 41365 0.1827148 0.2082736 0.3852531 0.2825750     8
## 41366 0.2424347 0.2532147 0.4359101 0.3406998     8
## 41367 0.2484876 0.2672837 0.4450865 0.3480846     8
## 41368 0.2654645 0.2748335 0.4666365 0.3447495     8
## 41369 0.2278416 0.2496606 0.4409135 0.3235085     8
## 41370 0.2124193 0.2235835 0.4166438 0.3043917     8

Se determina el Subconjunto de poligonos de entrenamiento por cada clase:

Tejidourbano <- subset(valuetable, Clase == 1)
Cultivos <- subset(valuetable, Clase == 2)
Bosquedenso <- subset(valuetable, Clase == 3)
Bosquefragmentado <- subset(valuetable, Clase == 4)
Rios <- subset(valuetable, Clase == 5)
Oceano <- subset(valuetable, Clase == 6)
Manglar <- subset(valuetable, Clase == 7)
Nubes <- subset(valuetable, Clase == 8)

Finalmente se aplica el método random forest para las cuatro covariables:

## 
## Call:
##  randomForest(x = valuetable[, c(1:4)], y = M, importance = TRUE) 
##                Type of random forest: classification
##                      Number of trees: 500
## No. of variables tried at each split: 2
## 
##         OOB estimate of  error rate: 5.4%
## Confusion matrix:
##    1  2    3    4   5     6    7    8  class.error
## 1 49  0    0    0   0     0    0    3 0.0576923077
## 2  0 22   19   12   0     0    7    0 0.6333333333
## 3  0  3 7238  869   0     0   41    0 0.1120107962
## 4  0  3  989 1446   0     0   95    0 0.4291354126
## 5  1  1    0    0 162     1   13    0 0.0898876404
## 6  0  0    0    0   1 22020    0    0 0.0000454112
## 7  0  2   38  119  16     0 5925    0 0.0286885246
## 8  2  0    0    0   0     0    0 2273 0.0008791209

Se genera la matriz de confusión:

##    1  2    3    4   5     6    7    8  class.error
## 1 49  0    0    0   0     0    0    3 0.0576923077
## 2  0 22   19   12   0     0    7    0 0.6333333333
## 3  0  3 7238  869   0     0   41    0 0.1120107962
## 4  0  3  989 1446   0     0   95    0 0.4291354126
## 5  1  1    0    0 162     1   13    0 0.0898876404
## 6  0  0    0    0   1 22020    0    0 0.0000454112
## 7  0  2   38  119  16     0 5925    0 0.0286885246
## 8  2  0    0    0   0     0    0 2273 0.0008791209

Se genera el grafico que nos arroja el modelo con el fin de determinar las covariables que mas aportan al modelo, que en este caso corresponden a las bandas 5, 3 y 2, NIR, verde y azul respectivamente.

Con el modelo entrenado se realiza una predicción de la clasificación, como se puede observar, en donde:

Leyenda

Discusión de resultados

A primera vista la clasificación arroja muy buenos resultados, en el ploteo es posible distinguir claramente el oceano, los manglares que se encuentran en la línea de costa, bosque denso, ríos y las nubes. Las demas categorias presentan una menor claridad, en el caso de tejido urbano aparece en algunas partes en la línea de costa y de acuerdo a la información que se tiene sólo esta ubicada en la parte central.

El nivel de predicción de la clasificación se puede evidenciar con la matriz de confusión y el índice Kappa, el cual brindó muy buenos resultados con un valor de 0,93 equivalente a 93% de exactitud en la clasificación para el modelo.

Se calcula también el índice de calificación correcta (PCC), para este se utilizó la siguiente fórmula:

\(PCC = d/N *100\)

donde,

N = número total

d = Sumatoria de la diagonal principal

el índice PCC arroja un valor de 0,95 correspondiente a 95% de predicción, esto nos corrobora el valor arrojado por el índice Kappa.

Con el fin de validar el modelo se realizó una predicción con información proveniente de los poigonos de validación, la matriz de confusión para este proceso fue la siguiente:

##    pred_1
## MM      1     2     3     4     5     6     7     8
##   1    44     0     0     0     1     0     0     6
##   2     4   142   935   308     0     0    54     0
##   3     0     1 10162   591     0     0    35     0
##   4    13   200  4020  1304     0     0   156     5
##   5     0     0     0     0   134     0    12     0
##   6     0     0     0     0     0 20406     0     0
##   7     0     2    36    98    21     0  4874     0
##   8     0     0     0     0     0     0     0  1999

De acuerdo con la información que proporciona la matriz de confusión se obtiene un Índice de Kappa de 79,61% y un índice de calificación correcta de 85,7%, valores muy altos de clasificación que suponen un correcto entrenamiento del modelo inicial.

También se puede analizar que de acuerdo con el grafico de covariables importantes, las que más aportan al modelo son las bandas 5 y 2 según en el índice disminución media de precisión y el coeficiente de Gini de precisión.

También se construyo una nueva clasificación a partir de 4 covariables que de acuerdo a los resultados de la primera predicción resultaron explicar de mejor manera la variable respuesta. Para ésta, el valor del índice de exatitud Kappa fue de 0,91 equivalente a 91%, un resultado muy similar a la primera predicción en la que se involucraron las 6 covariables o variables explicativas.

Conclusiones

El modelo Random Forest presentó valores de exatitud en la clasificación muy elevados en este caso con un valor de índice de exactitud de Kappa de 93% y un índice de calificación correcta de 95%.y en la validación del modelo estos valores pasaron a ser 79,6% y 85,7% respectivamente.

Las clasificaciones supervisadas permiten obtener un mayor porcentaje de predicción ya que al considerar dentro de sus parametros información veridica de las coberturas en la realidad es posible entrenar acertivamente el modelo a clasificar.

La clasificación realizada permitirá discriminar la cobertura de interes, la cual corresponde a los manglares, sobre esta información es posible tomar desiciones respecto a esta cobertura vegetal y el manejo que se debe realizar.

En este caso en particular se obtuvieron mejores resultados cuando dentro del modelo se involucraron las siete covariables correspondientes a las bandas, azul, verde, rojo, NIR, SWIR1 y SWIR2.

Referencias

Chavez, P. S. (1996). Image-Based Atmospheric Corrections - Revisited and Improved. Photogrammetric Engineering & Remote Sensing, 62(9), 1025–1036. Retrieved from https://www.asprs.org/wp-content/uploads/pers/1996journal/sep/1996_sep_1025-1036.pdf

Chuvieco, E. (1995). Fundamentos de Teledetección espacial. Segunda edición. Madrid. 156.

Díaz, J.M., L. Guillot y M.C. Velandia. (2016). La pesca artesanal en la costa norte del Pacífico colombiano: un horizonte ambivalente. Fundación MarViva, Bogotá

Fundación Plan. (2012). Estrategia municipal de respuesta a emergencias. Comunidades e instituciones coordinadas y preparadas para responder a desastres en el municipio de Nuquí. Proyecto DIPECHO VII. Chocó

Hollinger (2018) Image-Based Atmospheric Correction / Conversion of Sentinel-2 Imagery to Surface Reflectance with free QGIS. Retrieved from http://www.gisagmaps.com/course-2b/

PDM. (2016). Plan De Desarrollo Municipal 2016-2019. Alcaldía de Nuquí. “Caminemos Juntos por el Nuquí que queremos”. Chocó