alanross / AlvaAR

World tracking for WebAR. A Javascript library for Augmented Reality to run SLAM in the browser.
GNU General Public License v3.0
362 stars 76 forks source link

About AlvaAR and its development. #1

Open kalwalt opened 1 year ago

kalwalt commented 1 year ago

Hi @alanross thanks for this very interesting project, I am a fan of WebAR, me and @ThorstenBux are the owners of WebARKit. I tested your examples and i'm wondering if i can do something to improve them. With the video example i got a decent fps instead i got less fps with the camera example. I also looked quickly at your code and saw that it is based on OpenCV and other libs compiled to WASM with emscripten. In the past @nickw1 started to do a project in this topic, maybe if we join forces we can improve it.

alanross commented 1 year ago

Hi @kalwalt, Thanks for reaching out! There are several things I want to improve that will increase speed and robustness. Also currently many settings are hardcoded that impact both. Let me know what your thoughts are. I'd be happy to chat.

kalwalt commented 1 year ago

Thank you @alanross for the answer, nice to know, which settings are hard coded?

ThorstenBux commented 1 year ago

Hi @alanross, great project that you have put together. @kalwalt thanks for thinking of me and pinging me on this one. Would love to explore options. I didn't get it to run yet cause python doesn't want on my Mac and I didn't have the time to setup the certs and stuff to run it without. But looking forward to. Would be a game changer if we can get this one running performantly and easy accessible. (Thinking R3F component :) )

alanross commented 1 year ago

@kalwalt you can play around with settings in here in state.hpp. You'll see that changing values there has quite a measurable effect on speed and quality.

nickw1 commented 1 year ago

@alanross this does look very interesting indeed.

I have started to have a play with this idea (by attempting to port ORB-SLAM to the web) but have had insufficient time to get very far with it.

Will have a go with it myself (time permitting, of course...)

nickw1 commented 1 year ago

@kalwalt thanks for informing me of this btw! :-)

kalwalt commented 1 year ago

@kalwalt thanks for informing me of this btw! :-)

You are welcome!

nickw1 commented 1 year ago

Just a quick update: I tried out the AlvaAR demo out-of-doors today, in poor light conditions (9am in early January in the UK, I think you can imagine what it would be like) and did manage to achieve plane detection and realistic object placement intermittently on roads and pavements.

So some real possibilities for outdoor AR use, I can imagine - particularly as I would guess the detection would be much better in the spring and summer months and/or locations further south.

@alanross thanks again!

alanross commented 1 year ago

Thanks for sharing @nickw1. There's a few things I see improving the performance of the algorithm doing its work on a January morning in the UK. Try compiling the project with the Clahe flag on, it will handle varying lighting condition way better. It is off by default as it reduces the speed. The other improvement will be IMU support. I'm currently experimenting with finding a robust way to fuse the motion data with the slam pose estimation.

ThorstenBux commented 1 year ago

@alanross that would be amazing if we could combine the IMU with the optical tracking. Let me know if you need any kind of help with that.

nickw1 commented 1 year ago

Thanks for sharing @nickw1. There's a few things I see improving the performance of the algorithm doing its work on a January morning in the UK. Try compiling the project with the Clahe flag on, it will handle varying lighting condition way better. It is off by default as it reduces the speed. The other improvement will be IMU support. I'm currently experimenting with finding a robust way to fuse the motion data with the slam pose estimation.

@alanross many thanks for those tips. I am planning on investigating trying to combine AlvaAR and location-based AR.js to produce realistic placement of geographical objects for outdoor AR use.

luoxz-ai commented 11 months ago

How to separate the scanning scene and model generation into two steps to achieve large scene recognition. Now the recognition area is limited, and it automatically generates the model, which is very uncontrollable.