jeromeetienne / AR.js

Efficient Augmented Reality for the Web - 60fps on mobile!
MIT License
15.8k stars 2.22k forks source link

Flat surface detection #487

Closed bitbythecron closed 4 years ago

bitbythecron commented 5 years ago

Is your feature request related to a problem? Please describe. It would be nice if AR.js could be used to detect flat surfaces (horizontal or vertical) and provide some form of bounding box or geometry w/ coordinates for where these surfaces exist.

Describe the solution you'd like Provided above

Describe alternatives you've considered Trying to roll my own based on some 3d recon libraries

Additional context N/A

janpio commented 5 years ago

AR.js is pretty much a marker recognition thing, so this is most probably out of scope.

But yes, it would be nice if there was a nice way to do this on the web platform.

bitbythecron commented 5 years ago

Thanks @janpio any libraries (JS or otherwise) you can recommend for flat surface detection? Maybe the artoolkit that AR.js is based on?

janpio commented 5 years ago

The reason AR.js only support markers and these barcodes it because artoolkitx only supports these as far as I know.

There is some "NFT - Natural Feature Tracking" - but I don't know exactly how this works and if it can be used together with AR.js: https://github.com/artoolkitx/artoolkitx/wiki/Creating-and-using-NFT-markers - it might not be available in the Javascript bindings that AR.js uses: https://github.com/artoolkitx/jsartoolkit5

droid001 commented 5 years ago

Your best bet so far is to get an ARCore compatible Android device, turn on smoe flags in Chrome and check out this page. The above example only works with ChromeDev version 70-72. Sweet while it lasted.

commentatorboy commented 5 years ago

Perhaps take a look at: https://youaugment.com/ or https://github.com/KhronosGroup/OpenXR-SDK

thor-brickman commented 5 years ago

There is some hope in this, perhaps: https://trackingjs.com/

commentatorboy commented 5 years ago

Since this is outside of the scope of this project should someone not close this? A related issue is this: https://github.com/jeromeetienne/AR.js/issues/544

Joshua-Madrid commented 4 years ago

What would need to be done to get this added? what is the code use to take a video and detect the lines and then assume the surface? I looked at trackingjs but it seems to no longer be working. Although did get me thinking can you detect something and then have the 3D object simple show on that thing?

fuleinist commented 3 years ago

https://www.8thwall.com/8thwall/placeground-aframe found this