weecology/neon-tree-crowns-dta
NEON Tree Crowns — DTA edition A unified, species-labeled tree-crown polygon set covering 38 NEON sites, combining algorithmic crowns from the DeepTreeAttention (DTA) pipeline with hand-annotated bounding boxes and polygons curated by the Weecology lab. rows 41,738 crowns individuals 39,702 unique trees species 234 (NEON taxonID) sites 38 NEON sites format single GeoPackage (neon_crowns_dta.gpkg) CRS EPSG:4326 (WGS84). Native UTM zone in crs_epsg.… See the full description on the dataset page: https://huggingface.co/datasets/weecology/neon-tree-crowns-dta.
NEON Tree Crowns — DTA edition
A unified, species-labeled tree-crown polygon set covering 38 NEON sites, combining algorithmic crowns from the DeepTreeAttention (DTA) pipeline with hand-annotated bounding boxes and polygons curated by the Weecology lab.
Quickstart
from neoncrops.fetch_crowns import fetch_crowns
gdf = fetch_crowns() # downloads + caches the gpkg, returns a GeoDataFrameWhere the crowns come from
Crowns in this dataset come from two complementary sources, recorded in the crown_source column. Most of the dataset (about 81%) is algorithmic: the DTA pipeline ran DeepForest tree detection on NEON RGB imagery and matched each detection to a NEON Vegetation Structure (VST) stem record to attach a species label. When no detection matched a known stem, the pipeline falls back to a small square around the stem's surveyed location so the tree is not lost. The remaining 19% are crowns that humans drew by hand on the same imagery: some as axis-aligned bounding boxes (hand_bbox), and a smaller set as careful polygon outlines repeated across multiple years (hand_polygon).
The data_source column records the originating sub-dataset within each group (ForestGEO, neon, IFAS, clark, megaplot, arboretum, townsend, fricker, hand_annotated).
Hand-annotated crowns: the recommended evaluation set
The 7,946 hand-annotated rows (crown_source IN ('hand_bbox', 'hand_polygon')) are the highest-quality crowns in the dataset. A human looked at every one of them on the imagery, so they are not subject to the detection mistakes, mismatches, or buffer approximations that the algorithmic crowns can have. Most users should treat them as the held-out evaluation set:
- Train on `algorithmic`, evaluate on
hand_*. - The
hand_polygonsubset is multi-temporal (mean ~3.3 years per individual, up to 5 years), which makes it useful for testing temporal generalization. - Reserve
hand_bboxif your task only needs bounding boxes, or use both.
gdf = fetch_crowns()
train = gdf[gdf["crown_source"] == "algorithmic"]
eval_set = gdf[gdf["crown_source"].isin(["hand_bbox", "hand_polygon"])]Schema
Species harmonization
taxonID values were harmonized using a 25-rule mapping (subspecies merges, numbering variants, mixed-suffix fixes) and 4 exclusion rules (FRAXI, ULMUS, LARIX, 2PLANT). The original code is preserved in taxonID_original. Mapping table: `harmonization/suggested_mappings.csv`.
How rows from different sources were combined
When the same individual appeared in both algorithmic and hand sources, the hand annotation wins (the algorithmic row was dropped). When an individual appeared in both hand_bbox and hand_polygon for the same year, the polygon row wins (621 bbox rows dropped this way). 1 malformed bbox row with individual='v' and missing taxonID was excluded, along with 2 IFAS crowns at OSBS whose source polygons covered more than 1,000 m².
Known limitations
- Polygon crowns are multi-temporal (mean ~3.3 years per individual, max 5); algorithmic and bbox crowns are single-year.
detection_yearis missing for the 1,537 IFAS crowns.scientificNameis only populated for hand crowns; resolve viataxonIDfor algorithmic crowns.- Geometries are stored in WGS84 for portability. Convert to the per-site UTM zone (
crs_epsg) before computing distances or areas in meters.
Citation
If you use this dataset, please cite the DeepTreeAttention paper that the algorithmic crowns derive from:
Weinstein, B. G., Marconi, S., Zare, A., Bohlman, S. A., Singh, A., Graves, S. J., ... & White, E. P. (2024). Individual canopy tree species maps for the National Ecological Observatory Network. PLoS Biology, 22(7), e3002700. https://doi.org/10.1371/journal.pbio.3002700
Please also acknowledge the National Ecological Observatory Network for the underlying RGB imagery and Vegetation Structure (VST) field data.
License
Released under CC-BY-4.0. Underlying NEON imagery and field data are CC-BY-4.0 from the National Ecological Observatory Network.
