{"id":2190,"date":"2026-05-27T14:54:34","date_gmt":"2026-05-27T13:54:34","guid":{"rendered":"https:\/\/jenacopterlabs.de\/?p=2190"},"modified":"2026-05-27T17:06:55","modified_gmt":"2026-05-27T16:06:55","slug":"the-deciduous-tree-crown-segmentation-challenge","status":"publish","type":"post","link":"https:\/\/jenacopterlabs.de\/?p=2190","title":{"rendered":"The Deciduous Tree Crown Segmentation Challenge"},"content":{"rendered":"<p class=\"p1\">Deciduous tree crown segmentation is widely recognized as a particularly challenging task. While various approaches for conifer crown delineation have proven successful, their transferability to deciduous forest stands remains limited. Accurate crown segmentation constitutes a critical prerequisite for assessing the vitality of individual deciduous trees based on spectral or structural metrics. In particular, in dense deciduous stands characterized by closed canopy cover, methods relying on local height maxima of the canopy surface model (e.g., local maxima and region-growing approaches) or template-matching techniques have shown only limited success.<\/p>\n<p class=\"p1\">More effective concepts published for TLS, MLS and UAV based LiDAR data are based on a bottom-up strategy, originating from the stem base rather than following a top-down approach initiated from canopy height maxima. Such methods require both leaf-off and leaf-on acquisitions of the deciduous stands, or TLS measurements with clearly detectable stem bases in the LiDAR dataset.<\/p>\n<p class=\"p1\">Within the Park3D project, all park areas were surveyed using UAV-based LiDAR (DJI L2 LiDAR) with approx 800 pnts\/sqm under both leaf-on and leaf-off conditions. The resulting point clouds were systematically processed to the canopy height model (CHM) level.<\/p>\n<p class=\"p1\">For crown delineation in in the historical park regions of Park3D, a procedure was developed that automatically detects crown stem-bases by point density\/cluster properties and subsequently reconstructs the three-dimensional branch architecture up to the crown periphery using a voxel-based approach. Crown segments are then generated on the basis of the reconstructed branch structure. The approach is comparable to that implemented by <em>Trochta et al. 2017<\/em> im 3D Forest software for TLS data but mainly relies on voxel descriptions. Every Voxel is a node in a graph, edge search is fully controlled by a set of transparent control variables. The concept is controlled by 1. the possible crown diameter range and tree height range (this excludes very small trees below 5m f.e. and crowns below 9 sqm area), 2. the stem diameter range, 3. delta height calculations for stand gap detection (avoids growing of crowns into stand gaps), 4. minimum point density for tree detection (a filtering step, the pipeline avoids very low point density trees to be included) and 5. maximum horizontal stem-to-tree-crown height-max distance (this excludes trees with tops far away horizontally from the stem position). The resulting crown segmentation and individual tree point cloud files could directly be included in quantitative tree structure models (QSM).<\/p>\n<p class=\"p2\">The full workflow is implemented in R\/Python with Metal GPU support using PyTorch MPS (Metal Performance Shaders), reticulate, future.apply, parallelly (lidR, sf, terra, DBSCAN, NumPy, Scipy, Torch, MPS) on Apples M4Max architecture (16 Cores: 12P + 4E, 128 GB RAM),<\/p>\n<p class=\"p2\">Larger datasets create a &#8220;vector memory exhausted&#8221; error. For larger datasets a tile wrapper is used (lidR clip_rectangle with overlap) that tiles into multiple overlapping tile-sets and always neglects stems in the respective buffer zone. The tile management starts parallel tile processing instead of sequential tile processing and effectively uses the full hardware processing power.<\/p>\n<ol>\n<li>Wrapper for tiles generation (no. of points versus memory),<\/li>\n<li>import of leaf-on and leaf-off CHM point cloud datasets,<\/li>\n<li>estimation of stem coordinates at breast height (by density),<\/li>\n<li>voxelation of the point cloud,<\/li>\n<li>neighborhood graph analysis using Dijkstra algorithm for every voxel from stem positions,<\/li>\n<li>export of shapefile polygons, individual LAS files per tree, and voxel-based 3D PLY models,<\/li>\n<li>automatic export of stand-level analytics based on voxel-derived metrics, including frequency analysis of tree height, DBH, crown diameter versus height relationships, voxel sum volume, and the spatial (horizontal) distance between treetop coordinates and stem coordinates.<\/li>\n<\/ol>\n<p class=\"p1\">Compared to conventional top-down approaches, this concept provides a highly reliable individual tree delineation within the full point cloud and enables fully automated segmentation into individual tree point cloud files using fused leaf-on\/off datasets. The approach is fully structural based and does not rely on deep learning with external training tree objects. However, since the pipeline is mainly leaf-off based the crown extends and volume are usually underestimated.<\/p>\n<figure id=\"attachment_2194\" aria-describedby=\"caption-attachment-2194\" style=\"width: 1032px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2194 size-full\" src=\"http:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Stem-Crown-From-Voxel-BottomUp.png\" alt=\"Tree Segmentation using Bottom-Up Voxel Segmentation\" width=\"1032\" height=\"1092\" srcset=\"https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Stem-Crown-From-Voxel-BottomUp.png 1032w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Stem-Crown-From-Voxel-BottomUp-284x300.png 284w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Stem-Crown-From-Voxel-BottomUp-968x1024.png 968w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Stem-Crown-From-Voxel-BottomUp-768x813.png 768w\" sizes=\"auto, (max-width: 1032px) 100vw, 1032px\" \/><figcaption id=\"caption-attachment-2194\" class=\"wp-caption-text\">Fig. 1: Testsite with deciduous tree crown segmentation using a Bottom-Up Voxel Segmentation approach starting from stems (point signature size from BHD values) and creating branch based crown delineations (Park3D project). Color coding from random ID coloring.<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<figure id=\"attachment_2197\" aria-describedby=\"caption-attachment-2197\" style=\"width: 1200px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2197\" src=\"http:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Voxel-Point-Structure_from_BottomUpSegmentation.png\" alt=\"\" width=\"1200\" height=\"809\" srcset=\"https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Voxel-Point-Structure_from_BottomUpSegmentation.png 2348w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Voxel-Point-Structure_from_BottomUpSegmentation-300x202.png 300w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Voxel-Point-Structure_from_BottomUpSegmentation-1024x690.png 1024w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Voxel-Point-Structure_from_BottomUpSegmentation-768x517.png 768w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Voxel-Point-Structure_from_BottomUpSegmentation-1536x1035.png 1536w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-Voxel-Point-Structure_from_BottomUpSegmentation-2048x1380.png 2048w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><figcaption id=\"caption-attachment-2197\" class=\"wp-caption-text\">Fig. 2: Buttom-Up tree crown segmentation results using stem positions, voxel graph representations and derived crown polygons (visualization in CloudCompare with random color attribution to tree IDs). Shown are the voxel center coordinates as points colored for each tree.<\/figcaption><\/figure>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2201\" src=\"http:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-voxels-bottomup-nogrd-shader.png\" alt=\"\" width=\"2380\" height=\"1596\" srcset=\"https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-voxels-bottomup-nogrd-shader.png 2380w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-voxels-bottomup-nogrd-shader-300x201.png 300w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-voxels-bottomup-nogrd-shader-1024x687.png 1024w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-voxels-bottomup-nogrd-shader-768x515.png 768w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-voxels-bottomup-nogrd-shader-1536x1030.png 1536w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/GP-voxels-bottomup-nogrd-shader-2048x1373.png 2048w\" sizes=\"auto, (max-width: 2380px) 100vw, 2380px\" \/><\/p>\n<p>Fig. 3: Buttom-Up tree crown segmentation results using stem positions &#8211; including shader visualization and ground height removed.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2210\" src=\"http:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-scaled.png\" alt=\"\" width=\"2560\" height=\"1377\" srcset=\"https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-scaled.png 2560w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-300x161.png 300w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-1024x551.png 1024w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-768x413.png 768w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-1536x826.png 1536w, https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-2048x1102.png 2048w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><\/p>\n<p>Fig. 4: Full Park Sanssouci area &#8211; segmented into individual tree objects (15306 trees) using a voxel based bottom-up approach (buildings were filtered out using a building mask &#8211; no automatic building detection).<\/p>\n<p class=\"p1\">The next logical step is the reconstruction of quantitative structural tree models (QSMs) from the segmented crowns. Applying <span class=\"s1\">TreeQSM<\/span> to these UAV-derived point clouds will remain challenging due to the substantially lower point density and increased occlusion compared with terrestrial laser scanning (TLS) data. Nevertheless, integrating QSM-based reconstruction represents a crucial methodological advancement for this type of dataset.<\/p>\n<p class=\"p1\">Even under reduced geometric completeness, QSM approaches may enable the extraction of biologically and ecologically relevant structural descriptors such as branch length distributions, branching topology, crown dimensionality, volume allocation and structural complexity metrics. Especially 3D topolgy-aware metrics and mechanistic structure-function relationships are very strong justifications for this approach both in ecology and forestry. These parameters could substantially improve the detection and quantification of crown vitality, drought stress responses, biomechanical adaptation, and early decline processes in deciduous trees.<\/p>\n<p>R-Libs: lidR: LAS-I\/O, Kronendachmodellrasterung (Roussel et al.). sf: Shapefile-Export, r\u00e4umliche Operationen (Pebesma 2018). terra: Rasteroperationen und L\u00fcckenmaske (Hijmans 2024). data.table: hochperformante tabellarische Operationen und Voxel-Indexierung (Dowle &amp; Srinivasan). dbscan: DBSCAN-Clustering und Fixed-Radius-Nachbarsuche (Hahsler et al.). concaveman: Konkave-H\u00fcll-Polygone (Mapbox-Implementierung). reticulate: R-Python-Schnittstelle (Ushey et al.). future und future.apply: parallelisierte Berechnungen.<\/p>\n<p>Python-Module: numpy: Array-Operationen. scipy: cKDTree f\u00fcr 3D-Nachbarschaftssuche, sparse CSR-Matrix f\u00fcr den Graphen, torch: Metal Performance Shaders (MPS) GPU-Beschleunigung auf Apple Silicon.<\/p>\n<p>Algorithms: DBSCAN: Ester, M., Kriegel, H.-P., Sander, J. &amp; Xu, X. (1996). K\u00e5sa-Kreisfit: K\u00e5sa, I. (1976). Multi-Source Dijkstra: Dijkstra, E. W. (1959), Multi-Source-Variante mit Python heapq auf scipy.sparse CSR-Graphen. Concaveman: Park, J.-S. &amp; Oh, S.-J. (2012). p2r-Rasterisierung: Point-to-Raster via lidR.<\/p>\n<p class=\"p1\">Jan Trochta, Martin Krcek, Tomas Vrska, and Kamil Kral, 2017. 3D Forest: An application for descriptions of three-dimensional forest structures using terrestrial LiDAR. PloS one, 12(5):e0176871, 2017. doi: https:\/\/doi.org\/10.1371\/journal.pone.0176871.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Deciduous tree crown segmentation is widely recognized as a particularly challenging task. While various approaches for conifer crown delineation have proven successful, their transferability to deciduous forest stands remains limited. Accurate crown segmentation constitutes a critical prerequisite for assessing the vitality of individual deciduous trees based on spectral or structural metrics. In particular, in dense deciduous stands characterized by closed&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":2210,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","footnotes":""},"categories":[101,93,96,5,1],"tags":[75,47,94,98,9],"class_list":["post-2190","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-l2","category-lidar","category-park3d","category-point-clouds","category-uncategorized","tag-3d-point-clouds","tag-buchensterben","tag-lidar","tag-park3d","tag-point-cloud"],"uagb_featured_image_src":{"full":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-scaled.png",2560,1377,false],"thumbnail":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-150x150.png",150,150,true],"medium":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-300x161.png",300,161,true],"medium_large":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-768x413.png",680,366,true],"large":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-1024x551.png",680,366,true],"1536x1536":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-1536x826.png",1536,826,true],"2048x2048":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-2048x1102.png",2048,1102,true],"post-thumbnail":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-500x250.png",500,250,true],"cd-small":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-150x150.png",150,150,true],"cd-medium":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-500x250.png",500,250,true],"cd-standard":["https:\/\/jenacopterlabs.de\/wp-content\/uploads\/2026\/05\/SS-TreeITCD-500x500.png",500,500,true]},"uagb_author_info":{"display_name":"S\u00f6ren Hese","author_link":"https:\/\/jenacopterlabs.de\/?author=1"},"uagb_comment_info":0,"uagb_excerpt":"Deciduous tree crown segmentation is widely recognized as a particularly challenging task. While various approaches for conifer crown delineation have proven successful, their transferability to deciduous forest stands remains limited. Accurate crown segmentation constitutes a critical prerequisite for assessing the vitality of individual deciduous trees based on spectral or structural metrics. In particular, in dense&hellip;","_links":{"self":[{"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=\/wp\/v2\/posts\/2190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2190"}],"version-history":[{"count":20,"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=\/wp\/v2\/posts\/2190\/revisions"}],"predecessor-version":[{"id":2215,"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=\/wp\/v2\/posts\/2190\/revisions\/2215"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=\/wp\/v2\/media\/2210"}],"wp:attachment":[{"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jenacopterlabs.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}