-
Notifications
You must be signed in to change notification settings - Fork 25
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
Support for GTSAM 4.1+, and make installable through pip #6
Conversation
When is this going to be merged? I want to install gtsam_quadrics and I have gtsam 4.1.x already installed. If this merge is gonna be soon, I can wait for installing gtsam_quadrics. |
Intention is for this merge to be in within the next week or so @dishank-b. When it is done you will be able to simply Note though, that this will link against an included version of GTSAM 4.1 (see the submodule in this branch). At this stage we don't have direct plans to support using an already installed version instead. We're always curious about user use-cases. Will you be able to achieve what you need using the bundled GTSAM 4.1 instead of your manually installed copy? Or is there a reason you need the already installed version? If you're itching to get up and running, this should theoretically let you use a system version of GTSAM:
|
@btalb Thanks for replying. I do not necessarily want to use system gtsam, it's just that gtsam is already installed and I don't want to have two duplicates of gtsam if gtsam_quadrics install one manually to avoid dependency issues if there will be any. I have to get going on my project so I guess I will just start with what you suggested to install manually. Thanks again. |
@btalb Also, I don't know if you will be able to help but I have one more query. Is there a way to get the full the code for the paper "QuadricSLAM: Dual Quadrics from Object Detections as Landmarks in Object-oriented SLAM"? I understand that this repository is for this paper, but it is missing many components from the paper such as object detector for TUM dataset and the front-end of the SLAM system. I would be really grateful if I can get the code of the paper to reproduce the slam system. Thanks! |
In that case, these instructions should get you into a working state with Python bindings: Essentially you'll just need to:
Looking through the README in this branch should help you out: https://github.com/best-of-acrv/gtsam-quadrics/tree/feature/gtsam-4.1 In terms of full code for what was done in the paper, that's one @lachlan-nicholson will be able to answer best. |
Also I am on MacOS Catalina. |
I tried to use CMake to install, but I get the following error during build:
Error are these:
|
This has only been tested on Ubuntu 20.04 so far @dishank-b , though in theory it shouldn't be restricted to that. The The CMake error appears to be due to Boost. I'll need some more details before I can try to help:
|
thanks for replying again. Yeah, I figured it was due to boost version mismatch. I just made changes in two lines which were giving error in the source code, as mentioned here https://stackoverflow.com/questions/15359553/stdbind-compiling-unexpected-undeclared-identifier-error-in-visual-studio Basically in the boost function call, replaced It solved my issue, I was able to build successfully and able to use gtsam_quadrics. The only problem is that now when I import right now I am able to import Thanks for all the help. :) |
@dishank-b Hi. I am recreating this project recently, but all three installations for Python are failed. |
@1184919257 The error you mentioned only explains that the build has failed. The build will fail if cmake and boost are not installed. You can install these packages with the following: |
@lachlan-nicholson Thanks for reply. My environment configurations are
I'm not sure if this is an environment version issue. |
Pull request for the following @lachlan-nicholson :
gtsam
as a submodule in the root directory, tracking the latest commit ondevelop
(newer than 4.1rc)gtsam_quadrics/
fromgtsam
togtsam_quadrics
gtsam_quadrics.h
togtsam_quadrics/qtsam_quadrics.i
andgtsam_quadrics/gtsam_quadrics.tpl
for PyBind11CMakeLists.txt
to use newpybind_wrap()
functionalityCMakeLists.txt
was changed to have a rigid link to thegtsam
submodule, and its bundled version ofgtwrap
BUILD_SHARED_LIBS
setting (Python packages require static libraries)CMakeLists.txt
cmake_uninstall.cmake.in
target (was getting in the way of default uninstall target)pyproject.toml
,setup.py
,MANIFEST.in
)Known issues:
PriorFactor
class didn't seem to work in the bindings (see comments ingtsam_quadrics/gtsam_quadrics.i
import gtsam
beforeimport gtsam_quadrics
works (haven't yet dug into whether that's a symptom of a dependency not being declared, or an issue of how I'm linking togtsam
)CMakeLists.txt
for now, I'm going to move onto them nextCan you give this a look over, and let me know of any regressions I haven't picked up on? Probably easiest to merge this in, then I'll address any of your feedback in future commits.