Read and Write 'las' and 'laz' Binary File Formats Used for
Remote Sensing Data
Read and write 'las' and 'laz' binary file formats. The LAS file format is a public file format for the interchange of 3-dimensional point cloud data between data users. The LAS specifications are approved by the American Society for Photogrammetry and Remote Sensing < https://www.asprs.org/committee-general/laser-las-file-format-exchange-activities.html>. The LAZ file format is an open and lossless compression scheme for binary LAS format versions 1.0 to 1.3 < https://www.laszip.org/>.
R package to read and write
.laz binary files used to store LiDAR data.
rlas relies on a modified version of the open source parts of LAStools.
LASzip were modified to be compatible with
R. The library can therefore be compiled into
R without any complaints from
R CMD check.
It enables users to read and write into R binary files commonly used to store LiDAR data in R both at the R level and at the C++ level.
- The latest released version from CRAN with
- The latest development version from github with
To install the package from github make sure you have a working development environment.
- Windows: Install Rtools.exe.
- Mac: Install
Xcode from the Mac App Store.
- Linux: Install the R development package, usually called
Read las and laz files
lasdata = read.las("<myfile.las>")
lasheader = read.lasheader("<myfile.las>")
See changelog here
rlas contains code written by both Jean-Romain Roussel and Martin Isenburg. The latter is included
for technical reasons. Details below.
- (c) 2007-2015 [email protected] - http://rapidlasso.com
- Provided under LGPL license and modified to be R-compliant by Jean-Romain Roussel. Each modification is dated and registered into the file headers.
rlas code enabling Martin Isenburg's code to be wrapped into R:
- (c) 2016 Jean-Romain Roussel
- Provided under GPL-3 license.
rlas v1.2.9 (Release date: 2018-10-26)
write.las writes the epsg code in the header.
rlas v1.2.6 (Release date: 2018-08-20)
check_data now check the adequation between the
las format 7 was supported at the C++ level when reading a file but an old test still throw an error at the R level stating that this format was not supported.
- fix several compilation warnings on CRAN
readlasheader were definitively removed.
rlas v1.2.4 (Release date: 2018-06-10)
- Reupload on CRAN after being removed.
rlas v1.2.3 (Release date: 2018-05-17)
- Read the classification flags in fields
- Fix: point in polygon includes the points that define the polygon.
- Fix: [#21] writing a vector that contains only NAs in extra bytes
- Fix: additional warnings on CRAN with gcc 8+
- Fix: [#19] additional errors on CRAN with valgrind
rlas v1.2.1 (Release date: 2018-04-13)
- Fix: [#18] additional errors on CRAN with ASAN and USBAN
rlas v1.2.0 (Release date: 2018-04-10)
- Enables the support of files with point data formats 6, 7 and 8 in read mode.
- Enables the support of extra bytes attributes in write mode.
- New function
read.las that replaces
readlasdata, which is now deprecated. The selection of the field to be loaded is made easier by use of string syntax instead of multiple logical parameters.
- New function
read.lasheader that replaces
readlasheader, which is now deprecated. This change was made only for naming consistency.
- New functions
header_* that allows the user to make valid headers and thus properly write the las files.
- New functions
check_* that check data integrity.
- Fix [#9] with valgrind: uninitialized value(s)
rlas v1.1.9 (Release date: 2018-01-17)
- Fix a segfault when reading extrabytes
rlas v1.1.8 (Release date: 2018-01-15)
- new straighforward C++ class
RLASstreamer to use
rlasat the C++ level.
- Support of extra bytes attributes in
- Fix some internal features that cannot be used by regular users. Does not affect users.
rlas v1.1.5 (Release date: 2017-10-23)
writelax enabled for writing LAX files.
readlasdata enabled for reading several files.
- Moved the headers in
inst/include to make the lib callable from other packages
- The las files were read twice every time.
lasdatareader is twice as fast since it reads files only once
readlasdata enables loading (or not) of the gpstime field.
rlas v1.1.4 (Release date: 2017-07-26)
- Solved the compilation issue on CRAN with clang++ and gnu++11
rlas v1.1.3 (Release date: 2017-06-09)
- Fix [#4] bug of computer precision when writing files
- Fix [#61] wrong header size for files version 1.3
- Update LASlib and LASzip
- Better integration of LASlib and LASzip in R
rlas v1.1.2 (Release date: 2017-05-04)
- Write the proper RGB colors instead of 0.
rlas v1.1.1 (Release date: 2017-03-15)
readlasdata() is able to read file when LAS specifications are not respected.
writelas performs tests on the header before entering C++ code (enable to fail with informative errors).
rlas v1.1.0 (Release date: 2017-02-04)
readlasdata() gains a parameter
filter enabling use of memory-optimized streaming filters.
readlasdata() supports .lax files for faster filter (thanks to Florian de Boissieu #2)
- All the default options for
readlasdata() are now
readlasheader() is now able to read the
Variable length record
rlas v1.0.3 (Release date: 2016-12-24)
CRAN does not build binary packages. After exchanges with prof Bryan Ripley
- Change: removed CXX_STD flag in Makevars. g++ compile whith flag -std=c++98
- Change: removed std::to_string, replaced by a macro ISO C++98
- Change: replaced formats specifiers which were ISO C++11 but not ISO C++98
- Change: added prepocessor statements to get proper path to libraries when clang++ is used with flag -stdlib=libc++
- Change: title in DESCRIPTION according to prof Bryan Ripley
- Change: description in DESCRIPTION according to prof Bryan Ripley
rlas v1.0.2 (Release date: 2016-12-23)
- Change: Manually list sources in makevars
- Change: Remove SystemRequirements field in DESCRIPTION
rlas v1.0.1 (Release date: 2016-12-22)
- Add: runnable examples in documentaion
- Add: tiny 755 bytes 'laz' file
- Change: single quoted 'las' and 'laz' in Description and Title fields in DESCRIPTION
rlas v1.0.0 (Release date: 2016-12-22)