Giter Club home page Giter Club logo

adtree's Introduction




AdTree implements the tree reconstruction method described in the following paper:

Shenglan Du, Roderik Lindenbergh, Hugo Ledoux, Jantien Stoter, and Liangliang Nan.
AdTree: Accurate, Detailed, and Automatic Modelling of Laser-Scanned Trees.
Remote Sensing. 2019, 11(18), 2074.

Please consider citing our paper if you use the code/program (or part of it).

3D Trees reconstructed from point clouds

Build and Run AdTree

Prebuilt executables (for macOS, Linux, and Windows) can be downloaded here.

AdTree depends on some third-party libraries and most dependencies are included in the distribution except Boost. So you will need to have Boost install first.

Note: AdTree uses a stripped earlier version of Easy3D, which is not compatible with the latest version.

You need CMake and of course a compiler to build AdTree:

  • CMake >= 3.1
  • a compiler that supports >= C++17

AdTree has been tested on macOS (Xcode >= 8), Windows (MSVC >=2015), and Linux (GCC >= 4.8, Clang >= 3.3). Machines nowadays typically provide higher supports, so you should be able to build AdTree on almost all platforms.

There are many options to build AdTree. Choose one of the following (or whatever you are familiar with):

  • Option 1: Use any IDE that can directly handle CMakeLists files to open the CMakeLists.txt in the root directory of AdTree. Then you should have obtained a usable project and just build. I recommend using CLion or QtCreator.
  • Option 2: Use CMake to generate project files for your IDE. Then load the project to your IDE and build.
  • Option 3: Use CMake to generate Makefiles and then build.
    • on Linux or macOS:
      $ cd adtree
      $ mkdir Release
      $ cd Release
      $ cmake -DCMAKE_BUILD_TYPE=Release ..
      $ make
      
    • on Windows with Microsoft Visual Studio:
      $ cd adtree
      $ mkdir Release
      $ cd Release
      $ cmake -DCMAKE_BUILD_TYPE=Release ..
      $ msbuild adtree.sln /p:Configuration=Release
      

Don't have any experience with C/C++ programming? Have a look at How to build AdTree step by step.

This demo version provides a user interface with menus. Just clicking on the menus will do all the magic :-)


Data

Some test tree point clouds are provided in the 'data' folder.

Note: When testing on your point clouds, please make sure that:

  • your point cloud represents a single tree (i.e., the tree is segmented out from the background; no ground, no fence...);
  • the tree has an upright orientation (i.e., with Z-axis pointing up).

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License or (at your option) any later version. The full text of the license can be found in the accompanying LICENSE file.


Should you have any questions, comments, or suggestions, please contact us at [email protected]

3D Geoinformation Research Group, TU Delft,

https://3d.bk.tudelft.nl,

Dec. 1, 2019

adtree's People

Contributors

liangliangnan avatar tofull avatar shenglandu avatar zexinyang avatar

Stargazers

Felix Igelbrink avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.