Skip to main content

Tools for dimension estimation of pointclouds. Docs available at https://marcelintel.gitlab.io/dimmer/

Project description

dimmer

pipeline coverage PyPI Ruff

Tools for dimension estimation of pointclouds. Docs available at https://marcelintel.gitlab.io/dimmer/

Dimmer provides three methods for determining stratifications of point clouds:

  1. GAD is a particular implementation of the Geometric Anomaly Detection algorithm of Stolz, Tanner, Harrington, and Nanda with modifications for performance.
  2. Intersecter looks for points in the data whose local neighborhoods look like the intersection of planes.
  3. Stratifier attempts to stratify points into local charts on the space.

These can be used together or separately, and all are written in the style of scikit-learn transformers.

Installation

dimmer is pip-installable. From your command line:

$ pip install dimmer

dimmer can also be installed from a local copy of the source code. After pulling the code:

$ source activate .venv/bin/activate # activate your virtual environment, however that may be
$ pip install -e .

More local development installs are detailed in CONTRIBUTING.md.

Basic Usage

The GAD, Intersecter, and Stratifier classes are written in the style of scikit-learn transformers. All should be initialized, fit, and then transformed on the data set in question, as in:

from dimmer import GAD, Intersecter
gad = GAD(radii=(0.2, 0.5), max_dim = 3, n_jobs = 4)
gad_labels = gad.fit_transform(X=data)
intersect = Intersecter(neighbors=(50,120), threshold=0.2/4, n_jobs = 5)
intersecter_labels = intersect.fit_transform(X=data)

For more in-depth usage, see the following example notebooks:

  • Gad usage shows the basic functionality of the GAD class.
  • Comparative pipeline shows how GAD can be used in conjunction with and in comparison to other dimension estimation algorithms of scikit-dimension.
  • Intersecter usage shows the functionality of the Intersecter class.
  • Stratifier usage shows the functionality of the Stratifier class.

Features

  • pip installable
  • testing suite with pytest
  • documentation with quartodoc
  • tests and deployment integrated with gitlab CI/CD

Credits/History

  • See MIGRATION.md.

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

dimmer-1.0.0.tar.gz (5.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dimmer-1.0.0-py3-none-any.whl (2.4 MB view details)

Uploaded Python 3

File details

Details for the file dimmer-1.0.0.tar.gz.

File metadata

  • Download URL: dimmer-1.0.0.tar.gz
  • Upload date:
  • Size: 5.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dimmer-1.0.0.tar.gz
Algorithm Hash digest
SHA256 432329369f43126e98d9e59af61fcd289ed3af5a3405470bbfc238f4c2fc9623
MD5 b280a302ef35a5c624dcd96d8c35c239
BLAKE2b-256 bf2f9727194a43be28b0af04a087bf7803ace6d065e8032d79f071189a532d21

See more details on using hashes here.

File details

Details for the file dimmer-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: dimmer-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dimmer-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 483198964fcde271de9e6ae4ee52ff16b2967d3f7b677c8933223d052f640c93
MD5 25c16909c292e6eba673ff853beacc67
BLAKE2b-256 82627f2e52ad290cb700102a18b216fb1e690c4d397089646698ad4f2d241cd0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page