Views
No views yet
HistGradientBoostingClassifier (scikit-learn) that labels each 30 m Sentinel-2 pixel as canopy or not, trained on 656 hand-labeled high-resolution pixels. It is the source of every figure on the site: the map, the per-LGU and per-barangay series, and the headline NCR canopy percentage (about 9 to 10 percent).ndvi, dw (Dynamic World tree probability), meta_h (Meta v2 1 m canopy height), esatree (ESA WorldCover tree class), the raw Sentinel-2 bands red / nir / green / blue, plus gndvi and nir_red. Decision threshold 0.5, calibrated so 2021 matches the 10.1 percent human-truth canopy.| Model | Precision | Recall | F1 | IoU |
|---|---|---|---|---|
| This classifier (10 features) | 0.77 | 0.79 | 0.78 | 0.64 |
| Four-feature model (no spectral bands) | - | - | 0.75 | - |
| NDVI > 0.62 baseline | 0.69 | 0.67 | 0.68 | 0.52 |
canopy_clf.joblib - the trained classifiercanopy_clf_meta.json - features, threshold, training sizemaster_labels.csv - the 656 gold labelsmodel_comparison.json - the ablation it was selected fromRESULTS.md - the build writeup