Skip to content

Repository files navigation

Laspy

Laspy is a python library for reading, modifying and creating LAS LiDAR files.

Laspy is compatible with Python 3.8+.

Features

  • LAS support.
  • LAZ support via lazrs or laszip backend.
  • LAS/LAZ streamed/chunked reading/writting.
  • COPC support over files.
  • COPC support over https with requests package.
  • CRS support via pyproj package.

Examples

Directly read and write las

importlaspylas=laspy.read('filename.las')
las.points=las.points[las.classification==2]
las.write('ground.laz')

Open data to inspect header (opening only reads the header and vlrs)

importlaspywithlaspy.open('filename.las') asf:
print(f"Point format: {f.header.point_format}")
print(f"Number of points: {f.header.point_count}")
print(f"Number of vlrs: {len(f.header.vlrs)}")

Use the 'chunked' reading & writing features

importlaspywithlaspy.open('big.laz') asinput_las:
withlaspy.open('ground.laz', mode="w", header=input_las.header) asground_las:
forpointsininput_las.chunk_iterator(2_000_000):
ground_las.write_points(points[points.classification==2])

Appending points to existing file

importlaspywithlaspy.open('big.laz') asinput_las:
withlaspy.open('ground.laz', mode="a") asground_las:
forpointsininput_las.chunk_iterator(2_000_000):
ground_las.append_points(points[points.classification==2])

API Documentation and tutorials are available at ReadTheDocs.

Installation

Laspy can be installed either with pip:

pip install laspy # without LAZ support
# Or
pip install laspy[laszip] # with LAZ support via LASzip
# Or
pip install laspy[lazrs] # with LAZ support via lazrs

Changelog

See CHANGELOG.md

About

Laspy is a pythonic interface for reading/modifying/creating .LAS LIDAR files matching specification 1.0-1.4.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages