Sentinel-2 OptimizedVegetation Index
NDVI Processor
El Índice de Vegetación de Diferencia Normalizada (NDVI) es el estándar global para medir la salud de la biomasa mediante sensores remotos.
Fundamentos Técnicos
Sentinel-2 Core
NDVI utiliza la reflectancia diferencial entre las bandas Roja (Red) e Infrarrojo Cercano (NIR). La vegetación sana absorbe la luz roja y refleja fuertemente el NIR.
Banda Requerida 1
B04 (Red)
Longitud de onda central: 665nm. Resolución: 10m.
Banda Requerida 2
B08 (NIR)
Longitud de onda central: 842nm. Resolución: 10m.
Fórmula Matemática
NDVI = (NIR - RED) / (NIR + RED)
Interpretación de Valores
Análisis de Vegetación
0.8 a 1.0Vegetación densa y saludable (Bosques, cultivos maduros)
0.3 a 0.8Vegetación moderada (Arbustos, pastizales)
0.1 a 0.3Suelo desnudo o vegetación estresada
Menor a 0.1Agua, nieve o estructuras artificiales
Implementación
Python SDK / LayerProcessor
Nuestra implementación nativa maneja automáticamente la división por cero y los valores inválidos (NaNs) comunes en bordes de captura:
class NDVIProcessor(LayerProcessor):
@property
def name(self) -> str:
return "ndvi"
@property
def required_bands(self) -> list[str]:
return ["B04", "B08"]
def calculate(self, bands_data: dict) -> np.ndarray:
red = bands_data["B04"]
nir = bands_data["B08"]
# Handle division by zero and NaNs
np.seterr(divide='ignore', invalid='ignore')
ndvi = (nir - red) / (nir + red)
return ndvi