laspy

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

https://github.com/laspy/laspy

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    8 of 51 committers (15.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.1%) to scientific vocabulary

Keywords

copc las laz lidar point-cloud pointcloud python

Keywords from Contributors

geospatial-data gdal terrain tin cython mapbox-satellite-oss
Last synced: 6 months ago · JSON representation

Repository

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

Basic Info
Statistics
  • Stars: 493
  • Watchers: 33
  • Forks: 125
  • Open Issues: 16
  • Releases: 25
Topics
copc las laz lidar point-cloud pointcloud python
Created almost 14 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License

README.md

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 ```Python 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)

```Python import laspy

with laspy.open('filename.las') as f: print(f"Point format: {f.header.pointformat}") print(f"Number of points: {f.header.pointcount}") print(f"Number of vlrs: {len(f.header.vlrs)}") ``` Use the 'chunked' reading & writing features

```Python import laspy

with laspy.open('big.laz') as inputlas: with laspy.open('ground.laz', mode="w", header=inputlas.header) as groundlas: for points in inputlas.chunkiterator(2000000): groundlas.write_points(points[points.classification == 2])

```

Appending points to existing file

```Python import laspy

with laspy.open('big.laz') as inputlas: with laspy.open('ground.laz', mode="a") as groundlas: for points in inputlas.chunkiterator(2000000): groundlas.appendpoints(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

Owner

  • Name: laspy
  • Login: laspy
  • Kind: organization

GitHub Events

Total
  • Create event: 6
  • Release event: 1
  • Issues event: 14
  • Watch event: 33
  • Delete event: 3
  • Issue comment event: 30
  • Push event: 26
  • Pull request review comment event: 3
  • Pull request review event: 2
  • Pull request event: 21
  • Fork event: 5
Last Year
  • Create event: 6
  • Release event: 1
  • Issues event: 14
  • Watch event: 33
  • Delete event: 3
  • Issue comment event: 30
  • Push event: 26
  • Pull request review comment event: 3
  • Pull request review event: 2
  • Pull request event: 21
  • Fork event: 5

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 847
  • Total Committers: 51
  • Avg Commits per committer: 16.608
  • Development Distribution Score (DDS): 0.445
Past Year
  • Commits: 17
  • Committers: 4
  • Avg Commits per committer: 4.25
  • Development Distribution Score (DDS): 0.235
Top Committers
Name Email Commits
Grant Brown g****3@g****m 470
tmontaigu t****u@l****t 219
Grant Brown g****n@M****) 24
David.Caron d****5@g****m 19
Howard Butler h****c@g****m 16
Obelisk o****k@U****) 12
Kristian Evers k****s@g****m 11
Seth Hill s****h@g****m 9
Simon Kokkendorff s****k@d****k 6
Pete Gadomski p****i@g****m 3
Martijn Visser m****r@g****m 3
Guillaume Lostis g****s@k****m 3
Stephen Mather s****n@s****m 2
Fabio Picchi f****i@s****m 2
blaz bratanic b****c@g****m 2
VeraMiller v****y@g****m 2
Timo Röhling r****g@d****g 2
Paul Leroy p****y@u****r 2
Lars Buitinck l****k@e****l 2
Hugo Ledoux h****x@t****l 2
Fabio Picchi f****e@g****m 2
Ellon Mendes e****s@l****r 2
Alex Knoll a****x@r****m 2
AbhinavAtrishi a****m@y****n 2
Ravi Peters r****s@t****l 2
Ryan McCarthy r****m@p****m 1
Ryan c****t@m****t 1
Rostyslav Pudlo r****o@e****m 1
Maxime Chauvin c****e@g****m 1
Grant Brown g****n@G****l 1
and 21 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 91
  • Total pull requests: 84
  • Average time to close issues: 5 months
  • Average time to close pull requests: 10 days
  • Total issue authors: 77
  • Total pull request authors: 23
  • Average comments per issue: 2.78
  • Average comments per pull request: 0.81
  • Merged pull requests: 77
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 10
  • Pull requests: 19
  • Average time to close issues: 17 days
  • Average time to close pull requests: 3 days
  • Issue authors: 9
  • Pull request authors: 9
  • Average comments per issue: 2.0
  • Average comments per pull request: 0.42
  • Merged pull requests: 15
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • n4z4m3 (3)
  • PeterSanctus (3)
  • Stakhan (2)
  • HowcanoeWang (2)
  • vincentBenet (2)
  • tayden (2)
  • JoryKlaverstijn (2)
  • yurivict (2)
  • grantbrown (2)
  • tmontaigu (2)
  • jpswensen (2)
  • dcolley (1)
  • fcakyon (1)
  • chadrockey (1)
  • anieuwland (1)
Pull Request Authors
  • tmontaigu (63)
  • hobu (4)
  • davidcaron (3)
  • floriandeboissieu (2)
  • froody (2)
  • rdesparbes (2)
  • JoryKlaverstijn (2)
  • mccarthyryanc (2)
  • hugoledoux (2)
  • p-leroy (2)
  • gunnarsnorri (2)
  • AbhinavAtrishi (2)
  • largeword (1)
  • gaborpelesz (1)
  • roehling (1)
Top Labels
Issue Labels
bug (4) enhancement (3)
Pull Request Labels

Packages

  • Total packages: 3
  • Total downloads:
    • pypi 296,435 last-month
  • Total docker downloads: 21,162
  • Total dependent packages: 47
    (may contain duplicates)
  • Total dependent repositories: 157
    (may contain duplicates)
  • Total versions: 59
  • Total maintainers: 5
pypi.org: laspy

Native Python ASPRS LAS read/write library

  • Versions: 43
  • Dependent Packages: 40
  • Dependent Repositories: 139
  • Downloads: 296,435 Last month
  • Docker Downloads: 21,162
Rankings
Dependent packages count: 0.4%
Downloads: 1.1%
Dependent repos count: 1.3%
Docker downloads count: 1.4%
Average: 2.0%
Stargazers count: 3.2%
Forks count: 4.4%
Maintainers (4)
Last synced: 6 months ago
spack.io: py-laspy

Native Python ASPRS LAS read/write library.

  • Versions: 5
  • Dependent Packages: 1
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Forks count: 10.4%
Stargazers count: 11.8%
Average: 12.6%
Dependent packages count: 28.1%
Maintainers (1)
Last synced: 6 months ago
conda-forge.org: laspy

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

  • Versions: 11
  • Dependent Packages: 6
  • Dependent Repositories: 18
Rankings
Dependent repos count: 8.3%
Dependent packages count: 9.0%
Average: 13.9%
Forks count: 17.3%
Stargazers count: 20.8%
Last synced: 6 months ago

Dependencies

setup.py pypi
  • numpy *
.github/workflows/build.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite