Native Python ASPRS LAS read/write library
Project description
Laspy
Laspy is a python library for reading, modifying and creating LAS LiDAR files.
Laspy is compatible with Python 3.6+.
Version 2.0
laspy 2.0 is in alpha, and ready for you to test, to install, it add --pre
to
the pip install commands (eg pip install --pre laspy
)
Examples
Directly read and write las
import laspy
las = 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)
import laspy
with laspy.open('filename.las') as f:
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
import laspy
with laspy.open('big.laz') as input_las:
with laspy.open('ground.laz', mode="w", header=input_las.header) as ground_las:
for points in input_las.chunk_iterator(2_000_000):
ground_las.write_points(points[points.classification == 2])
Appending points to existing file
import laspy
with laspy.open('big.laz') as input_las:
with laspy.open('ground.laz', mode="a") as ground_las:
for points in input_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
Version 2.0.0
- Overhaul of the internals by essentially incorporating pylas into laspy, while the API to retrieve and set dimensions stayed the same, other parts changed and will require adaptation.
- Better LAZ support
- Added support for writing LAZ
- Changed decompression mechanism by using either
laszip
python bindings (and not laszip-cli) orlazrs
- Added ability to read and write LAS/LAS in
stream
/chunked
mode. - Changed laspy to support the reading and writing of LAS/LAZ data from and to
file-objects
andbytes
- Dropped support for python2.7, python3.6+ is supported.
Version 1.7.0
- Fixed bug in point record format 5, 9 and 10 #105
- Return explicit msg if laszip executable was not found #110
- Supprt numpy 1.17 #122
Version 1.6.0
- Bug fix #92
- Test creation of all valid custom dimension data types
- Modify handling of extra bytes to be char data instead of numeric byte data
Version 1.5.1
- Bug fixes #67, #75, b02b40900b5
- Allow usage of
laszip-cli
when working with LAZ files #77
Version 1.5.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
laspy-2.0.0.tar.gz
(40.2 kB
view details)
File details
Details for the file laspy-2.0.0.tar.gz
.
File metadata
- Download URL: laspy-2.0.0.tar.gz
- Upload date:
- Size: 40.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ffd91aae7274be1690816d88b3e1d2a0b8b6b4c1574989ac73cd36e1082e00e0 |
|
MD5 | 142ecc76cad9ba17937b751ed6d69bd2 |
|
BLAKE2b-256 | 7c577d1f7b8998a1b01287bc605f40af5b15d32dea5982bacd7432560e45acec |