Sentinel-2 OptimizedHydration / Stress
NDMI Processor
El Índice de Humedad de Diferencia Normalizada (NDMI) se utiliza para monitorear el contenido de agua en la vegetación y el estrés hídrico en los cultivos.
Fundamentos Técnicos
Sentinel-2 Core
NDMI correlaciona la reflectancia del Infrarrojo Cercano (NIR) con el Infrarrojo de Onda Corta (SWIR). El SWIR es altamente sensible a la absorción de agua en el tejido foliar.
Banda Requerida 1
B08 (NIR)
Resolución: 10m.
Banda Requerida 2
B11 (SWIR-1)
Resolución: 20m.
Fórmula Matemática
NDMI = (NIR - SWIR) / (NIR + SWIR)
Interpretación de Humedad
Contenido de Agua en Dosel
0.4 a 1.0Contenido de agua alto (Sin estrés hídrico)
0.0 a 0.4Contenido de agua moderado-bajo (Estrés ligero)
-0.2 a 0.0Estrés hídrico severo / Vegetación seca
Menor a -0.2Suelo desnudo o áreas muy secas
Implementación
Python SDK / LayerProcessor
El procesador NDMI es esencial para la agricultura de precisión y la detección de riesgos de incendio:
class NDMIProcessor(LayerProcessor):
"""
Normalized Difference Moisture Index (NDMI).
Used to monitor vegetation water content and plant stress.
NDMI = (NIR - SWIR) / (NIR + SWIR) -> (B08 - B11)
"""
@property
def name(self) -> str:
return "ndmi"
@property
def required_bands(self) -> list[str]:
return ["B08", "B11"]
def calculate(self, bands_data: dict) -> np.ndarray:
nir = bands_data["B08"]
swir = bands_data["B11"]
np.seterr(divide='ignore', invalid='ignore')
ndmi = (nir - swir) / (nir + swir)
return ndmi