Explore & Process 3D Point-Cloud Data

PointClouds.jl lets you query publicly available lidar point-cloud datasets, download the data for regions of interest, and explore & process the data locally. You can access all attributes stored in LAS/LAZ files and construct purpose-built processing pipelines that extract information about the local environment from point-cloud data.

Main features & goals

PointClouds.jl aims to provide all functionality for an ergonomic, high-performance workflow to acquire and process point-cloud data. The initial development is focused on producing robust primitives for such a workflow. Over time, we expect the functionality to expand, building out a comprehensive library of point-cloud processing algorithms similar to PDAL and lidR.

  • spatial queries of the USGS 3DEP lidar data with near-total coverage of the United States
  • reading & writing LAS/LAZ files (v1.0 – v1.4), including files that do not fit into memory
  • lazy filtering & updating of LAS/LAZ points
  • parsing LAS coordinate reference system (CRS) data in WKT & GeoTIFF formats; coordinate transforms
  • multi-threaded in-memory processing of point-cloud data, including neighborhood-based processing
  • rasterization of point-cloud data based on points within pixel footprint, points within radius of pixel center, and k nearest neighbors of pixel center

For more details, see the table of contents below.

Installation

PointClouds.jl is available in the official Julia package registry. Add it to a Julia environment using e.g. the Pkg REPL:

(@v1.10) pkg> add PointClouds

Follow the tutorial for an introduction to the functionality of PointClouds.jl.

Note

Since PointClouds.jl is rather new and under active development, backwards-incompatible changes may occur regularly. It is therefore recommended to add a specific version to your Julia environment (e.g. with Pkg.compat or Pkg.pin and to be careful when updating to new (non-patch) versions.

Contents of documentation