Skip to main content

Euler characteristic profiles for image analysis

Project description

euprima

Euler (characteristic) profiles for image analysis.

Disclaimer

This project was started as a prototype implementation for my bachelors thesis on the efficient computation of Euler characteristic profiles for three-channel digital images. Once the thesis has been accepted, it will also be linked to from this README.

At the moment this repository is still very much a work in progress and hence very unorganized and messy. Once I finally come up with a better (i.e. more organized) folder structure, this repository will be reorganized accordingly.

Installing the Python package

You can find the Python interface on PyPI as the euprima package. It can be installed using

pip install euprima

For the installation you will need a C++ compiler, cmake and pybind11.

Closing the repository

This repository uses the eulearning repository by Hacquard and Lebovici as a Git submodule for benchmarking. Clone the repository using the --recursive flag to pull down the benchmark files automatically:

git clone --recursive https://github.com/mazmap/euprima.git

In case you forgot the --recursive flag, you can execute

git submodule update --init --recursive

after cloning

Testing and Benchmarks

For executing the tests and benchmarks in tests/ you will need various Python packages such as numpy and pandas. To install all required packages, you can use the uv package/project manager. All dependencies are listed in tests/pyproject.toml (including the euprima package). For the benchmarks against the eulearning implementation by Hacquard and Lebovici, you have to clone the eulearning/ folder from their repository into tests/eulearning/ or clone it as a submodule as described above.

Documentation

I am working on a documentation with clear usage examples for the functions we provide via the pybind11 interface. For now, consult the test and benchmark files in tests/ to get an idea of how the functions are supposed to be used.

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

euprima-0.1.1.tar.gz (27.1 MB view details)

Uploaded Source

File details

Details for the file euprima-0.1.1.tar.gz.

File metadata

  • Download URL: euprima-0.1.1.tar.gz
  • Upload date:
  • Size: 27.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.14

File hashes

Hashes for euprima-0.1.1.tar.gz
Algorithm Hash digest
SHA256 6da275a4eaaf2badf31b9cc729473929ec359696adda915186fb7f7348cc6323
MD5 4eefc664fabfd201b6f60a45061639a5
BLAKE2b-256 bcea677670f4d0afd071d041394f0210fed2e69222d6b3b5c13facf3d3001a3c

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