Skip to main content

No project description provided

Project description

dlkinematics

Deep Learning Kinematics

Differentiable Forwad Kinematics for TensorFlow and Keras

Supported Joint Types:

  • Fixed
  • Revolute
  • Continious
  • Prismatic
  • Floating (not coverd by unit tests)
  • Planar (not coverd by unit tests)

Installation

Install from source

$ pip3 install -e git+https://github.com/lumoe/dlkinematics.git@main#egg=DLKinematics

Install from PyPi

Coming soon

Usage:

import tensorflow as tf
from dlkinematics.urdf import chain_from_urdf_file
from dlkinematics.dlkinematics import DLKinematics

# Load URDF
chain = chain_from_urdf_file('data/human.urdf')

# Create DLKinematics
dlkinematics = DLKinematics(
   chain,
   base_link="human_base",
   end_link="human_spine_2",
   batch_size=2)

# Joint configuartion
thetas = tf.Variable([1., 2., 3., 4.], dtype=tf.float32)

# Forward pass
with tf.GradientTape() as tape:
    result = dlkinematics.forward(thetas)

print(result)
print(tape.gradient(result, thetas))

As Keras Layer

from dlkinematics.training_utils import ForwardKinematics
from tensorflow import keras
import tensorflow as tf

model = keras.Sequential()

FK_layer = ForwardKinematics(
   urdf_file = 'path/to/urdf',
   base_link = 'link0',
   end_link = 'linkN',
   batch_size = 2)

model.add(FK_layer)
# Output shape of FK_layer is (batch_size, 4, 4)

Run tests

The tests use ROS packages to validate the result of the dlkinematics module.

  1. Build the docker image for tests:
    $ docker build -t dlkinematics_tests .

  2. Start the container in the root folder of the project:
    $ docker run -it -v $PWD:/work dlkinematics_tests python3 -m pytest

  3. Execute all tests:
    $ docker run -it -v $PWD:/work dlkinematics_tests python3 -m pytest
    Execute only a single testfile:
    $ docker run -it -v $PWD:/work dlkinematics_tests python3 -m pytest tests/test_prismatic.py

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

dlkinematics-0.1.0rc2.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

dlkinematics-0.1.0rc2-py3-none-any.whl (22.0 kB view details)

Uploaded Python 3

File details

Details for the file dlkinematics-0.1.0rc2.tar.gz.

File metadata

  • Download URL: dlkinematics-0.1.0rc2.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.8.10 Linux/5.8.13-050813-generic

File hashes

Hashes for dlkinematics-0.1.0rc2.tar.gz
Algorithm Hash digest
SHA256 60fd89e455e1c4204e47c335828aa718c207d7e7e80ab5db57a25b8cd63a338e
MD5 5606c6fe1719e35283c51df0e5b96869
BLAKE2b-256 c1d03d7dffc511d65cdb2834e429c363f35bc47f5f688414b351ea441c24c12d

See more details on using hashes here.

File details

Details for the file dlkinematics-0.1.0rc2-py3-none-any.whl.

File metadata

  • Download URL: dlkinematics-0.1.0rc2-py3-none-any.whl
  • Upload date:
  • Size: 22.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.8.10 Linux/5.8.13-050813-generic

File hashes

Hashes for dlkinematics-0.1.0rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 f535818a777ac13ad7394ca80ec71f13ea1b49797905ee6d2538e1e874151297
MD5 443bb511f90f98be802fa460cf9ec962
BLAKE2b-256 a40b180acf72ad5ac0543af5f0b9da9ba73a7ce9910a7ab69bc07a996699cc79

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page