{"id":15035896,"url":"https://github.com/strasdat/sophus","last_synced_at":"2025-04-09T11:03:42.794Z","repository":{"id":1993447,"uuid":"2926200","full_name":"strasdat/Sophus","owner":"strasdat","description":"C++ implementation of Lie Groups using Eigen.","archived":false,"fork":false,"pushed_at":"2024-07-06T18:06:55.000Z","size":267745,"stargazers_count":2044,"open_issues_count":8,"forks_count":596,"subscribers_count":74,"default_branch":"main","last_synced_at":"2024-10-29T15:08:06.277Z","etag":null,"topics":["2d","3d","c-plus-plus","computer-vision","geometry","graphics","math","python","robotics"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/strasdat.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2011-12-06T16:48:30.000Z","updated_at":"2024-10-28T19:10:29.000Z","dependencies_parsed_at":"2023-07-05T18:31:08.314Z","dependency_job_id":"c89a1142-ea86-4f3f-9086-9a20704c7986","html_url":"https://github.com/strasdat/Sophus","commit_stats":{"total_commits":350,"total_committers":46,"mean_commits":7.608695652173913,"dds":"0.34857142857142853","last_synced_commit":"61f9a9815f7f5d4d9dcb7f4ad9f4f42ab3563108"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/strasdat%2FSophus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/strasdat%2FSophus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/strasdat%2FSophus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/strasdat%2FSophus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/strasdat","download_url":"https://codeload.github.com/strasdat/Sophus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248027406,"owners_count":21035594,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2d","3d","c-plus-plus","computer-vision","geometry","graphics","math","python","robotics"],"created_at":"2024-09-24T20:29:43.535Z","updated_at":"2025-04-09T11:03:42.772Z","avatar_url":"https://github.com/strasdat.png","language":"C++","readme":"\u003cdiv align=\"center\"\u003e\n\n\u003ca href=\"https://github.com/strasdat/Sophus/actions/workflows/main.yml\"\u003e\n  \u003cimg src=\"https://github.com/strasdat/Sophus/actions/workflows/main.yml/badge.svg\"\n       alt=\"Build CI Badge\"/\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/strasdat/Sophus/actions/workflows/pybind.yml\"\u003e\n\u003cimg src=\"https://github.com/strasdat/Sophus/actions/workflows/pybind.yml/badge.svg\"\n       alt=\"PyBind CI Badge\"/\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/strasdat/Sophus/actions/workflows/sympy.yml\"\u003e\n\u003cimg src=\"https://github.com/strasdat/Sophus/actions/workflows/sympy.yml/badge.svg\"\n       alt=\"Sympy CI Badge\"/\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/strasdat/Sophus/blob/sophus2/LICENSE.txt\"\u003e\n  \u003cimg src=\"https://img.shields.io/github/license/elangosundar/awesome-README-templates?color=2b9348\"\n       alt=\"License Badge\"/\u003e\n\u003c/a\u003e\n\n\u003c/div\u003e\n\n\u003ch1 align=\"center\"\u003e Sophus \u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ci\u003e 2d and 3d Lie Groups for Computer Vision and Robotics \u003c/i\u003e\n\u003c/p\u003e\n\nThis is a c++ implementation of Lie groups commonly used for 2d and 3d\ngeometric problems (i.e. for Computer Vision or Robotics applications).\nAmong others, this package includes the special orthogonal groups SO(2) and\nSO(3) to present rotations in 2d and 3d as well as the special Euclidean group\nSE(2) and SE(3) to represent isometries also known as rigid body transformations\n(i.e. rotations and translations) in 2d and 3d.\n\n## Status\n\n\n*Sophus (aka Sophus 1) is in maintenance mode. As of June 2024, there is no\nplane to add new larger features and future PRs will likely be limited to bug\nfixes, small improvements and toolchain updates.*\n\nHowever, next incarnations of Sophus are under development:\n\n\n - sophus2 is the next c++ iteration of Sophus and is a complete rewrite.\n   In addition to the Lie groups, it includes a more geometric concepts\n   such unit vector, splines, image classes, camera models and more.\n\n   It is currently hosted as part of the [farm-ng-core repository](https://github.com/farm-ng/farm-ng-core/tree/cygnet-dev)\n   and has likely only a few community users. While the code itself is in a good shape, there are\n   no good build instructions yet. Hopefully, this will change in the near future.\n\n\n - sophus-rs is a Rust version of Sophus. Similar to sophus2, it includes a more geometric concepts\n   such unit vector, splines, image classes, camera models and more. Also it includes an early and\n   experimental version of non-linear least squares optimization library (similar to Ceres, g2o,\n   etc.).\n\n   sophus-rs has likely only a few community users so far, but should be easy to build and\n   experiment with - of course being written in Rust.\n\n   https://github.com/sophus-vision/sophus-rs\n\n   https://crates.io/crates/sophus\n\n\n\nHow to build Sophus from source\n-------------------------------\n\nSophus requires a C++17 compiler (though older versions build with C++14).\n\nSophus is tested on Linux and macOS. It also worked on Windows in the past, however there is\ncurrently no CI for Windows, so it might require some smaller patches to build on Windows.\n\nThere are no comprehensive build instructions but inspecting the install [scripts](scripts/)\nas well as the [main.yml](.github/workflows/main.yml) file should give you a good idea how to\nbuild the required dependencies.\n\nInstalling Sophus through vcpkg\n-------------------------------\n\nYou can build and install Sophus using [vcpkg](https://github.com/Microsoft/vcpkg/) dependency manager::\n\n```\ngit clone https://github.com/Microsoft/vcpkg.git\ncd vcpkg\n./bootstrap-vcpkg.sh\n./vcpkg integrate install\n./vcpkg install sophus\n```\n\nThe Sophus port in vcpkg is kept up to date by Microsoft team members and community contributors.\nIf the version is out of date, please [create an issue or pull request](https://github.com/Microsoft/vcpkg)\non the vcpkg repository.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstrasdat%2Fsophus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstrasdat%2Fsophus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstrasdat%2Fsophus/lists"}