# PDAL - Point Data Abstraction Library

PDAL is a C++ BSD library for translating and manipulating point cloud data. It is very much like the GDAL library which handles raster and vector data. The About page provides high level overview of the library and its philosophy. Visit Readers and Writers to list data formats it supports, and see Filters for filtering operations that you can apply with PDAL.

In addition to the library code, PDAL provides a suite of command-line applications that users can conveniently use to process, filter, translate, and query point cloud data. Applications provides more information on that topic.

Finally, PDAL speaks Python by both embedding and extending it. Visit Python to find out how you can use PDAL with Python to process point cloud data.

The entire website is available as a single PDF at http://pdal.io/PDAL.pdf

## News

### 10-12-2017

PDAL 1.6.0 has been released. Visit Download to obtain a copy of the source code, or follow the Quickstart to get going in a hurry with Docker.

## About

- About
  - What is PDAL?
  - What is its big idea?
  - How is it different than other tools?
  - Where did PDAL come from?
  - What tasks are PDAL good at?
  - What are PDAL’s weak points?
  - High Level Overview
  - Conclusion

## Download

- Download
  - Current Release(s)
  - Past Releases
  - Development Source
  - Binaries

## Quickstart

- Quickstart
  - Introduction
  - Install Docker
  - Fetch Sample Data
  - Print the first point
  - What’s next?

## Applications

- Applications
  - delta
  - density
  - diff
  - ground
  - hausdorff
  - info
  - merge
  - pcl
  - pipeline
  - random
  - sort
  - split
  - tindex
  - translate

## Community

- Community
  - Mailing List
  - GitHub
  - Gitter
  - Keybase
  - IRC

## Drivers

- Pipeline
  - Introduction
  - Pipeline Objects
  - Extended Examples
  - API Considerations
- Readers
  - readers.bpf
  - readers.buffer
  - readers.faux
  - readers.gdal
  - readers.geowave
  - readers.greyhound
  - readers.ilvis2
  - readers.las
  - readers.matlab
  - readers.mbio
  - readers.mrsid
  - readers.nitf
  - readers.oci
  - readers.optech
  - readers.pcd
  - readers.pgpointcloud
  - readers.ply
  - readers.pts
  - readers.qfit
  - readers.rxp
  - readers.sbet
  - readers.sqlite
  - readers.text
  - readers.tindex
- Writers
  - writers.bpf
  - writers.gdal
  - writers.geowave
  - writers.las
  - writers.matlab
  - writers.nitf
  - writers.null
  - writers.oci
  - writers.ogr
  - writers.pcd
  - writers.pgpointcloud
  - writers.ply
  - writers.sqlite
  - writers.text
- Filters
  - filters.approximatecoplanar
  - filters.assign
  - filters.chipper
  - filters.cluster
  - filters.colorinterp
  - filters.colorization
  - filters.computerange
  - filters.cpd
  - filters.crop
  - filters.decimation
  - filters.divider
  - filters.eigenvalues
  - filters.elm
  - filters.estimaterank
  - filters.ferry
  - filters.greedyprojection
  - filters.gridprojection
  - filters.groupby
  - filters.hag
  - filters.head
  - filters.hexbin
  - filters.icp
  - filters.iqr
  - filters.kdistance
  - filters.locate
  - filters.lof
  - filters.mad
  - filters.matlab
  - filters.merge
  - filters.mongus
  - filters.mortonorder
  - filters.movingleastsquares
  - filters.normal
  - filters.outlier
  - filters.overlay
  - filters.pclblock
  - filters.pmf
  - filters.poisson
  - filters.python
  - filters.radialdensity
  - filters.randomize
  - filters.range
  - filters.reprojection
  - filters.sample
  - filters.smrf
  - filters.sort
  - filters.splitter
  - filters.stats
  - filters.tail
  - filters.transformation
  - filters.voxelcenternearestneighbor
  - filters.voxelcentroidnearestneighbor
  - filters.voxelgrid

## Dimensions

- Dimensions

## Python

- Python
  - Versions
  - Embed
  - Extend

## Tutorials

- Tutorials
  - Reading with PDAL
  - LAS Reading and Writing with PDAL
  - Filtering data with PCL
  - Identifying ground returns using ProgressiveMorphologicalFilter segmentation
  - Clipping with Geometries
  - Performing Poisson Sampling of Point Clouds Using Dart Throwing
  - Filtering Data with Python

## Workshop

- Workshop
  - Introduction
  - Introduction to LiDAR
  - Software Installation
  - Exercises
  - Final Project
  - Notes

## Development

- Development
  - PDAL Architecture Overview
  - Compilation
  - Coding Conventions
  - Contributors
  - Docs
  - Building Docker Containers for PDAL
  - Errors and Error Handling
  - Metadata
  - Project Goals
  - Testing
  - Continuous Integration
  - Writing with PDAL
  - Writing a filter
  - Writing a kernel
  - Writing a reader
  - Writing a writer
  - Using PDAL with CMake
- API
  - C++ API
  - libLAS C API to PDAL transition guide
- FAQ
- License
  - Overall PDAL license (BSD)

- References

## Indices and tables

- Index
- Search Page