|
Download spatial_serving/README.md from RAI-Lab/Wildfire-FM: direct link, hf CLI and curl.
- Browser
- Download file 3.4 kB
-
https://huggingface.co/RAI-Lab/Wildfire-FM/resolve/refs%2Fpr%2F2/spatial_serving/README.md
- Command line
-
hf download hf://RAI-Lab/Wildfire-FM@refs/pr/2/spatial_serving/README.md
-
curl -L -o README.md https://huggingface.co/RAI-Lab/Wildfire-FM/resolve/refs%2Fpr%2F2/spatial_serving/README.md
3.4 kB
| # Spatial Serving for Custom Granularity Outputs | |
| FireWx-FM is trained as a gridded wildfire occupancy model. The released | |
| checkpoint predicts a probability map on the 5 km California EPSG:5070 grid. For | |
| web and client use, the same output can be served at any polygon-defined | |
| granularity by adding a spatial aggregation layer. County and sub-county views | |
| are examples, not fixed limits. | |
| This folder provides that serving layer. It does not change the checkpoint and | |
| does not retrain the model. It converts one gridded probability map into polygon | |
| summaries such as mean probability, maximum probability, 90th percentile | |
| probability, and area fraction above a threshold. | |
| ## Why this supports custom granularity | |
| The model output is spatially gridded, not tied to administrative boundaries. | |
| Any polygon boundary that overlaps the grid can be used as a serving unit: | |
| | Serving unit | Input boundary file | Output | | |
| |---|---|---| | |
| | County or parish | County/parish polygons | One risk summary per polygon | | |
| | Sub-county | Census tract, block group, fire district, or local administrative polygons | One risk summary per polygon | | |
| | Custom granularity | User-provided GeoJSON/GPKG polygon layer | One risk summary per polygon | | |
| For areas smaller than one native grid cell, the output should be interpreted as | |
| a grid-informed area summary rather than a new high-resolution forecast. The | |
| recommended web behavior is to show the polygon summary together with the native | |
| grid resolution. | |
| ## Expected probability input | |
| The adapter expects an `.npz` file with: | |
| ```text | |
| prob [y, x] or [1, y, x] FireWx-FM probability map | |
| lat [y] EPSG:5070 y-coordinate centers | |
| lon [x] EPSG:5070 x-coordinate centers | |
| ``` | |
| The names can be changed with CLI flags if an inference pipeline writes | |
| different array names. | |
| ## Command line | |
| ```bash | |
| python spatial_serving/grid_to_polygons.py \ | |
| --probability-npz ./outputs/firewx_probability_2024-10-01T00.npz \ | |
| --polygons ./boundaries/california_counties.geojson \ | |
| --id-column GEOID \ | |
| --output ./outputs/firewx_county_summary.geojson | |
| ``` | |
| For custom granularity, pass any polygon file that defines the desired serving | |
| units: | |
| ```bash | |
| python spatial_serving/grid_to_polygons.py \ | |
| --probability-npz ./outputs/firewx_probability_2024-10-01T00.npz \ | |
| --polygons ./boundaries/custom_serving_units.gpkg \ | |
| --id-column unit_id \ | |
| --output ./outputs/firewx_custom_granularity_summary.geojson | |
| ``` | |
| ## Output fields | |
| | Field | Meaning | | |
| |---|---| | |
| | `cell_count` | Number of overlapping native grid cells | | |
| | `firewx_prob_mean` | Mean probability over overlapping cells | | |
| | `firewx_prob_max` | Maximum probability over overlapping cells | | |
| | `firewx_prob_p90` | 90th percentile probability over overlapping cells | | |
| | `firewx_area_fraction_ge_threshold` | Fraction of cells above the threshold | | |
| The output can be `.geojson`, `.gpkg`, or `.csv`. GeoJSON/GPKG retain polygon | |
| geometry for direct web-map use. | |
| ## Suggested web migration contract | |
| 1. Run FireWx-FM inference on the native grid. | |
| 2. Save the probability map with native grid coordinates. | |
| 3. Aggregate to the requested polygon boundary using this adapter. | |
| 4. Display both the requested serving granularity and the native grid resolution. | |
| This keeps the model contract stable while allowing the webpage to expose | |
| custom spatial granularities chosen by the user or application. | |