Skip to main content

ALPACA-centered Pure Numpy Implementation of the Coherent Point Drift Algorithm

Project description

https://travis-ci.com/siavashk/pycpd.svg?branch=master

Pure Numpy Implementation of the Coherent Point Drift Algorithm.

MIT License.

Introduction

This is a pure numpy implementation of the coherent point drift CPD algorithm by Myronenko and Song. It provides three registration methods for point clouds: 1) Scale and rigid registration; 2) Affine registration; and 3) Gaussian regularized non-rigid registration.

The CPD algorithm is a registration method for aligning two point clouds. In this method, the moving point cloud is modelled as a Gaussian Mixture Model (GMM) and the fixed point cloud are treated as observations from the GMM. The optimal transformation parameters maximze the Maximum A Posteriori (MAP) estimation that the observed point cloud is drawn from the GMM.

The registration methods work for 2D and 3D point clouds. For more information, please refer to my blog.

Pip Install

pip install pycpd

Installation From Source

Clone the repository to a location, referred to as the root folder. For example:

git clone https://github.com/siavashk/pycpd.git $HOME/pycpd

Install the package:

pip install .

For running sample registration examples under examples, you will need matplotlib to visualize the registration. This can be downloaded by running:

pip install matplotlib

Usage

Each registration method is contained within a single class inside the pycpd subfolder. To try out the registration, you can simply run:

python examples/fish_{Transform}_{Dimension}.py

where Transform is either rigid, affine or deformable and Dimension is either 2D or 3D. Note that examples are meant to be run from the root folder.

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

cpdalp-1.2.0.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

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

cpdalp-1.2.0-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

Details for the file cpdalp-1.2.0.tar.gz.

File metadata

  • Download URL: cpdalp-1.2.0.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for cpdalp-1.2.0.tar.gz
Algorithm Hash digest
SHA256 ebfb0bda6532d3b5b3454600fa7df14c29b312dd9b3fd5c20899cfd233639767
MD5 665f7da4f7fb3c05d0ca97a79492ea8c
BLAKE2b-256 d80a5c67d49dcd7f7d43800700fe7490d439a3c5c08fbdf78ca3dd7e1606c3f3

See more details on using hashes here.

File details

Details for the file cpdalp-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: cpdalp-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 18.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for cpdalp-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bcfc71590a5703dfd4ac0cb9af8206037246cbf17c96e2e5cfb3617656ec396b
MD5 0714e1af2251db42572822fc571ff25c
BLAKE2b-256 d6c0d529c435b6d817124c3085caf44c19e570a4f7ec88fab89936bbeb23d96a

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