Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch SE3.transform_from and SE3.transform_to #104

Merged
merged 108 commits into from
Mar 8, 2022

Conversation

fantaosha
Copy link
Contributor

@fantaosha fantaosha commented Mar 7, 2022

Motivation and Context

Switch SE3.transform_from() and SE3.transform_to() to be consistent with the convention of SE2.

@exhaustin @maurimo please let me know if your code has used SE3.transform_from and SE3.transform_to. Thanks!

How Has This Been Tested

Types of changes

  • Docs change / refactoring / dependency upgrade
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have completed my CLA (see CONTRIBUTING)
  • I have added tests to cover my changes.
  • All new and existing tests passed.

@fantaosha fantaosha added the bug Something isn't working label Mar 7, 2022
@fantaosha fantaosha self-assigned this Mar 7, 2022
@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Mar 7, 2022
@fantaosha
Copy link
Contributor Author

Motivation and Context

Switch SE3.transform_from() and SE3.transform_to() to be consistent with the convention of SE2.

@exhaustin @maurimo please let me know if your code has used SE3.transform_from and SE3.transform_to. Thanks!

How Has This Been Tested

Types of changes

  • Docs change / refactoring / dependency upgrade
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have completed my CLA (see CONTRIBUTING)
  • I have added tests to cover my changes.
  • All new and existing tests passed.

Neither SE3.transform_from() and SE3.transform_to() are used in Maurizio and Austin's code.

Base automatically changed from taoshaf.add_se2_transform_from to main March 8, 2022 18:06
@fantaosha fantaosha merged commit 4141386 into main Mar 8, 2022
@fantaosha fantaosha deleted the taoshaf.switch_se3_transform_from_and_to branch March 8, 2022 18:07
suddhu pushed a commit to suddhu/theseus that referenced this pull request Jan 21, 2023
* add SE3 defintions

* add initialization method

* modify test_so3.check_SO3_to_quaternion to handle cases near pi

* add SE3.hat and SE.vee

* add SE3.adjoint

* add SE3.adjoint, vee and hat

* backup before switching to taoshaf.add_SE3

* add support for single x_y_z_quaternion

* modify SO3

* Remove repeated if in SE3 construction

* SE3.exp added but not tested

* add SE3.log_map()

* SE3.exp_map() and SE3.log_map() are tested

* add SE3.compose()

* simplify test_se3.py

* modify test_se3.py

* add SE3.transform_from and SE3.transform_to

* add SE3.transform_from and SE3.transform_to

* add the projection operators to SO2, SO3, SE3

* add SE2.project

* add tests for the automatic differentiation on Lie groups

* optimizer using Lie group tangent update works

* Add comparisions for se2_inverse

* update se2_inverse.py

* use squared_norm in se2_inverse.py

* add lr_scheduler for se2_inverse.py

* Update se2_inverse.py

* add notation to se2_inverse.py

* modify LieGroupTensor

* modify se2_inverse.py

* improve the code for se2_inverse.py

* add text for se2_inv.py

* change the order of experiments in se2_inverse.py

* introduce context variables

* add set_lie_tangnet_enabled()

* add Meta AI to se2_inverse.py

* Add Lie Group Support to PyTorch Optimizers (facebookresearch#75)

* optimizer using Lie group tangent update works

* Add comparisions for se2_inverse

* update se2_inverse.py

* use squared_norm in se2_inverse.py

* add lr_scheduler for se2_inverse.py

* Update se2_inverse.py

* add notation to se2_inverse.py

* modify LieGroupTensor

* modify se2_inverse.py

* improve the code for se2_inverse.py

* add text for se2_inv.py

* change the order of experiments in se2_inverse.py

* introduce context variables

* add set_lie_tangnet_enabled()

* add Meta AI to se2_inverse.py

* change LieGroupContext to _LieGroupContext

* move theseus/geometry/utils/utils.py to theseus/geometry/utils.py

* remove utils folder

* add LieGroup.rand()

* add rand() to Vector

* add rand() to Point2D and Point3D

* add rand() to SO(3)

* fix bugs in SO3.rand()

* add SO2.rand()

* add SE2.rand()

* add SE3.rand() and change return types for rand() and exp_map()

* chagne return type for exp_map()

* add generator to LieGroup.rand()

* add PI to constants.py

* change angel and translation range

* change test_se2.py

* change test_se3.py

* change test_so2.py

* change test_SO3.py

* change examples/se2_inverse.py

* recover create_random_se2() to test_se2.py

* move project() from LieGroup to Manifold

* add is_sparse feature to Manifold._project_impl and Manifold._project_check

* change Boolean to bool

* change the range of Vector, Point2, Point3, and SE2 to [0, 1]

* add LieGroup.randn()

* add sparse project for SO2

* add sparse projection to SE2

* add sparse projection to SO3

* add sparse projection to SE3

* update test_project() in test_so3.py

* update .gitignore

* update test_projection in test_se2.py

* update test_projection in test_so3.py

* update test_projection in test_se3.py

* add _project_impl to MockVar

* add _project_impl to MockVector

* add rand_se2, randn_so3 etc.

* add project to AutoDiffFunction

* AutoDiffFunction seems to work for LieGroup

* add rand and randn to __init__.py

* fixed bugs in test_manifold.py

* add check_projection for unit tests

* update unit tests for test_projection()

* add comments to check_projection

* rename check_projection to check_projection_for_rotate_and_transform

* add check_projection_for_compose

* add tests for check_projection_for_compose

* add check_projection_for_inverse

* fix early truncation error for SE3.inverse()

* add tests for check_projection_for_inverse()

* add checks for the returns

* add mannual seed for test_so3.py

* add rand seed to test_se3.py

* fixed merge conflicts

* add value tests for SO3.rotate

* fixed bugs in SE2.transform_from and SE2.transform_to

* update test_se2.py

* switch SE3.transform_from and SE3.transform_to

* update tests

* Fixed a bug in numerical errors
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Switch SE3.transform_to and SE3.transform_from for consistency with the convention of SE2
4 participants