Skip to main content

A template project, to enable people to build nicely structured C++ projects.

Project description

scikit-surgerygoicp

Build Status Build Status

Purpose

This is a re-wrapping of the GoICP algorithm in https://github.com/aalavandhaann/go-icp_cython using PyBind11.

pip install scikit-surgerygoicp

Working on Ubunutu (Python 3.6, 3.7, 3.8), Mac (3.6, 3.7, 3.8) and Windows (3.6, 3.7)

Usage

Only the below classes have been wrapped:

  • GoICP
  • POINT3D
  • ROTNODE
  • TRANSNODE

A simplified usage is shown below. See Testing/test.py for a full example.

import numpy as np;
from sksurgerygoicppython import GoICP, POINT3D, ROTNODE, TRANSNODE;

def loadPointCloud(filename):
    pcloud = np.loadtxt(filename, skiprows=1);
    plist = pcloud.tolist();
    p3dlist = [];
    for x,y,z in plist:
        pt = POINT3D(x,y,z);
        p3dlist.append(pt);
    return pcloud.shape[0], p3dlist;

goicp = GoICP();
Nm, a_points = loadPointCloud('./Testing/Data/model_bunny.txt');
Nd, b_points = loadPointCloud('./Testing/Data/data_bunny.txt');
goicp.loadModelAndData(Nm, a_points, Nd, b_points);
goicp.setDTSizeAndFactor(300, 2.0);
goicp.BuildDT();
goicp.Register();
print(goicp.optimalRotation()); # A python list of 3x3 is returned with the optimal rotation
print(goicp.optimalTranslation());# A python list of 1x3 is returned with the optimal translation

Credits

https://github.com/aalavandhaann/go-icp_cython https://github.com/yangjiaolong/Go-ICP

Preferred Branching Workflow for Contributions.

We welcome contributions to this project. Please use the following workflow.

  1. Raise issue in this project's Github Issue Tracker.
  2. Fork repository.
  3. Create a feature branch called <issue-number>-<some-short-description> replacing <issue-number> with the Github issue number and <some-short-description> with your description of the thing you are implementing.
  4. Code on that branch.
  5. Push to your remote when ready.
  6. Create pull request.
  7. We will review code, suggest and required changes and merge to master when it is ready.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

scikit_surgerygoicp-0.2.2-cp38-cp38-manylinux1_x86_64.whl (113.7 kB view details)

Uploaded CPython 3.8

scikit_surgerygoicp-0.2.2-cp38-cp38-manylinux1_i686.whl (107.7 kB view details)

Uploaded CPython 3.8

scikit_surgerygoicp-0.2.2-cp38-cp38-macosx_10_9_x86_64.whl (115.8 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

scikit_surgerygoicp-0.2.2-cp37-cp37m-manylinux1_x86_64.whl (115.2 kB view details)

Uploaded CPython 3.7m

scikit_surgerygoicp-0.2.2-cp37-cp37m-manylinux1_i686.whl (107.8 kB view details)

Uploaded CPython 3.7m

scikit_surgerygoicp-0.2.2-cp37-cp37m-macosx_10_9_x86_64.whl (114.6 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

scikit_surgerygoicp-0.2.2-cp36-cp36m-manylinux1_x86_64.whl (115.2 kB view details)

Uploaded CPython 3.6m

scikit_surgerygoicp-0.2.2-cp36-cp36m-manylinux1_i686.whl (107.8 kB view details)

Uploaded CPython 3.6m

scikit_surgerygoicp-0.2.2-cp36-cp36m-macosx_10_9_x86_64.whl (114.6 kB view details)

Uploaded CPython 3.6mmacOS 10.9+ x86-64

File details

Details for the file scikit_surgerygoicp-0.2.2-cp38-cp38-manylinux1_x86_64.whl.

File metadata

  • Download URL: scikit_surgerygoicp-0.2.2-cp38-cp38-manylinux1_x86_64.whl
  • Upload date:
  • Size: 113.7 kB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for scikit_surgerygoicp-0.2.2-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 5dd95d47bb340091e6828b4a22e5f6110ef090a9291befa85d9b913da4aae80a
MD5 02324476b790ab225e8146db7316f28f
BLAKE2b-256 704807fe93706bf07e72c792607a5f33d4f6a75face283dbb7b1596774ddbaa6

See more details on using hashes here.

File details

Details for the file scikit_surgerygoicp-0.2.2-cp38-cp38-manylinux1_i686.whl.

File metadata

  • Download URL: scikit_surgerygoicp-0.2.2-cp38-cp38-manylinux1_i686.whl
  • Upload date:
  • Size: 107.7 kB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for scikit_surgerygoicp-0.2.2-cp38-cp38-manylinux1_i686.whl
Algorithm Hash digest
SHA256 92ac2549bede6ec6ddf0ab8436ed4caaf823d49b0852c2fd9d7355e7ba611884
MD5 465c9f3b91fc66686c03b449d8d8b4ac
BLAKE2b-256 ee382e89537894071d70e44096ac4d6ea24c0634bdad896acac83f2b60f92af0

See more details on using hashes here.

File details

Details for the file scikit_surgerygoicp-0.2.2-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: scikit_surgerygoicp-0.2.2-cp38-cp38-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 115.8 kB
  • Tags: CPython 3.8, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for scikit_surgerygoicp-0.2.2-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3dd768b6d09f4b6132b3f8db8317a464bfbadcfe056102ef4979530e09e7ce0d
MD5 f9338e594efda9b8738b92b0eb37145d
BLAKE2b-256 ff1bb26192f86612caffb0de70811a166623fa67eacc9b2539511ee3a66a5f16

See more details on using hashes here.

File details

Details for the file scikit_surgerygoicp-0.2.2-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: scikit_surgerygoicp-0.2.2-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 115.2 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.9

File hashes

Hashes for scikit_surgerygoicp-0.2.2-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 b141c135c404cb5fe29214c581d024adfd7941373876bdff1b6c597d5963cb93
MD5 7a1cc9f99f2fb3f6f67c359cfdb3d39a
BLAKE2b-256 5fa99ca2bdf197abeb0ddf979e6f8d33aef74a955cf83778e3458cada55f525e

See more details on using hashes here.

File details

Details for the file scikit_surgerygoicp-0.2.2-cp37-cp37m-manylinux1_i686.whl.

File metadata

  • Download URL: scikit_surgerygoicp-0.2.2-cp37-cp37m-manylinux1_i686.whl
  • Upload date:
  • Size: 107.8 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.9

File hashes

Hashes for scikit_surgerygoicp-0.2.2-cp37-cp37m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 9a24d33b2d3a03200b2d36c18b9f6b4814b826f7bd8aa2a6371350339640122c
MD5 d4fcd88b849367675eb60825a5d643e1
BLAKE2b-256 3c504b2e2d47079bba7bf1eaf5c7144bc0057d97b5818bc6349791d4cfbdb4c8

See more details on using hashes here.

File details

Details for the file scikit_surgerygoicp-0.2.2-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: scikit_surgerygoicp-0.2.2-cp37-cp37m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 114.6 kB
  • Tags: CPython 3.7m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.7.9

File hashes

Hashes for scikit_surgerygoicp-0.2.2-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 5709b8686ed36c719b84395f24a910a21a7dc3177b05f37ebf5b15dabee9f932
MD5 0bcd1dc9c7061f0e5aed2254f2889bdf
BLAKE2b-256 5bd02407029424d2a5bbce7dfa40dc1595edbf5bfcb93f9260032e3b16e533fb

See more details on using hashes here.

File details

Details for the file scikit_surgerygoicp-0.2.2-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: scikit_surgerygoicp-0.2.2-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 115.2 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.12

File hashes

Hashes for scikit_surgerygoicp-0.2.2-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 b709d3af0fef4156c8bb56358d47e7f2736aaefc8d0fa58741b656b3efbb11f3
MD5 344846c6c7a4970aebe52458cde1fa40
BLAKE2b-256 5d2fcb265eda05018da00170901464da8309c0a02d69363fabc3ac49fbab6134

See more details on using hashes here.

File details

Details for the file scikit_surgerygoicp-0.2.2-cp36-cp36m-manylinux1_i686.whl.

File metadata

  • Download URL: scikit_surgerygoicp-0.2.2-cp36-cp36m-manylinux1_i686.whl
  • Upload date:
  • Size: 107.8 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.12

File hashes

Hashes for scikit_surgerygoicp-0.2.2-cp36-cp36m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 56e77167a7d542ac6fb3c5d8390c202c792605ea08dab89a4bfcda1fcec7ac88
MD5 67d93522ce9357149d1f4c9662f2bd05
BLAKE2b-256 1ff5eb315a120cc1947aa5391f4fc3e2a382c7f46252ef8fe788e9ada1f2b607

See more details on using hashes here.

File details

Details for the file scikit_surgerygoicp-0.2.2-cp36-cp36m-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: scikit_surgerygoicp-0.2.2-cp36-cp36m-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 114.6 kB
  • Tags: CPython 3.6m, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.12

File hashes

Hashes for scikit_surgerygoicp-0.2.2-cp36-cp36m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1b59e48251305f19a28a01d3adc326251328ed064eb5957291f7b040d3c56b61
MD5 685267eeb4f8b8ef697423c08864fc60
BLAKE2b-256 28d2b40049c6fe0134f5dcb75f3508dc21ace8288ace12711f6efe2ae4490730

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