Metadata-Version: 1.2
Name: jakteristics
Version: 0.6.2
Summary: Point cloud geometric properties from python.
Home-page: https://github.com/jakarto3d/jakteristics
Author: David Caron
Author-email: david.caron@jakarto.com
License: BSD
Description: 
        Jakteristics
        ~~~~~~~~~~~~
        
        * **Documentation**: https://jakteristics.readthedocs.io
        * **Github**: https://github.com/jakarto3d/jakteristics
        
        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 <https://www.danielgm.net/cc/>`_.
        
        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).
        
        .. _`Contour detection in unstructured 3D point clouds`: https://ethz.ch/content/dam/ethz/special-interest/baug/igp/photogrammetry-remote-sensing-dam/documents/pdf/timo-jan-cvpr2016.pdf
        
        
        Installation
        ============
        
        .. code:: bash
        
            python -m pip install jakteristics
        
        
        Usage
        =====
        
        Refer to the `documentation <https://jakteristics.readthedocs.io/en/latest/usage.html>`_ for more details.
        
        
        From python
        -----------
        
        .. code:: python
        
            from jakteristics import compute_features
        
            features = compute_features(xyz, search_radius=0.15, feature_names=['planarity', 'linearity'])
        
        
        CLI
        ---
        
        Once the package is installed, you can use the `jakteristics` command:
        
        .. code:: bash
        
            jakteristics input/las/file.las output/file.las --search-radius 0.15 --num-threads 4
        
        
        Run tests
        =========
        
        .. code:: bash
        
            python -m pip install -r requirements-dev.txt
            python setup.py pytest
        
        
        
        
        History
        -------
        
        Unreleased
        ----------
        
        
        0.6.2 (2024-07-22)
        ------------------
        
        
        0.6.1 (2024-06-04)
        ------------------
        
        
        0.6.0 (2023-04-20)
        ------------------
        
        * add: number_of_neighbors feature
        * add: eigenvalues and eigenvectors features
        
        
        0.5.1 (2023-04-11)
        ------------------
        
        * fix: computing features when kdtree is not built from the same points for which we want to compute the features
        * drop python 3.6, add wheels for python 3.7-3.11 on linux and windows
        
        0.5.0 (2022-01-26)
        ------------------
        
        * fix: compatibility with latest laspy version (>= 2.1.1, (2.1.0 has a bug))
        
        
        0.4.3 (2020-09-24)
        ------------------
        
        * the default value when features can't be computed should be NaN
        
        
        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
        
Keywords: jakteristics
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Programming Language :: Cython
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Requires-Python: >=3.7
