KISS-Matcher v1.0.0
First PyPI release of KISS-Matcher's Python bindings.
Install
```bash
pip install kiss-matcher
```
Wheels are published for:
- Linux `manylinux_2_28+` x86_64 (works on any Linux with glibc ≥ 2.28: Ubuntu 20.04+, Debian 11+, RHEL 9+, etc.)
- macOS arm64 (macOS 14+, Apple Silicon)
- Python 3.8, 3.9, 3.10, 3.11, 3.12
Each wheel ships its own copy of oneTBB, OpenMP, lz4, and flann — no system installation needed.
Intel-Mac users: `pip install kiss-matcher` falls back to source build automatically (CMake ≥ 3.18, Eigen 3, TBB, OpenMP, flann required).
What's bundled
- KISS-Matcher core (FasterPFH + ROBINMatching + GncSolver pipeline)
- ROBIN v.1.2.7 (with MIT-SPARK/pmc fork pinned for upcoming Windows MSVC support)
- oneTBB 2022, Eigen 3, lz4, flann
Quickstart
```python
import kiss_matcher as km
import numpy as np
config = km.KISSMatcherConfig(voxel_size=0.3)
matcher = km.KISSMatcher(config)
src = np.random.rand(1000, 3).astype(np.float32)
tgt = np.random.rand(1000, 3).astype(np.float32)
solution = matcher.estimate(src, tgt)
```
Notes
- Windows wheels are not yet available; ROBIN's `src/pkc.cpp` uses GCC builtin atomics and `size_t` OpenMP `for` indices that MSVC's OpenMP 2.0 rejects. Patch coming in a follow-up release.
- Source distribution is also published, so `pip install --no-binary :all: kiss-matcher` works on any POSIX system with the build dependencies.