A Rust-based Python library for extracting pointpca2 features from Point Clouds.
Project description
PointPCA2 - Python Lib
A seamless Python integration to the Rust implementation of PointPCA2
This project aims to integrate Python to pointpca2-rs, enabling the use of Python's comprehensive data science tools combined to the performance provided by the Rust implementation of PointPCA2.
Setup
From PyPI
pip install pointpca2
# or
python -m pip install pointpca2
From source
-
Prerequisites
- rustc == 1.77.2
- anaconda3 >= 23.7.4
-
Build
# Clone this repository
https://github.com/akaTsunemori/pointpca2-pylib.git
# cd into the project folder
cd pointpca2-pylib
# Setup and activate the conda environment
conda env create -f environment.yml
conda activate pointpca2-pylib
# Compile the project into a python module using maturin
maturin develop -r
Usage
import open3d as o3d
import numpy as np
import pointpca2
# Load both reference and test PCs
PC_REF_PATH = "examples/pcs/amphoriskos_vox10.ply"
pc_ref = o3d.io.read_point_cloud(PC_REF_PATH)
points_a, colors_a = np.asarray(pc_ref.points), np.asarray(pc_ref.colors)
PC_TEST_PATH = "examples/pcs/tmc13_amphoriskos_vox10_dec_geom01_text01_octree-predlift.ply"
pc_test = o3d.io.read_point_cloud(PC_TEST_PATH)
points_b, colors_b = np.asarray(pc_test.points), np.asarray(pc_test.colors)
# Compute the features (predictors) through the pointpca2 function
predictors = pointpca2.compute_pointpca2(
points_a, colors_a, points_b, colors_b, search_size=81, verbose=True
)
print(*predictors)
Contributing
Feel free to open any kind of issues and contributions related to this Python package. Issues related to the Rust implementation should be open on the pointpca2-rs repository.
Acknowledgments
- pointpca2-rs - An implementation of PointPCA2 in Rust
License
MIT License
GitHub @akaTsunemori
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 Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pointpca2-0.5.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 274.1 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
469d659a35ca4336786197da2d62db28a6dd2581a51dd18a185a275aecfe3290
|
|
| MD5 |
963002dd7ab3fccac0528618dd8402cc
|
|
| BLAKE2b-256 |
eae7e1659a5e59437d30c8d3a574fbd3d794851b6fb509db396afd7ce9f59113
|
File details
Details for the file pointpca2-0.5.0-cp312-cp312-win32.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp312-cp312-win32.whl
- Upload date:
- Size: 251.9 kB
- Tags: CPython 3.12, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c54bc27ca629d0c642a84120ebfcbafe09fb535db1ec17a17fe93387310499bf
|
|
| MD5 |
d21deb87f2550f89c84f523bbee8f8ce
|
|
| BLAKE2b-256 |
2bf9646c4e54baf213b2502c439f4a7de68dc3546e14de04f2d68e75b68866aa
|
File details
Details for the file pointpca2-0.5.0-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 444.2 kB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
26e7f0e7fd6cc8a586995a309d2d076c655e513ea8c7fe16b41fc16239d0b194
|
|
| MD5 |
e64ba818da6e4d76d6c1988760c155b1
|
|
| BLAKE2b-256 |
e7fd0e0ae4fcefc8d0ac717e2351cfbaf2757d0f2b056bd9a305988ea0db1953
|
File details
Details for the file pointpca2-0.5.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 375.8 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
987a79302de0cc75ee9c42ad053ef3b2193f7c1828622486f382ed28ed73131b
|
|
| MD5 |
bb961961f170fbd5d241d3387899036d
|
|
| BLAKE2b-256 |
ea51e0fce8e8883f6bc8c86ad77058e56e04da692146389049d1a8a86ba71b38
|
File details
Details for the file pointpca2-0.5.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 274.6 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84b546710a5254618557c3fc73b521a6e332fb04e7cb533892aa7aa27a21738c
|
|
| MD5 |
db1b546f59da3eee5444ab4c2abf0b28
|
|
| BLAKE2b-256 |
02277a649fd39c6e5bfe2c1b07574aa844c4fa3995a0d14bbe597a6efa591160
|
File details
Details for the file pointpca2-0.5.0-cp311-cp311-win32.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp311-cp311-win32.whl
- Upload date:
- Size: 252.0 kB
- Tags: CPython 3.11, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d61033df7a8bbb8cfac213549420406b68f916a616101eb1d6e13369c161dc3
|
|
| MD5 |
9a2d739db8f8271caf62c2e88a8264ba
|
|
| BLAKE2b-256 |
ccc1bd422f1e968cac6e9db03fc6a897561c1e38b913b74aca8b32692ac77500
|
File details
Details for the file pointpca2-0.5.0-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 444.2 kB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c1a72715eb084099e6d18a2e35599cb61f425bf8891f8c34a570ab00a49a373
|
|
| MD5 |
d4e8b8d78257e464ebf50ba7c087e0f6
|
|
| BLAKE2b-256 |
cb352ad9e9d7df87c47d00a33f48e3ad366c4f7ae8a75529d7ca9f6f4c5179ff
|
File details
Details for the file pointpca2-0.5.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 380.1 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5dfb390baec1b25cdb2bc8e4a219de8b5bff7ca13306e0c5fe7721d9bc11cbc8
|
|
| MD5 |
86005965fc1a3cd511984b07aaba1244
|
|
| BLAKE2b-256 |
897f5912adc133ea10dabb6917b1cdde2f4e3e63f02907ed5e579ad66d82051c
|
File details
Details for the file pointpca2-0.5.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 274.5 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d2fed4ba2af7ffe19b802c961b0d86b294bd49904001ec99e689dcc03c5d0f8
|
|
| MD5 |
436671faee0c8ffe2de5aff771fd4114
|
|
| BLAKE2b-256 |
ec8d112e9eb98d7030569446d34a4b762a5d4e068c7680e72daf2e41cfb78bc0
|
File details
Details for the file pointpca2-0.5.0-cp310-cp310-win32.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp310-cp310-win32.whl
- Upload date:
- Size: 252.9 kB
- Tags: CPython 3.10, Windows x86
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eaf74487d4c4e9befdaafb71bef13f406f707f990007548d769cdc6911410267
|
|
| MD5 |
049f6155130a1d0caaf41a41a940de33
|
|
| BLAKE2b-256 |
f0b680486c0656ec3029a79bb64ece05bc42f8a6e1fd52e76a46414b72b85af1
|
File details
Details for the file pointpca2-0.5.0-cp310-cp310-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 444.5 kB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52c2b53d2488bdf083ff63ce5d4f6926377f38a12ac0a0baadd1b286a2cfc750
|
|
| MD5 |
3027bd8038716045fa4d89c8957e7fff
|
|
| BLAKE2b-256 |
295aa5a18810e71f3bb4c7cc6c8a358519642fc4bf7b3100a5818fad77a118ed
|
File details
Details for the file pointpca2-0.5.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: pointpca2-0.5.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 379.7 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4b5c97c140cc8ff30de8e1b8c50d67a866ffa71eba92984bec6d1d39be1a7b7
|
|
| MD5 |
c747225873ce220de3399a3006c6a9a3
|
|
| BLAKE2b-256 |
fde58e101900a1c32be209abbd1ae5df0834b3cab6a1dc01088fd46e9bf61392
|