Getting Started
How to guide on installing PCHandler
Dependencies
Core Libraries
NumPy — Fast N-dimensional arrays and numerical operations that power core point-cloud computations.
GeoPandas — High-level geospatial data structures used for GIS-style processing and analysis.
Shapely — Geometric predicates and operations for working with 2D geometry (buffers, intersections, etc.).
alphashape — Alpha-shape computation to derive concave hulls/outlines from point sets.
Point Cloud I/O
plyfile — Read/write PLY files (ASCII/Binary) with attribute preservation.
laspy — Read/write LAS/LAZ lidar point cloud formats, including point attributes.
Visualization / 3D Operations
Open3D — Visualization and selected 3D geometry utilities for point clouds and meshes.
py4dgeo - Library containing other geomonitoring algorithms from Heidelberg University.
Utilities
joblib — Simple parallelism and caching for speeding up CPU-bound workflows.
Optional GPU Acceleration
Install from GitHub
# (optional) create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate # on Windows: .venv\Scripts\activate
# clone and install
git clone https://github.com/your-org/pchandler.git
cd pchandler
python -m pip install -e . # editable install for development
Quick Example
To ensure PCHandler has been properly installed, you can try the following code:
import numpy as np
from pchandler import PointCloudData
offset = [10_000_000, -500_000, 20_000]
# Create an (N, 3) array of XYZ coordinates
points = np.random.rand(10, 3) * 1000 - 500 + offset
# Initialize the point cloud
pcd = PointCloudData(points)
# (Optional) confirm basic properties
print(f"{points.shape=}") # (100, 3)
print(f"{pcd.xyz=}")
print(f"{pcd.numerical_optimization_shift=}")