Code Monkey home page Code Monkey logo

orb-slam-expts's Introduction

Experiments with ORB-SLAM3 and emscripten

Experiments to attempt to get ORB-SLAM3 working with emscripten.

Please use the binvoc branch of my own fork of ORB-SLAM3

Log

2022-08-30

Memory alignment issue seems to be fixed, thanks to the PROXY_TO_PTHREAD flag, which runs main() on a separate thread. Thanks to @carlodek for this suggestion. Not sure why it fixes the issue though!

2022-06-10

Able to test on an actual Android device now, however some ongoing problems:

  • memory alignment issue, see the Emscripten Port issue in ORB-SLAM2 repo. This should be fixable once the issue below is fixed...
  • still having problems with initialising tracking on a mobile device (works better on a desktop), even after updating camera parameters (currently using params output from OpenCV Android calibrator sample).

2021-12-12

Now starting to get tracking working. Added log messages to ORB-SLAM3 fork to identify causes of initialisation failure. Had to remove the time interval check win Tracking::Track() - not sure what impact that has. When two views are obtained, currently an unaligned memory access error occurs. Not sure of the cause of this at present.

2021-12-05

Using binary vocabulary file, now loads in 2s compared to more than 10 minutes :-)

2021-12-04

Got ORB loading. Things to note:

  • the .data file generated by emscripten needs to be copied from the wasm directory to the project root. This can probably be fixed with some configuration but this is on the todo list.

  • note the security settings for the headers in .htaccess. These are necessary to allow SharedArrayBuffer, which is necessary for threading.

orb-slam-expts's People

Contributors

nickw1 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

orb-slam-expts's Issues

What is Module a refrence to?

I'm getting:

Uncaught ReferenceError: Module is not defined
at passToWasm (index.js:64)
at sendCanvas (index.js:58)
at processVideo (index.js:47)

I'm largely unfamiliar with wasm, what is a library or what is Module referencing?

Can I know the whole process?

First,Sorry for my poor english.
Can i know:
Compile the instructions and parameters of all dependent libraries through emscripten In the whole process?
I also used emscripten.
In my understanding, EMCC has many parameters
Maybe you can provide SH scripts or a sequence of instructions?

GetWorldPos error

I'm very interested in your project. What's your current progress?

I ran your project and found the card in CV:: mat worldpos = points [i] - > getworldpos();

The console then prints the following error

RuntimeError: Aborted(segmentation fault)

Can you tell me something about the progress of debugging

Currrent state

Hi

I'm also looking for compile orb-slam into wasm.
What is the current state of this build?
And can you provide some sort of tutorial about what you have done so far?

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.