Analyse of point cloud collections
Project description
A package to work with pointcloud datasets. A pointcloud dataset is a collection of pointclouds recorded over a time period.
Features
Handles pointclouds over time
Building complex pipelines with a clean and maintainable code
newpointcloud = pointcloud.limit("x",-5,5).filter("quantile","reflectivity", ">",0.5)
Apply arbitrary functions to datasets of pointclouds
def isolate_target(frame: PointCloud) -> PointCloud:
return frame.limit("x",0,1).limit("y",0,1)
def diff_to_pointcloud(pointcloud: PointCloud, to_compare: PointCloud) -> PointCloud:
return pointcloud.diff("pointcloud", to_compare)
result = dataset.apply(isolate_target).apply(diff_to_pointcloud, to_compare=dataset[0])
Support for large files with lazy evaluation and parallel processing
Support for numerical data per point (intensity, range, noise …)
Interactive 3D visualisation
High level processing based on dask, pandas, open3D and pyntcloud
Docker image is available
Optmised for automotive lidar - especially the ones by Ouster
Directly read ROS bagfiles and many pointcloud file formats
A commandline tool to convert ROS bagfiles
Use case examples
Post processing and analytics of a lidar dataset recorded by ROS
A collection of multiple lidar scans from a terrestrial laser scanner
Comparison of mutliple pointclouds to a ground truth
Analytics of pointclouds over time
Developing algorithms on a single frame and then applying them to huge datasets
Installation with pip
Install python package with pip:
pip install pointcloudset
Installation with Docker
TODO
Quickstart
from pointcloudset import Dataset, PointCloud
from pathlib import Path
dataset = Dataset.from_file(Path("rosbag_file.bag"), topic="/os1_cloud_node/points", keep_zeros=False)
pointcloud = PointCloud.from_file(Path("lasfile.las"))
Read the html documentation.
Have a look at the tuturial notebooks in the documentation folder
For even more usage examples you can have a look at the tests
Citation and contact
Thomas Gölles email: thomas.goelles@v2c2.at
ADD link to JOSS paper here and DOI
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
Built Distribution
Hashes for pointcloudset-0.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc25215a271fd77761a762a3b5bb025f7839b540a1fdb545ae7af2e89dfed4da |
|
MD5 | 9d787b2397bd1019a0196b695f5ed5c3 |
|
BLAKE2b-256 | 55379523bc6ffe4ea07b3fa9b3b302c36bf3b06dbdf2a83fa7ca33c1c133590c |