{"id":32155696,"url":"https://github.com/efpl-columbia/pointclouds.jl","last_synced_at":"2025-10-21T12:11:22.702Z","repository":{"id":245458819,"uuid":"755752422","full_name":"efpl-columbia/PointClouds.jl","owner":"efpl-columbia","description":"Fast \u0026 flexible processing of lidar point-cloud data","archived":false,"fork":false,"pushed_at":"2025-07-24T14:18:06.000Z","size":158,"stargazers_count":6,"open_issues_count":6,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-10-13T12:15:55.375Z","etag":null,"topics":["julia","lidar","point-cloud"],"latest_commit_sha":null,"homepage":"https://docs.mfsch.dev/PointClouds.jl","language":"Julia","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/efpl-columbia.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-02-10T23:52:16.000Z","updated_at":"2025-08-08T16:41:26.000Z","dependencies_parsed_at":"2024-06-22T07:43:06.860Z","dependency_job_id":"fee5ebe8-2688-4da6-b851-e69b846d90da","html_url":"https://github.com/efpl-columbia/PointClouds.jl","commit_stats":null,"previous_names":["efpl-columbia/pointclouds.jl"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/efpl-columbia/PointClouds.jl","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efpl-columbia%2FPointClouds.jl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efpl-columbia%2FPointClouds.jl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efpl-columbia%2FPointClouds.jl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efpl-columbia%2FPointClouds.jl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/efpl-columbia","download_url":"https://codeload.github.com/efpl-columbia/PointClouds.jl/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/efpl-columbia%2FPointClouds.jl/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280257270,"owners_count":26299587,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-21T02:00:06.614Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["julia","lidar","point-cloud"],"created_at":"2025-10-21T12:11:20.437Z","updated_at":"2025-10-21T12:11:22.697Z","avatar_url":"https://github.com/efpl-columbia.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PointClouds.jl\n\n*Fast \u0026 flexible processing of lidar data*\n\n[PointClouds.jl](https://github.com/efpl-columbia/PointClouds.jl) lets you\nquery publicly available lidar point-cloud datasets, download the data for\nregions of interest, and explore \u0026 process the data locally. You can access all\nattributes stored in [LAS/LAZ](https://en.wikipedia.org/wiki/LAS_file_format)\nfiles and construct purpose-built processing pipelines that extract information\nabout the local environment from point-cloud data.\n\n## Features \u0026 Goals\n\n[![Online Documentation](https://img.shields.io/badge/🕮-Online_Documentation-2C6BAC)](https://docs.mfsch.dev/PointClouds.jl/)\n\nPointClouds.jl aims to provide all functionality for an ergonomic,\nhigh-performance workflow to acquire and process point-cloud data. The initial\ndevelopment is focused on producing robust primitives for such a workflow.\nOver time, we expect the functionality to expand, building out a comprehensive\nlibrary of point-cloud processing algorithms similar to\n[PDAL](https://pdal.io/) and [lidR](https://r-lidar.github.io/lidRbook/).\n\n- spatial queries of the [USGS 3DEP lidar\n  data](https://www.usgs.gov/3d-elevation-program) with near-total coverage of\n  the United States\n- reading \u0026 writing [LAS/LAZ](https://en.wikipedia.org/wiki/LAS_file_format)\n  files (v1.0 – v1.4), including files that do not fit into memory\n- lazy filtering \u0026 updating of LAS/LAZ points\n- parsing LAS coordinate reference system (CRS) data in WKT \u0026 GeoTIFF formats;\n  coordinate transforms\n- multi-threaded in-memory processing of point-cloud data, including\n  neighborhood-based processing\n- rasterization of point-cloud data based on points within pixel footprint,\n  points within radius of pixel center, and *k* nearest neighbors of pixel\n  center\n\nFor more details, see the [documentation](https://docs.mfsch.dev/PointClouds.jl).\n\n## Quickstart\n\nTo start using PointClouds.jl, add it to a [Julia environment](https://pkgdocs.julialang.org/v1/getting-started/#Getting-Started-with-Environments) e.g. using the [Pkg REPL](https://pkgdocs.julialang.org/v1/getting-started/#Basic-Usage):\n\n```julia-repl\n(@v1.10) pkg\u003e add PointClouds\n```\n\n\u003e [!TIP]\n\u003e Since PointClouds.jl is rather new and under active development,\n\u003e backwards-incompatible changes may occur regularly. It is therefore\n\u003e recommended to add a specific version to your Julia environment (e.g. with\n\u003e [`Pkg.compat`](https://pkgdocs.julialang.org/v1/api/#Pkg.compat) or\n\u003e [`Pkg.pin`](https://pkgdocs.julialang.org/v1/api/#Pkg.pin) and to be careful\n\u003e when updating to new (non-patch) versions.\n\nAfter that, the package can be loaded as usual:\n\n```julia-repl\njulia\u003e using PointClouds\n```\n\nUse [`LAS(filename)`](https://docs.mfsch.dev/PointClouds.jl/input-output#Reading-and-writing-LAS/LAZ-files) to access the point data of an existing LAS/LAZ file:\n\n```julia-repl\njulia\u003e pts = LAS(\"USGS_LPC_Sandy_Supplemental_NCR_VA_MD_DC_QL2_LiDAR_18SUJ322306.laz\")\n16,107,898-point LAZ (v1.2, PDRF 1, 01 Jun 2015)\n  Source ID     =\u003e 65535\n  Project ID    =\u003e AEB2BAA1-2BEF-41FC-B9BB-BDA288E8D77B\n  System ID     =\u003e \"\"\n  Software ID   =\u003e \"GeoCue LAS Updater\"\n  X-Coordinates =\u003e 322500.0 … 323999.99\n  Y-Coordinates =\u003e 4.3065e6 … 4.30799999e6\n  Z-Coordinates =\u003e -88.88 … 767.73\n  Return-Counts =\u003e [1 =\u003e 13,783,924, 2 =\u003e 1,993,048, 3 =\u003e 310,661, 4 =\u003e 19,622, 5 =\u003e 643]\n  Extra Data    =\u003e [0x00, 0x00, 0xdd, 0xcc]\n  Variable-Length Records\n    =\u003e LASF_Projection[34735] \"GeoTiff Projection Keys\" (200 bytes)\n    =\u003e LASF_Projection[34736] \"GeoTiff double parameters\" (80 bytes)\n    =\u003e LASF_Projection[34737] \"GeoTiff ASCII parameters\" (217 bytes)\n```\n\nRefer to [the documentation](https://docs.mfsch.dev/PointClouds.jl) to learn how to [work with LAS/LAZ data](https://docs.mfsch.dev/PointClouds.jl/input-output/), [load point data from public datasets](https://docs.mfsch.dev/PointClouds.jl/data-sources/), and [set up in-memory processing pipelines](https://docs.mfsch.dev/PointClouds.jl/point-processing/). Follow [the tutorial](https://docs.mfsch.dev/PointClouds.jl/tutorial/) for a more in-depth introduction.\n\n## Help \u0026 Contributing\n\nIf you run into a problem or would like to request a new feature, feel free to [create a new issue](https://github.com/efpl-columbia/PointClouds.jl/issues/new) after checking the [list of open issues](https://github.com/efpl-columbia/PointClouds.jl/issues).\n\nWe also welcome contributions to the code, the tests, and the documentation – feel free to open a [pull request](https://github.com/efpl-columbia/PointClouds.jl/pulls).\nIf you want to make sure your work fits within the plans and scope of PointClouds.jl, it might be best to first open an issue or draft PR to discuss the changes, especially when a significant amount of work is involved.\nThe documentation contains some [additional information](https://docs.mfsch.dev/PointClouds.jl/development/) for developing PointClouds.jl.\n\n## Attribution \u0026 License\n\n[![JOSS Paper](https://joss.theoj.org/papers/7885dd3306a23583dcf3963374c0c1cb/status.svg)](https://joss.theoj.org/papers/7885dd3306a23583dcf3963374c0c1cb)\n[![MIT License](https://img.shields.io/badge/License-MIT-D2D2C0)](./LICENSE.md)\n\nA [JOSS paper](https://joss.theoj.org/papers/7885dd3306a23583dcf3963374c0c1cb) describes the motivation for PointClouds.jl and gives an overview of the functionality.\nPlease cite this work if you use PointClouds.jl for your scientific publications.\n\nPointClouds.jl is freely available under the terms of the [MIT License](./LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fefpl-columbia%2Fpointclouds.jl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fefpl-columbia%2Fpointclouds.jl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fefpl-columbia%2Fpointclouds.jl/lists"}