h-signature

Library for computing the h-signature as defined by https://www.roboticsproceedings.org/rss07/p02.pdf

https://github.com/um-arm-lab/h-signature

Science Score: 75.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
    Organization um-arm-lab has institutional domain (arm.eecs.umich.edu)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.8%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Library for computing the h-signature as defined by https://www.roboticsproceedings.org/rss07/p02.pdf

Basic Info
  • Host: GitHub
  • Owner: UM-ARM-Lab
  • License: mit
  • Language: C++
  • Default Branch: master
  • Size: 84 KB
Statistics
  • Stars: 0
  • Watchers: 10
  • Forks: 0
  • Open Issues: 0
  • Releases: 3
Created almost 3 years ago · Last pushed almost 3 years ago
Metadata Files
Readme License Citation

README.md

H-Signature

A C++ or Python Library for computing the h-signature as defined by Bhattacharya, Likhachev, and Kumar in their RSS Paper.

What is the H-signature? In the simplest case, it tells you whether two closed 3D curves are linked, or unlinked. The figure below shows some examples. Four visual examples of the H-signature

In the general case, the H-signature is computed between one closed curve $\tau$ and a skeleton of closed curves $S={S1,\dots,Sm}$. In code, each curve is a matrix of 3xN or Nx3 where N is the number of points in the curve. The H-signature is a vector (ordered list) of integers, where each element correspond to the h-signature of $\tau$ with respect to one curve in $S$.

Installation

For python:

```shell pip install h-signature

```

For C++:

```shell

The only option we offer is building from source with cmake

git clone git@github.com:UM-ARM-Lab/h-signature.git cd h-signature mkdir build

The only dependency is Eigen3

sudo apt install libeigen3-dev

Build and run tests

cd build cmake .. make ctest ```

API

There is only one function!

```python

Python with numpy

from hsignature.hsignaturenp import geth_signature

Tau is an [Nx3] numpy array and skeleton is a dict of [3xN] numpy arrays

hsig = gethsignature(tau, skeleton) print(hsig) ```

```c++ // C++ with Eigen

include

// The above header has these typedefs // typedef Eigen::Matrix3Xd Loop; // typedef std::map Skeleton;

// And this is the function, that's it! HSignature gethsignature(Loop const &loop, Skeleton const & skeleton); ```

Reference

DOI

If you use this package in your research, consider citing @software{mitrano_hsignature_2023, author = {Peter Mitrano}, title = {{h-signature library}}, year = {2023} }

Owner

  • Name: The Autonomous Robotic Manipulation Lab
  • Login: UM-ARM-Lab
  • Kind: organization
  • Location: University of Michigan

The Autonomous Robotic Manipulation Lab studies motion planning, manipulation, and human-robot collaboration.

Citation (CITATION.cff)

cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: Mitrano
    given-names: Peter
    orcid: https://orcid.org/0000-0002-8701-9809
title: H-Signature
doi: 10.5281/zenodo.8374620
version: v0.0.5
date-released: 2023-10-25

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels