Skip to main content

Twist-n-Sync. Time synchronization algorithm that employs IMU gyroscope data

Imagine that you want to synchronize two smartphones1 for stereoscopic (or multiscopic) photo or video shutting with microseconds accuracy and precision. Or you need to synchronize Azure Kinect DK depth frames2 with smartphone frames.

Twist-n-Sync is a time synchronization algorithm that can solve the time sync issues by employing gyroscope chips widely available in millions of comsumer gadgets.

Another benefical usage of the package is synchronization of diverse motion capture (mocap) systems (OptiTrack, Vicon) that provide ground truth data for robot navigation and state estimation algorithms (Wheeled, Visual, Visual-Inertial Odometry and SLAM).

Installation

pip install twistnsync

Usage examples

WIP: The python notebook examples in examples folder provide comprehensive mini-tutorials how to use the code:

References

In case of usage of the materials, please, refer to the source and/or publications:

1

@article{faizullin2021twist,
  title={Twist-n-Sync: Software Clock Synchronization with Microseconds Accuracy Using MEMS-Gyroscopes},
  author={Faizullin, Marsel and Kornilova, Anastasiia and Akhmetyanov, Azat and Ferrer, Gonzalo},
  journal={Sensors},
  volume={21},
  number={1},
  pages={68},
  year={2021},
  publisher={Multidisciplinary Digital Publishing Institute}
}

2

@ARTICLE{9709778,
  author={Faizullin, Marsel and Kornilova, Anastasiia and Akhmetyanov, Azat and Pakulev, Konstantin and Sadkov, Andrey and Ferrer, Gonzalo},
  journal={IEEE Sensors Journal}, 
  title={SmartDepthSync: Open Source Synchronized Video Recording System of Smartphone RGB and Depth Camera Range Image Frames with Sub-millisecond Precision}, 
  year={2022},
  volume={},
  number={},
  pages={1-1},
  doi={10.1109/JSEN.2022.3150973}
}

Credits

This package was created with Cookiecutter and the zillionare/cookiecutter-pypackage project template.

Metadata

Release files for twistnsync 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for twistnsync 0.3.0
File Size Uploaded Provenance Actions
twistnsync-0.3.0.tar.gz 5.7 kB Without provenance Details for twistnsync-0.3.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for twistnsync 0.3.0
File Interpreter ABI Platform Actions
twistnsync-0.3.0-py3-none-any.whl Python 3 none any Details for twistnsync-0.3.0-py3-none-any.whl

Total release size: 11.1 kB

Release files / twistnsync-0.3.0.tar.gz

Download URL twistnsync-0.3.0.tar.gz
Size 5.7 kB
Tags Source
SHA-256 checksum
How to use checksums
e20a259a7ec626773adb8677b99d9ddd79e2a591433aa206cd8fffefc4c253b7
BLAKE2b-256 checksum
How to use checksums
26045dd15c075c8e49771fbff26a8acfdcd5768e65dc36aa969f4cb2b5f55643
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

Release files / twistnsync-0.3.0-py3-none-any.whl

Download URL twistnsync-0.3.0-py3-none-any.whl
Size 5.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c3f49ccee672af93bdd7a2b33afedf71a933ae8d9ab18a7df905f4dabd27e831
BLAKE2b-256 checksum
How to use checksums
7a3c4907901d0486c97912eb3173cae4c55d3f534e9563e618ccbf3d5471dec5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

Security for twistnsync 0.3.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page