A rough implementation of Layer Stacking, an algorithm developed for segmenting individual trees from a LiDAR point cloud. Note that refinement of parameters for individual forests and point clouds is generally required for meaningful results.
Ayrey, E., Fraver, S., Kershaw Jr, J. A., Kenefic, L. S., Hayes, D., Weiskittel, A. R., & Roth, B. E. (2017). Layer Stacking: A Novel Algorithm for Individual Forest Tree Segmentation from LiDAR Point Clouds. Canadian Journal of Remote Sensing, 1-13.