Vous êtes sur la page 1sur 24

INFORMÁTICA

APLICADA

FACULTAD DE CIENCIAS

ESCUELA DE CIENCIAS QUÍMICAS

INGENIERÍA EN BIOTECNOLOGÍA AMBIENTAL

DEBER N° 1

ING. CARLOS ROSERO

Realizado por:
 Mónica Pulluquitín

Nivel: 7° “A”

Riobamba-Ecuador.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Resolución de las imágenes satélite


Resolución: El número de píxeles que integran un sensor de satélite o de cámara digital, definen
su poder de resolución. Es decir la capacidad de discernir objetos o detalles de un determinado
tamaño en las imágenes captadas. A mayor número de píxeles por unidad de superficie, mayor
resolución de la foto sensor, pero también mayor es el volumen del archivo informático generado.
Es lo que se denomina resolución espacial y constituye uno de los tipos de resolución que
definen a las imágenes satélites.

Una imagen de satélite se caracteriza por las siguientes modalidades de resolución:

Este concepto designa al objeto más pequeño que se puede distinguir en la


imagen. Está determinada por el tamaño del píxel, medido en metros sobre el
terreno, esto depende de la altura del sensor con respecto a la Tierra, el ángulo de
Resolución
visión, la velocidad de escaneado y las características ópticas del sensor.
espacial
Por ejemplo las imágenes Landsat TM, tienen una resolución espacial de 30x30
m en las bandas 1,2,3,4, 5 y 7 y de 120x120m en la 6 (térmica). El sensor SPOT
- HRV tiene una resolución de 10x10m, mientras que los satélites meteorológicos
como NOAA, el píxel representan un tamaño desde 500 a 1100m de lado.

Consiste en el número de canales espectrales (y su ancho de banda) que es capaz de


captar un sensor. Por ejemplo SPOT tiene una resolución espectral de 3, Landsat de 7.
Resolución Los nuevos sensores, llamados también espectrómetros o hiperespectrales llegan a
Espectral tener hasta 256 canales con un ancho de banda muy estrecho (unos pocos nm) para
poder separar de forma precisa distintos objetos por su comportamiento espectral.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Se la llama a veces también resolución dinámica, y se refiere a la cantidad de niveles


de gris en que se divide la radiación recibida para ser almacenada y procesada
posteriormente. Esto depende del conversor analógico digital usado.
Resolución Así por ejemplo Landsat MSS tiene una resolución espectral de 26= 64 niveles de gris
Radiométrica en el canal 6, y Landsat MSS en las bandas 4 a 7 de 27= 128 niveles de gris, mientras
que en Landsat TM es de 28 = 256. Esto significa que tenemos una mejor resolución
dinámica en el TM y podemos distinguir mejor las pequeñas diferencias de radiación

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Es la frecuencia de paso del satélite por un mismo punto de la superficie terrestre. Es


decir cada cuanto tiempo pasa el satélite por la misma zona de la Tierra. Este tipo de
resolución depende básicamente de las características de la órbita.
Resolución El ciclo de repetición de los Landsat-1 al Landsat -3 era de 17 días. A partir del Landsat
Temporal 4 en 1984 el ciclo de repetición se redujo a 15 días. SPOT permite un ciclo de repetición
de entre 3 y 26 días.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Concepto y Metodologías para la obtención


del Número de Curva
Es un modelo empírico desarrollado por el Servicio de Conservación de Suelos de Estados
Unidos que determina un umbral de escorrentía (P0) a través de un número hidrológico o
número de curva (CN) agregado de la cuenca. El Número de Curva toma un valor de 0 a
100 según sea su capacidad de generar escorrentía superficial. Valores cercanos a 0
representan condiciones de permeabilidad muy alta, mientras que valores cercanos a 100
representan condiciones de impermeabilidad.

El Número de Curva (Curve Number) depende de las siguientes propiedades generadoras


de escorrentía de la cuenca: 1) tipo hidrológico de suelo; 2) uso de la tierra y tratamiento;
y 3) condición previa de humedad. El método fue desarrollado a partir de registros de
lluvia y escorrentía en 24 horas, por lo que no considera explícitamente la variación
temporal de la escorrentía.

El método del Número de Curva del SCS es una técnica desarrollada por el SCS para
estimar la infiltración. Considera todas las pérdidas netas menos la evaporación real.
Matemáticamente, la ecuación parte de lo siguiente.

“S” se expresa en función del Número de Curva (CN), mediante la siguiente ecuación:

Respecto al tipo de suelo hay que clasificarlo en uno de los cuatros grupos hidrológicos
existentes. Estos grupos van desde A hasta D, representando el grupo A un potencial de
escurrimiento mínimo y el D un potencial de escurrimiento alto. Para asignar a un suelo
un grupo determinado hay que considerar su composición, su textura y la profundidad del
nivel freático. La información necesaria para obtener el Número de Curva es la siguiente:

Paso 1. Clasificar la leyenda geológica a grupos hidrológicos del suelo, según la Tabla 1
o 2.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Tabla 1. Grupos hidrológicos del suelo (SCS, 1964 en Bradbury et al., 2000)

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Tabla 2. Clasificación propuesta de grupos hidrológicos del suelo.

Paso 2. Clasificar los usos del suelo de acuerdo a la leyenda de usos que aparece en las
tablas originales del SCS y asignar a cada uso un código de uso del suelo, que se llamará
“Landuse”. La conversión propuesta aparece en la Tabla 3.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Lo que tenemos que hacer es crear en ArcGis los mapas con la información consignada
en las anteriores tablas.
Una aplicación práctica para calcular el número de curva de una cuenca con
Arcgis y HEC GEOHMS partiendo de lo indicado en la explicación de la teoría
del Método de Curva del Número de Curva del SCS. Para realizar el cálculo del número
de curva del SCS necesitamos tres insumos: Modelo digital de elevación corregido, el
tipo hidrológico de suelo y el uso del suelo.
Paso 1. Construir el mapa del tipo hidrológico de suelo de acuerdo a la metodología del
SCS. De acuerdo a las características de permeabilidad le asignamos un tipo que va desde
“A” hasta “D”.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Paso 2. Construir el mapa de usos del suelo, esto puede ser algo un poco complicado,
porque usos del suelo para los Estados Unidos puede diferir de los diferentes países. El
uso del suelo se debe reclasificar de acuerdo a la siguiente tabla.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

A todo lo que sea agua le damos una calificación de “1”, a la cobertura relacionada con
medio residencial le damos una calificación de “2”, a los bosques le damos una
calificación de “3” y a los cultivos una calificación “4”. Esta reclasificación facilita las
cosas en relación con la tabla original del SCS. El resultado de la reclasificación es el
siguiente.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Paso 3. Intersectar los shapefiles de usos y tipos de suelo en ArcGIS. Se obtiene así un
shapefile de polígonos, llamado CN_Poly, en el que cada polígono tiene una única
combinación de tipo y uso de suelo.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Paso 4. Crear y rellenar los siguientes campos en la tabla de atributos del CN_Poly:
SoilCode, Pcta, Pctb, Pctc, Pctd y Landuse. El primero (SoilCode) es el código para
identificar el tipo de suelo, los cuatro siguientes indican el porcentaje de cada tipo de
suelo y el último es un código para indicar el uso del suelo. La ventaja de este método
está en que se puede considerar que un tipo de suelo está formado por una combinación
de distintos grupos del suelo. La tabla de atributos de CN_Poly se verá de la siguiente
forma.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Paso 5. Crear la tabla NCLookUp en ArcGis que se guarda como archivo “.dbf”.

Paso 6. Calcular el raster del Número de Curva con el HEC-GeoHMS. Para realizar este
paso debemos tener instalado el HEC-GeoHMS. Seleccionamos la opción “Utility”
seguido de “Generate CN Grid”.

Se nos abre una ventana donde se debe ingresar el modelos digital de elevación corregido
(para este caso se denomina Fil), el Shape “CN_Poly” y la tabla “NCLookUp” creados
anteriormente.
Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH
INFORMÁTICA
APLICADA

Guardamos el archivo de salida como “CNgrid”. El resultado será el siguiente.

Si revisamos la tabla de atributos del shape CN_Poly, observamos una nueva columna con el
calor del número de curva.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Finalmente, el número de curva de una subcuenca será el sumatorio del nuevo campo
creado, para todos los polígonos que pertenezcan a la subcuenca y divido entre el área de
esa subcuenca:

Para aplicar la ecuación, agregamos un nuevo campo en la tabla de atributos de CN_Poly


que se va a rellenar con el resultado de multiplicar el CN*Área, sumamos todos los
productos y lo dividimos por la sumatoria del área (área de la cuenca). El resultado es el
siguiente.
Finalmente CN cuenca = 76495.06 / 1433.6 = 53
De esta forma estimamos el número de curva de una cuenca, espero sea de utilizada para
realizar sus modelos lluvia escorrentía o para realizar balance hídrico.

Objetos en R
En términos genéricos, todos los elementos que maneja R son objetos: un valor numérico
es un objeto, un vector es un objeto, una función es un objeto, una base de datos es un
objeto, un gráfico es un objeto.
Para realizar un uso eficiente de R es preciso entender y aprender a manipular bien las
distintas clases de objetos que maneja el programa. En esta sección nos vamos a ocupar
particularmente de aquellos objetos que R utiliza para representar datos: valores, vectores,
matrices, dataframes, series temporales y listas.
R utiliza, de hecho, programación orientada a objetos. Ello significa que una misma
función hace cosas distintas según la clase del objeto que recibe como argumento,
pudiendo incluso no hacer nada (o producir un error) si se le pasan argumentos de una
clase inadecuada.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

A modo de ejemplo, veamos como la función plot() puede mostrar distintos gráficos
según la clase del objeto a representar. Para ello supongamos que el siguiente vector
representa el número de personas atendidas mensualmente en el servicio de urgencias de
un centro de salud durante el pasado año (datos de enero a diciembre):
atendidos <- c(728,632,596,689,745,865,694,583,657,643,794,887)
atendidos
## [1] 728 632 596 689 745 865 694 583 657 643 794 887
class(atendidos)
## [1] "numeric"

La función class() nos devuelve la clase del objeto atendidos, que como vemos
es numeric. Podemos obtener una representación gráfica de este vector simplemente
mediante:

plot(atendidos)

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Ahora convertimos estos datos en serie temporal mediante la función ts(), indicando que
esta serie comienza en enero del año 2009 y que tiene una frecuencia de 12 observaciones
por año (esto es, una por mes):

atendidos2 <- ts(atendidos,frequency=12,start=c(2009,1))


atendidos2
## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2009 728 632 596 689 745 865 694 583 657 643 794 887
class(atendidos2)
## [1] "ts"

Como podemos ver, la clase del objeto atendidos2 es ts (time series). Podemos comprobar
que si aplicamos la misma función plot() a atendidos2, el gráfico obtenido es distinto que
cuando se aplica a atendidos, aún cuando los datos sean exactamente los mismos:

plot(atendidos2)

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

La función plot como muchas otras funciones en R, primero comprueba cuál es la clase del
objeto sobre el que debe actuar, y en función de ello se comporta de una manera u otra.

Tipos básicos de datos


En R (como en otros lenguajes de programación) hay dos clases fundamentales de
datos: numéricos y alfanuméricos (o cadenas, strings en inglés; todo aquello que no sea
un número es una cadena):

x=1
class(x)
## [1] "numeric"
y="a"
class(y)
## [1] "character"

Además de estas dos clases fundamentales R dispone de otras clases más específicas; por
ejemplo integer para números enteros, complex para números complejos, logical para
variables lógicas o matrix para matrices.

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Coerción
En R es posible “forzar” (“coerce”) la conversión de una clase de datos en otra, mediante
comandos de la forma as.class. Por ejemplo:

x="1"
x
## [1] "1"
class(x)
## [1] "character"
y=as.integer(x)
y
## [1] 1
class(y)
## [1] "integer"
z=as.character(y)
z
## [1] "1"
class(z)
## [1] "character"

Vectores numéricos y alfanuméricos


Se pueden agrupar varios elementos de la misma clase para formar un vector mediante el
comando de concatenación c(). La asignación de un nombre de variable a dicho vector se
realiza mediante el símbolo =. Así, podemos guardar las edades de 10 personas de una
muestra en la variable edad mediante:

edad = c(22, 34, 29, 25, 30, 33, 31, 27, 25, 25)
edad
## [1] 22 34 29 25 30 33 31 27 25 25
class(edad)
## [1] "numeric"

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Como comando de asignación de nombres a vectores puede utilizarse además el símbolo <-
:

edad <- c(22, 34, 29, 25, 30, 33, 31, 27, 25, 25)

o también el símbolo -> si bien en este caso debemos invertir la posición del nombre del
vector y sus valores:

c(22, 34, 29, 25, 30, 33, 31, 27, 25, 25) -> edad

Podemos crear vectores alfanuméricos del mismo modo:

letras=c("a","b","c","d","e")
letras
## [1] "a" "b" "c" "d" "e"
class(letras)
## [1] "character"

Si en un vector se combinan elementos de clase numeric y character el vector resultante


es de clase character:

mezcla=c(1,2,3,"a","b","c")
mezcla
## [1] "1" "2" "3" "a" "b" "c"
class(mezcla)
## [1] "character"

Longitud de un vector
La función length() devuelve la longitud (número de elementos) del vector:

x=c(1,4,5,2,4,5,4,3,2,2,3,2,2,4,4,5,5,6,6,7)
length(x)
## [1] 20

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Valores perdidos
Los valores perdidos constituyen una clase particular de dato, que se codifica siempre
como NA independientemente de que la variable sea numérica o alfanumérica. Con carácter
general cualquier operación que involucre a un valor perdido dará como resultado
también NA. A modo de ejemplo, si el vector peso recoge los pesos de 5 personas,
habiéndose perdido el cuarto valor, se codificaría como:

peso=c(77,68,85,NA,73)

Si pretendemos calcular el peso medio, obtenemos como resultado un valor perdido:

mean(peso)
## [1] NA

Si, en cualquier caso, deseamos calcular la media de los pesos efectivamente disponibles,
utilizaríamos la opción eliminar valores perdidos o NA remove que se declara
como na.rm=TRUE:

mean(peso, na.rm=TRUE)
## [1] 75.75

Una segunda clase de valores “perdidos”" en R corresponden a cálculos numéricos cuyos


resultados son indefinidos, como por ejemplo [Math Processing Error]00 o [Math Processing
Error]log(−1). En este caso, el resultado que devuelve R es NaN (Not a Number), que a todos
los efectos es considerado como un valor perdido:

0/0
## [1] NaN
log(-1)
## [1] NaN
x=c(1,2,0)
y=c(2,4,0)
x/y
## [1] 0.5 0.5 NaN

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

Acceso a los componentes de un vector


Es posible acceder al valor que ocupa la posición k dentro de un vector x refiriéndonos a él
como x[k]. Así, podemos ver el contenido del tercer y quinto valores del vector edad:

edad = c(22, 34, 29, 25, 30, 33, 31, 27, 25, 25)
edad[3]
## [1] 29
edad[5]
## [1] 30

o cuál es la cuarta letra de las definidas anteriormente:

letras[4]
## [1] "d"

Podemos acceder también simultáneamente a varios valores dentro de un vector. Por


ejemplo, si deseamos ver del segundo al quinto de los valores observados en la
variable edad:

edad[2:5]
## [1] 34 29 25 30

Y si quisiéramos ver sólo los valores primero, tercero y séptimo:

edad[c(1,3,7)]
## [1] 22 29 31

Selección condicionada de valores de una


variable
La función which() nos da las posiciones, dentro de un vector, de los valores que cumplen
cierta condición. Por ejemplo, si definimos:

edad = c(22, 34, 29, 25, 30, 33, 31, 27, 25, 25)

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

La siguiente función nos devuelve las posiciones de los valores de este vector que son
mayores que 25:

which(edad>25)
## [1] 2 3 5 6 7 8

esto es, los valores del vector edad mayores que 25 son los que ocupan las posiciones 2, 3,
5, 6, 7 y 8.
Podemos asignar estas posiciones a una nueva variable:

mayores25=which(edad>25)

y utilizarla para mostrar cuáles son concretamente esos valores mediante:

edad[mayores25]
## [1] 34 29 30 33 31 27

Esta expresión puede simplificarse; si no utilizamos which() obtenemos exactamente el


mismo resultado:

edad[edad>25]
## [1] 34 29 30 33 31 27

Se puede realizar también la selección de valores de un vector condicionando por los valores
de otro vector. Por ejemplo, si las diez edades del ejemplo anterior corresponden a personas
cuyo sexo viene dado por:

sexo <- c("M","H","H","M","M","H","M","M","H","H")

podríamos seleccionar la edad de las mujeres simplemente mediante:

edad[sexo=="M"]
## [1] 22 25 30 31 27

Si además el tiempo (en minutos) que cada una de estas personas se ha pasado al teléfono
durante el último día es:

tiempo=c(14.21, 10.36, 11.89, 13.81, 12.03, 10.99, 12.48, 13.37, 12.29,


11.92)

podemos seleccionar el sexo de aquellos que han hablado más de 13 minutos diarios
mediante:

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH


INFORMÁTICA
APLICADA

sexo[tiempo>13]
## [1] "M" "M" "M"

BIBLIOGRAFIA

 Arcgis, C. (2018). Calcular numero de curva con Arcgis. Retrieved from


https://www.aguaysig.com/2017/01/calcular-numero-de-curva-con-arcgis.html
 Angelo Santana &amp; Carmen Nieves Hernández, U. (2018). Objetos en R: tipos
básicos de datos. Retrieved from
http://www.dma.ulpgc.es/profesores/personal/stat/cursoR4ULPGC/6a-
Tipos_basicos_de_datos.html

Ing. Carlos Rosero FACULTAD DE CIENCIAS ESPOCH

Vous aimerez peut-être aussi