04 - RUSLE - Ipynb - Colab
04 - RUSLE - Ipynb - Colab
04 - RUSLE - Ipynb - Colab
http://cybertesis.unmsm.edu.pe/
handle/cybertesis/10078
import ee
ee.Authenticate()
ee.Initialize()
To authorize access needed by Earth Engine, open the following URL in a web browser and foll
https://accounts.google.com/o/oauth2/auth?client_id=517222506229-vsmmajv00ul0bs7p89v5m89
The authorization workflow will generate a code, which you should paste in the box below.
Enter verification code: 4/1AY0e-g4o3TZVqtHiYSbXvvukKyF552vfoSl0JOQQURb6gwYJmNCpNpBtW_0
Show code
1) Factor R
El factor R es el factor de erosividad de la lluvia. Este factor indica el potencial erosivo de la
lluvia que afecta en el proceso de erosion del suelo. Haciendo una analogia, se podria decir que
una lluvia fuerte un dia al año puede producir su�ciente energia para erosionar el suelo que
varias lluvias de mediana intensidad a lo largo de un ano.
El factor erosividad (R) es de�nido como la sumatoria anual de los promedios de los valores
individuales del indice de tormenta de erosion (EI30). Donde E es la energia cinetica por unidad
de area e I30 es la maxima intensidad en 30 minutos de precipitacion. Esto se puede de�nir en
la siguiente ecuacion:
Por tanto, la energia de la tormenta (EI o R) indica el volumen de lluvia y escurrimiento, pero una
larga y suave lluvia puede tener el mismo valor de E que una lluvia de corta y mas alta
intensidad. (Mannaerts, 1999). La energia se calcula a partir de la formula de Brown y Foster:
A partir de la ecuación anterior, el calculo del factor R es un proceso complejo y requiere datos
horarios o diarios de varios anos. Por lo que se han desarrollado diferentes ecuaciones que
adaptan la erosividad local mediante una formula que solo requiera una data mensual o anual
de precipitacion. A continuacion, se muestran algunas de las formulas adaptadas para una
precipitacion media anual.
2 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
Si bien es cierto, se usa ampliamente una precipitacion media anual para estimar el factor R
debido a la escasez de informacion, para este ejemplo se ha optado por utilizar la formula
desarrollada por (Wischmeier & Smith, 1978) debido a que se cuenta con una serie historica de
informacion de precipitacion mensual. La formula es:
center_coordinate = [0,0]
palette_rain = ["#450155", "#3B528C", "#21918D", "#5DCA63","#FFE925"]
mapdisplay(center_coordinate, {'Factor_R':factorR.getMapId({'min':0,'max':6000,'palette':palette_
3 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
2) Factor K
A diferencia del factor R, el factor K muestra qué tan susceptible es el suelo a la erosion hidrica,
esto es determinado por las propiedades �sicas y quimicas del suelo, que dependen de las
caracteristicas de estos. Para determinar el factor K, existen una gran cantidad de formulas
empiricas, adecuadas para diversos lugares del mundo y donde intervienen caracteristicas del
suelo como porcentaje de arena, limo, arcilla; estructura del suelo; contenido de carbono
organico o materia orgánica; entre otros.
El factor K puede variar en una escala de 0 a 1, donde 0 indica suelos con la menor
susceptibilidad a la erosion y 1 indica suelos altamente susceptibles a la erosion hidrica del
suelo; cabe mencionar que esta escala fue hecha para el sistema de unidades americanas, y
adaptandose al sistema internacional, la escala varia a normalmente entre 0 y 0.07.
4 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
Para este ejemplo se ha optado por utilizar la formula desarrollada por Williams (1975).
5 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
sand = ee.Image("OpenLandMap/SOL/SOL_CLAY-WFRACTION_USDA-3A1A1A_M/v02").select('b0')
silt = ee.Image('users/aschwantes/SLTPPT_I').divide(100)
clay = ee.Image("OpenLandMap/SOL/SOL_SAND-WFRACTION_USDA-3A1A1A_M/v02").select('b0')
morg = ee.Image("OpenLandMap/SOL/SOL_ORGANIC-CARBON_USDA-6A1C_M/v02").select('b0').multiply(
sn1 = sand.expression('1 - b0 / 100', {'b0': sand})
orgcar = ee.Image("OpenLandMap/SOL/SOL_ORGANIC-CARBON_USDA-6A1C_M/v02").select('b0')
factorK = soil.expression(
'(0.2 + 0.3 * exp(-0.0256 * SAND * (1 - (SILT / 100)))) * (1 - (0.25 * CLAY / (CLAY + exp(3.72
{
'SAND': soil.select('sand'),
'SILT': soil.select('silt'),
'CLAY': soil.select('clay'),
'MORG': soil.select('morg'),
'SN1': soil.select('sn1'),
'CORG': soil.select('orgcar')
});
center_coordinate = [0,0]
palette_k = palette = [
'FFFFFF', 'CE7E45', 'DF923D', 'F1B555', 'FCD163', '99B718', '74A901',
'66A000', '529400', '3E8601', '207401', '056201', '004C00', '023B01',
'012E01', '011D01', '011301'
]
viz_param_k = {'min': 0.0, 'max': 0.5, 'palette': palette_k};
mapdisplay(center_coordinate, {'Factor_K':factorK.getMapId(viz_param_k)},zoom_start=3)
6 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
3) Factor LS
El factor LS expresa el efecto de la topogra�a local sobre la tasa de erosion del suelo,
combinando los efectos de la longitud de la pendiente (L) y la inclinación de la pendiente (S). A
medida que mayor sea la longitud de la pendiente, mayor sera la cantidad de escorrentia
acumulada y de la misma forma, mientras mas pronunciada sea la pendiente de la super�cie,
mayor sera la velocidad de la escorrentia, que in�uye directamente en la erosion. Existen
diversas metodologias basadas en SIG para calcular estos factores, como se pueden mostrar a
continuación:
7 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
facc = ee.Image("WWF/HydroSHEDS/15ACC")
dem = ee.Image("WWF/HydroSHEDS/03CONDEM")
slope = ee.Terrain.slope(dem)
factorLS = ls_factors.expression(
'(FACC*270/22.13)**0.4*(SLOPE/0.0896)**1.3',
{
'FACC': ls_factors.select('facc'),
'SLOPE': ls_factors.select('slope')
});
center_coordinate = [0,0]
palette_ls = palette = [
'FFFFFF', 'CE7E45', 'DF923D', 'F1B555', 'FCD163', '99B718', '74A901',
'66A000', '529400', '3E8601', '207401', '056201', '004C00', '023B01',
'012E01', '011D01', '011301'
]
viz_param_k = {'min': 0, 'max': 100, 'palette': palette_ls};
mapdisplay(center_coordinate, {'Factor_LS':factorLS.getMapId(viz_param_k)},zoom_start=3)
8 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
4) Factor C
El factor C se utiliza para determinar la e�cacia relativa de los sistemas de manejo del suelo y
de los cultivos en terminos de prevencion o reduccion de la perdida de suelo. Este factor indica
como la cobertura vegetal y los cultivos afectaran la perdida media anual de suelos y como se
distribuira el potencial de perdida de suelos en el tiempo (Rahaman, 2015).
ndvi_median = ee.ImageCollection("MODIS/006/MOD13A2").median().multiply(0.0001).select('NDVI'
geo_ndvi = [
'FFFFFF', 'CE7E45', 'DF923D', 'F1B555', 'FCD163', '99B718', '74A901',
9 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
, , , , , , ,
'66A000', '529400', '3E8601', '207401', '056201', '004C00', '023B01',
'012E01', '011D01', '011301'
]
l8_viz_params = {'palette':geo_ndvi,'min':0,'max': 0.8}
mapdisplay([0,0],{'composite_median':ndvi_median.getMapId(l8_viz_params)},zoom_start=3)
Otra forma de hallar este factor C, es haciendo una comparación entre el NDVI a partir de las
fórmulas Van de Kniff (1999) [C1] y su adaptacion para paises asiaticos, que tambien se
adecuan a la realidad de la costa peruana de Lin (2002) [C2]. Por ultimo se tiene la ecuacion
formulada por De Jong(1994) [C3] adaptado a estudios de degradacion de suelos en un entorno
mediterraneo.
10 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
factorC = ee.Image(0.805).multiply(ndvi_median).multiply(-1).add(0.431)
5) Calculo de la Erosion
A = R*K*LS*C*1
erosion = factorC.multiply(factorR).multiply(factorLS).multiply(factorK)
11 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
Estaremos felices de ayudarte!. Create una cuenta Github si es que no la tienes, luego detalla tu
problema ampliamente en: https://github.com/csaybar/EarthEngineMasterGIS/issues
12 of 13 6/24/2024, 2:57 PM
04_RUSLE.ipynb - Colab https://colab.research.google.com/github/csaybar/EarthEngineMasterGI...
13 of 13 6/24/2024, 2:57 PM