Skip to main content

Point cloud geometric properties from python.

Project description

Jakteristics is a python package to compute point cloud geometric features.

A geometric feature is a description of the geometric shape around a point based on its neighborhood. For example, a point located on a wall will have a high planarity.

The features used in this package are described in the paper Contour detection in unstructured 3D point clouds. They are computed based on the eigenvalues and eigenvectors:

  • Eigenvalue sum

  • Omnivariance

  • Eigenentropy

  • Anisotropy

  • Planarity

  • Linearity

  • PCA1

  • PCA2

  • Surface Variation

  • Sphericity

  • Verticality

  • Nx, Ny, Nz (The normal vector)

It’s inspired from a similar tool in CloudCompare.

It’s implemented in cython using the BLAS and LAPACK scipy wrappers. It can use multiple cpus, and the performance is quite good (at least twice as fast as CloudCompare).

Installation

python -m pip install jakteristics

Usage

Refer to the documentation for more details.

From python

from jakteristics import compute_features

features = compute_features(xyz, search_radius=0.15)

CLI

Once the package is installed, you can use the jakteristics command:

jakteristics input/las/file.las output/file.las --search-radius 0.15 --num-threads 4

Run tests

python -m pip install -r requirements-dev.txt
python setup.py pytest

History

0.4.2 (2020-04-20)

  • fix extension import statement

0.4.1 (2020-04-17)

  • fix: create parent directories for output file

  • fix: rename –num_threads to –num-threads

  • fix: require laspy 1.7 for upper case names in extra dimensions

0.4.0 (2020-04-16)

  • first pypi release

  • add github actions

0.3.0 (2020-04-14)

  • add feature-names parameter to compute specific features

0.2.0 (2020-04-10)

  • fix windows compilation with openmp

  • add example cloudcompare script

  • add num_threads cli parameter and help documentation

  • write extra dimensions in the correct order

0.1.2 (2020-04-10)

  • Fix tests

0.1.1 (2020-04-10)

  • Fix bug where single precision was used for intermediate variables

0.1.0 (2020-04-10)

  • First release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jakteristics-0.4.2.tar.gz (504.3 kB view hashes)

Uploaded source

Built Distributions

jakteristics-0.4.2-cp38-cp38-win_amd64.whl (664.3 kB view hashes)

Uploaded cp38

jakteristics-0.4.2-cp37-cp37m-win_amd64.whl (655.6 kB view hashes)

Uploaded cp37

jakteristics-0.4.2-cp36-cp36m-win_amd64.whl (655.5 kB view hashes)

Uploaded cp36

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page