Giter Site home page Giter Site logo

hanmekim / scenelib2 Goto Github PK

View Code? Open in Web Editor NEW
352.0 42.0 199.0 155 KB

SceneLib2 is an open-source C++ library for SLAM originally designed and implemented by Professor Andrew Davison at Imperial College London.

License: Other

C++ 97.99% CMake 2.01%

scenelib2's Issues

Error running example

Hi,
I am trying to run examples/MonoSlamSceneLib1 on mac osx 10.10. After building sucsessfully I get this:

Tyler@Tylers-MBP ~/dev/SceneLib2/SceneLib2/BUILD/examples:  ./MonoSlamSceneLib1
    libc++abi.dylib: terminating with uncaught exception of type std::runtime_error: provided directory      doesn't exist!
    [1]    81348 abort      ./MonoSlamSceneLib1 

I have no clue what that error actually means ( what directory? ) and googling didn't help. Maybe you would know what to do with it?

update:
When I open the file by double clicking it, I also get:

Unable to open '../../data/SceneLib2.cfg' for configuration data

in addition to the above. The file is there, I can open it with vim and the permissions are 777.

Thanks for your attention,
Petr

libscenelib2.so: undefined reference to `glutBitmapCharacter'

Dear author,

When I compile the example, I have the following errors,

libscenelib2.so: undefined reference to `glutBitmapHelvetica12'

libscenelib2.so: undefined reference to `glutBitmapCharacter'

libscenelib2.so: undefined reference to `glutBitmapHelvetica18'

Could you help me?

Best Regards,
Jack

compiling error, using Pangolin headers

Hi,
when I build the project using make, I have this error:
/usr/local/include/pangolin/var/varvalue.h: In instantiation of ‘void pangolin::VarValue::Init() [with T = int]’:
/usr/local/include/pangolin/var/varvalue.h:56:14: required from ‘pangolin::VarValue::VarValue(const T&) [with T = int]’
/usr/local/include/pangolin/var/var.h:169:20: required from ‘pangolin::Var::Var(const string&, const T&, bool) [with T = int; std::string = std::basic_string]’
/home/salah/linaro/SceneLib2/SceneLib2/scenelib2/monoslam.cpp:1584:94: required from here
/usr/local/include/pangolin/var/varvalue.h:100:23: error: ‘class pangolin::VarValue’ has no member named ‘str’
this->str = (VarValueTstd::string*)this;
^
/usr/local/include/pangolin/var/varvalue.h:103:23: error: ‘class pangolin::VarValue’ has no member named ‘str’
this->str = str_ptr;

shall I change the line 108 of the header file varvalue.h

VarValueTstd::string* str_ptr;

to

VarValueTstd::string* str;

if not what should I do?

SceneLib2 build errors

Hi,

   All the previous installations before SceneLib2 worked good. After executing $cmake .. in the build directory of SceneLib2, the following errors occurred:

 Build type not set (defaults to debug)

-DCMAKE_BUILD_TYPE=Release for release
-- OpenCV ARCH:
-- OpenCV RUNTIME:
-- OpenCV STATIC: OFF
CMake Warning at /home/meng/opencv/cmake/OpenCVConfig.cmake:161 (message):
Found OpenCV Windows Pack but it has not binaries compatible with your
configuration.

You should manually point CMake variable OpenCV_DIR to your build of OpenCV
library.
Call Stack (most recent call first):
scenelib2/CMakeLists.txt:10 (FIND_PACKAGE)

CMake Error at scenelib2/CMakeLists.txt:10 (FIND_PACKAGE):
Found package configuration file:

/home/meng/opencv/cmake/OpenCVConfig.cmake

but it set OpenCV_FOUND to FALSE so package "OpenCV" is considered to be
NOT FOUND.

-- Configuring incomplete, errors occurred!
See also "/home/meng/workspace/MonoSLAM2/SceneLib2/build/CMakeFiles/CMakeOutput.log".

Could anyone provide some suggestions? Thanks in advance!

Compilation and test on Debian 9 x64

Hi Kim,
I've successfully compiled and used Scenelib2 on Debian 9 x64 following your instruction and used with the test sequence.

I've upgraded open cv version to opencv-2.4.13.6 (downloaded directly from OpenCv site) after some compilation errors on my machine (probably for the update packages installed by apt-get).

Also, to avoid some NOTFOUND cmake errors , e.g:

CMake Error: The following variables are used in this project, but they are set to NOTFOUND. ... GLUT_Xi_LIBRARY (ADVANCED) ... GLUT_Xmu_LIBRARY (ADVANCED) ...

you need to add libxmu and libxi-dev using package manager.

debian9scenelib2

Thank you for update the original scenelib. I tried to compile and use the old version without success.

Camera calibration problem

Hello.

I successfully ran the example with a handled USB webcam, but the feature tracking and pose estimation were terrible. Then I ran the example on provided image files, and it worked well. So I guess the problem is camera calibration.

I am confused with the camera parameters in SceneLib2.cfg, because usually there are 4 intrinsic matrix parameters and 5 distortion parameters but actually there are 4 intrinsic matrix parameters and 2 distortion parameters (I guess). Why ?

Besides, my camera provide 640x480 image size, and in usbcam_grabber it will be resized to 320x240. So what should I do about my camera calibration parameters ?

Classes' encapsulation.

Most of member functions and variables are currently public for convenient debugging, and they will be properly encapsulated later.

Found possible bug when normalizing quaternion

Thanks for this amazing work leading the trend for monocular SLAM!

I found two possible bugs in the part that normalizing the quaternion after EKF. Please check and correct me if I was wrong.

  • the Jacobian for dq_norm_by_dq. Specifically, in the function dqi_by_dqi() and dqi_by_dqj() in motion_model.cpp, the "qq" should all be "sqrt(qq)", according to my derivation

Monoslam_四元数归一化Jacobian

  • the quaternion is not successfully normalized in function func_xvnorm_and_dxvnorm_by_dxv in motion_model.cpp. After this function , the quaternion in state vector is still not an unit quaternion. In function "func_xvnorm_and_dxvnorm_by_dxv",
    Tempqb should be divided by its norm before passing its value to "xvnorm"

xvnormRES_(3) = Tempqb.w();
xvnormRES_(4) = Tempqb.x();
xvnormRES_(5) = Tempqb.y();
xvnormRES_(6) = Tempqb.z();
image

When I run the Scenlib2, the quaternion norm is increasing by the time, this value is close to 1 during a short time, so the performance is not infected significantly. But when running in a long period, this could be a serious problem.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.