De un código postal a un mapa vivo del arbolado.
Usé el código postal 07042, en New Jersey, como punto de partida para convertir imágenes aéreas y satelitales en resultados georreferenciados. El proyecto localiza candidatos de árbol, estudia la estacionalidad de la copa y combina esa señal con el clima diario para estimar cómo cambia la carga de hojas a lo largo del otoño.

Una consulta territorial convertida en cuatro salidas utilizables.
El análisis produjo una imagen anotada para inspección visual, un GeoJSON con las cajas georreferenciadas, un CSV de coordenadas y un resumen de ejecución. De 4.312 propuestas iniciales, el filtro conservó 1.986 candidatos con suficiente señal de vegetación y descartó 2.326 detecciones durante el control de calidad.
Conservar la geografía después de inferir en píxeles.
Adquirir el raster
El flujo trabaja con un mosaico NAIP de aproximadamente 0,87 metros por píxel para el área definida por el código postal 07042.
Detectar por teselas
DeepForest procesa parches de 800 píxeles con 25% de solapamiento para reducir pérdidas donde una copa cruza el borde.
Transformar coordenadas
Rasterio convierte xmin, ymin, xmax e ymax desde píxeles al CRS del GeoTIFF. GeoPandas reproyecta el resultado a WGS84.
Exportar e inspeccionar
El prototipo escribe un GeoJSON de cajas, un CSV de coordenadas y una imagen con cada resultado dibujado sobre el territorio.
La detección es solo la primera capa del análisis.
El primer desafío fue hacer compatible un detector de copas con un raster urbano de gran tamaño sin perder posición geográfica. El mosaico de 4.733 × 5.312 píxeles se divide en teselas de 800 píxeles con 25% de solapamiento. Esa superposición evita que una copa desaparezca por quedar partida justo en el borde de dos ventanas. Luego, las cajas repetidas se consolidan antes de volver al sistema de coordenadas del archivo.
La imagen NAIP tiene cuatro bandas. Además de RGB, la banda infrarroja cercana permite calcular NDVI y sumar evidencia independiente de vegetación. Cada propuesta recibe confianza del modelo, mediana y percentil 75 de NDVI, fracción de píxeles vegetados y fracción de datos válidos. Con umbrales explícitos, el pipeline conserva las detecciones más consistentes y registra por qué se rechaza cada una. En 07042, ese control redujo 4.312 propuestas a 1.986 candidatos respaldados por señal vegetal.
El resultado no termina en una imagen bonita. La transformación affine del GeoTIFF lleva cada caja de píxeles a coordenadas reales; GeoPandas la convierte en geometría y la reproyecta a WGS84. Así, la misma detección puede verse sobre la fotografía, abrirse en QGIS, cruzarse con calles o parcelas y exportarse como GeoJSON o CSV.
Una herramienta pequeña con responsabilidades separadas.
DeepForest como punto de partida
El script integra weecology/deepforest-tree para llevar un detector especializado a un flujo geoespacial propio.
Georreferencia preservada
La transformación se lee del archivo de entrada, de modo que cada caja vuelve al espacio geográfico en lugar de quedar atrapada en coordenadas de imagen.
GeoJSON interoperable
Las cajas se guardan como polígonos con score y CRS normalizado, listos para explorar y revisar en QGIS.
Imagen anotada
OpenCV dibuja rectángulos y puntajes de confianza sobre el raster para revisar rápidamente cómo respondió el detector.
Trabajo por bloques
El tileado divide rasters grandes en unidades manejables y abre una ruta directa hacia procesamiento con GPU.
De una detección a un mapa
La salida combina ubicación, geometría y confianza para que cada objeto pueda filtrarse, visualizarse y conectarse con otros datos territoriales.
Pasar de “dónde hay árboles” a “cómo cambia su copa durante el año”.
La segunda parte del proyecto compara observaciones de momentos distintos. Para una consulta por código postal, el sistema obtiene el límite geográfico de Census TIGERweb, usa ESA WorldCover como máscara inicial de arbolado y busca escenas Sentinel-2 L2A con poca nubosidad. En el hemisferio norte toma una ventana sin hojas entre enero y marzo, una ventana con hojas entre julio y agosto y una tercera observación cercana a la fecha elegida.
La diferencia estacional de NDVI ayuda a separar señales compatibles con vegetación caducifolia y perenne. Cuando también hay LiDAR, la altura de copa, la penetración de retornos y la forma de la corona agregan otra perspectiva. En la ejecución detallada de New Jersey, doce archivos LiDAR cubrieron 98,6% del área y produjeron 20.987 coronas provisionales: 2.930 quedaron inclinadas a caducifolias, 2.929 a perennes y 15.128 en una zona intermedia. Mantener esa categoría intermedia hace que el mapa exprese la fuerza real de la evidencia.
Verano como referencia
Las escenas de julio y agosto muestran el vigor máximo de la vegetación y establecen la señal de copa con hojas.
Invierno como contraste
Las escenas de enero a marzo permiten observar qué parte de esa señal se conserva y cuál cae con la estación.
Una consulta situada en el tiempo
La tercera ventana conecta el patrón estacional con el día que se quiere analizar, en lugar de devolver una clasificación estática.
El calendario aporta contexto; el tiempo diario mueve la simulación.
El modelo recorre cada día desde el comienzo de la temporada otoñal hasta la fecha elegida. La duración del día y el frío acumulado controlan la senescencia; la temperatura media y mínima, la humedad y la lluvia de los catorce días previos modifican el estrés; el viento, las ráfagas, la lluvia y las heladas influyen en el desprendimiento. La dirección meteorológica se transforma para estimar hacia dónde se desplaza el material una vez que deja la copa.
Dentro de cada celda de 100 metros, el sistema sigue cinco estados: copa verde adherida, copa senescente adherida, caída nueva, carga presente en el suelo y material removido, degradado o desplazado fuera del área. El usuario puede elegir código postal, fecha, tamaño de celda y una vida media de limpieza. Los datos diarios llegan de Open-Meteo y quedan en caché para repetir una consulta sin volver a descargar todo.
Para 07042 y el 15 de noviembre de 2025, la corrida histórica comenzó el 1 de agosto. El índice encontró el mayor pulso de caída y la mayor carga estimada sobre el suelo el 13 de octubre. Ese día acumulaba 47,9% del ciclo de caída y un equivalente espacial máximo de 1,42 millones de m²; para el 15 de noviembre, el acumulado llegaba a 97,2% y la carga presente había bajado a unos 554.000 m² por limpieza, dispersión y degradación.
Convertir el contexto ambiental en una señal para planificación y creatividad.
Al estar organizado por lugar y fecha, el resultado puede integrarse en decisiones de comunicación que dependan del entorno. Una marca de jardinería, herramientas, limpieza exterior, seguros, movilidad o servicios para el hogar podría identificar zonas y semanas donde la caída de hojas tiene mayor relevancia, adaptar el mensaje a ese momento y coordinar la pauta con condiciones observables.
Priorizar mercados por señal
Los códigos postales pueden compararse por superficie arbolada, componente caducifolio y progresión estacional para decidir dónde una campaña tiene más contexto.
Elegir el momento creativo
La serie diaria permite alinear mensajes sobre limpieza, mantenimiento, jardín o conducción con el ascenso, pico y descenso de la carga foliar.
Traducir datos a una pieza local
El estado de la temporada puede alimentar variantes creativas por ciudad: anticipación antes del pico, respuesta durante la caída y mantenimiento después.
Entender el entorno físico
Al cruzar celdas con calles, parcelas o ubicaciones publicitarias se puede añadir contexto ambiental a la selección de soportes.
Comparar hipótesis
Las salidas históricas permiten estudiar si clima, estacionalidad y respuesta comercial se mueven juntos en distintos mercados.
Planificar recursos
El mismo mapa también ayuda a ordenar inspecciones, mantenimiento urbano o recorridos de servicio antes de convertir el hallazgo en comunicación.
Un sistema que puede consultarse, repetirse y ampliar su escala.
- Interfaz por código postal: una consulta recibe ubicación, fecha, tamaño de grilla y ritmo de limpieza, y devuelve mapa, evolución temporal, clima y descargas.
- Dos niveles de detalle: NAIP y LiDAR permiten estudiar coronas individuales donde existen; Sentinel-2 y WorldCover hacen posible una lectura territorial para nuevos códigos postales.
- Reproducción histórica: el clima guardado permite volver a una fecha y entender qué factores empujaron el cambio diario.
- Salidas interoperables: los resultados viajan como imagen, CSV, GeoJSON, GeoTIFF y JSON para integrarse con mapas, dashboards o análisis posteriores.
- Arquitectura extensible: las fuentes, el modelo de caída y la capa de presentación están separadas para poder ajustar una parte sin rehacer el resto.