Git Product home page Git Product logo

lidar2hemi's Introduction

Lidar2Hemi

Creating synthetic hemispherical images from LiDAR point cloud data

% DESCRIPTION

This Matlab scripts creates synthethic hemispherical images from high-resolution LiDAR point cloud data of forest canopy. The script relates to research published as

D. Moeser, J. Roubinek, P. Schleppi, F. Morsdorf, T. Jonas;
Canopy closure, LAI and radiation transfer from airborne LiDAR
synthetic images; 2014; Agricultural and Forest Meteorology;
doi: 10.1016/j.agrformet.2014.06.008

The script comes along with a demonstration dataset which is provided for the purpose of testing the script's functionality. Adaptations might become necessary as you apply this script to other datasets. Comments in the script may guide you through possible adaptations.

Note further that this script has been developed for aerial LiDAR data flown with a point density of approx 36pt/m2. Applications to LiDAR data from terrestrial scanning and/or with significantly different point densities may require other methodology.

% SETUP REQUIRED TO RUN THIS SCRIPT

Matlab base version 7.0 or higher. As far as we are aware of no additional toolbox is needed. Add parent folder Lidar2Hemi to the Matlab path, or run script from the very folder.

% GETTING STARTED

  1. copy entire folder/file system to a local directory 'Lidar2Hemi'
  2. open Lidar2Hemi.m in your Matlab editor, specify the full path of your local directory as the base folder in line 98, then save Lidar2Hemi.m
  3. set Matlab path to include the base folder and all subfolders
  4. unzip demo las files within folder DSM_Data, adding the two files 'dsm_laret_low.las' and 'ndsm_laret_low.las'
  5. run Lidar2Hemi from the command line

% IMPLEMENTATION

by Tobias Jonas with input from David Moeser*, Clare Webster*,
Gulia Mazzotti*, Johanna Malle*, and Felix Morsdorf**

*WSL Institute for Snow and Avalanche Research SLF Davos, Switzerland

**University of Zurich, Department of Geography Zurich, Switzerland

% VERSION / LAST CHANGES

v2.6 / 2019-06-24 / by TJ

% DATA REQUIREMENTS

DSM/DTM/DEM. For this script we need all three; the DSM representing the surfsce including trees and the DTM representing the underlying terrain, both LiDAR-based point-cloud data of the area of interest; and the DEM describing the surrounding topography in a gridded representation.

DSM data. Expected in the standard LAS format, or the Matlab equivalent of las files, i.e. the LASM format. The LAS format is a public file format for the interchange of 3-dimensional point cloud data. The LAS format is defined by the American Society for Photogrammetry and Remote Sensing (ASPRS). Please refer to their webpage for more information http://www.asprs.org/Committee-General/LASer-LAS-File-Format-Exchange-Activities.html. All data parsed through this script as well as the demonstration dataset use LAS 1.4. Compatibility with other versions of LAS cannot be guaranteed. The LAS reader and affiliated files utilized here are from Dr. Felix Morsdorf within the Remote Sensing Laboratories of the University of Zürich. Of note, it is possible to use other LAS readers as long as the output remains uniform to the below example and there is access to the X, Y, Z data. Note that this scripts can also handle nDSM data instead of DSM data, which is a differential representation of DSM where nDSM = DSM-DTM

DTM data. Is either expected in LAS format, in LASM format, or can alternatively be provided as a list of point data. This list must consist of 3 columns for easting, northing, elevation and be saved in a text format. Note, the DTM data should not contain discontinous data (e.g. canopy data misclassified as ground returns). If necessary, filter/smooth DTM data prior to using it here as input.

DEM data. Is expected in standard ascii grid format, see the example in the demonstration dataset for more information.

Evaluation points Evaluation points are coordinates for which synthethic hemispherical images are to be calculated. These points are defined from a list of point data. This list must consist of 2 columns for easting and northing and be saved in a text format.

Note: all above datasets must feature data in the same coordinate system (true coordinates). The demonstration dataset features data in the SwissGrid coordinate syste CH1903/LV03.

% OUTPUT

this script will generate a synthethic hemispherical image per coordinate. The images are saved according to type/format/color settings specified in the user settings below.

% USAGE

adapt user settings as necessary, run Lidar2Hemi from the command line of Matlab

% ADVISE

this script uses screenshots to save images, be advised to not interfere with the computer (run other applications, use the mouse, click to other windows, etc.) while excecuting this script, even though faulty screenshots occur only rarely

lidar2hemi's People

Contributors

tobias-jonas-slf avatar

Stargazers

 avatar  avatar  avatar  avatar  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.