pytorchse3
Install
pip install pytorchse3
How to use
import torch
from pytorchse3.se3 import se3_exp_map, se3_log_map
Here are two transformation matrices for which PyTorch3D recovers the
wrong log map (see this
issue).
T = torch.Tensor(
[
[
[-0.7384057045, 0.3333132863, -0.5862244964, 0.0000000000],
[0.3520625532, -0.5508944392, -0.7566816807, 0.0000000000],
[-0.5751599669, -0.7651259303, 0.2894364297, 0.0000000000],
[-0.1840534210, -0.1836946011, 0.9952554703, 1.0000000000],
],
[
[-0.7400283217, 0.5210028887, -0.4253400862, 0.0000000000],
[0.5329059958, 0.0683888718, -0.8434065580, 0.0000000000],
[-0.4103286564, -0.8508108258, -0.3282552958, 0.0000000000],
[-0.1197679043, 0.1799146235, 0.5538908839, 1.0000000000],
],
],
).transpose(-1, -2)
pytorchse3 computes the correct log map.
log_T_vee = se3_log_map(T)
log_T_vee
tensor([[ 1.1319, 1.4831, -2.5131, -0.8503, -0.1170, 0.7346],
[ 1.1288, 2.2886, -1.8147, -0.8812, 0.0367, -0.1004]])
Exponentiating the log map recovers the original transformation matrix with 1e-4 absolute error.
eq_T = se3_exp_map(log_T_vee)
assert torch.allclose(T, eq_T, atol=1e-4)
T - eq_T
tensor([[[-9.2983e-06, -2.3842e-07, 1.1504e-05, 2.9802e-08],
[-5.1558e-06, 8.5235e-06, -8.6427e-06, -2.9802e-08],
[ 8.6427e-06, -6.4373e-06, 4.4703e-07, 0.0000e+00],
[ 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00]],
[[ 8.0466e-06, 1.6212e-05, 6.0201e-06, -3.7253e-08],
[ 4.5896e-06, 8.6352e-06, 3.3975e-06, 2.9802e-08],
[-8.5831e-06, 1.0610e-05, -1.6809e-05, 0.0000e+00],
[ 0.0000e+00, 0.0000e+00, 0.0000e+00, 0.0000e+00]]])
References
pytorchse3implements log/exp maps defined in Section 2 and 3 of Ethan Eade’s tutorial- Our numerically stable
so3_log_mapis a PyTorch port ofpytransform3d - Taylor expansions for some coefficients in
se3_log_mapare taken fromH2-Mapping
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pytorchse3-0.0.3.tar.gz
(6.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pytorchse3-0.0.3.tar.gz.
File metadata
- Download URL: pytorchse3-0.0.3.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/4.0.2 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ecda68926ea06ab746172db588d0ed7bd87793c25346ce7a52c8a6631302d87b
|
|
| MD5 |
0faad13c18c1de1cbd3caa489d6bf1e1
|
|
| BLAKE2b-256 |
0cfdaf35bf585b82124c31ae8aa2fea4c20ed5e0e113d985156d9fa60bc04ce8
|
File details
Details for the file pytorchse3-0.0.3-py3-none-any.whl.
File metadata
- Download URL: pytorchse3-0.0.3-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/4.0.2 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
07cdca16dcdf3561d1be2fe9f586262d21f84c3291b02a097c630eec7e2fac78
|
|
| MD5 |
710d2861f6ef5f7e2b95beafba875a4a
|
|
| BLAKE2b-256 |
c50f3c7770978ece4c9947da3d60636d9d812cc470007eed69e5c4dc94741f58
|