As you can see in these images, I am testing the plane detection in different parts of this room. With the lighter floor, it has no problem detecting the floor, but the darker sections of carpet have never been detected or labeled as a floor plane. I just find it hard to believe that it cannot detect it at all. It doesn't seem that dark in comparison to the other surface?
I read through the documentation including this one that outlines what the ML2 is looking for in planes.
Is there anything I can do?
Thank you for reaching out regarding this issue. I will be sure to bring this to our teams attention. Would you mind sharing a few more details with us?
- Unity Editor version
- ML2 OS Version
- ML SDK Version
- Development OS (e.g. Mac, Windows)
Also, are you moving around while scanning the space?
Unity Editor version : 2022.3.5f1
ML2 OS version : 1.4.0-dev2 (secure)
MLSDK version : v1.3.0
Host OS : Windows
These pictures are directly from the MagicLeap_Examples unity project that showcases all of the headset's features. I have not modified any programming or game objects at all.
When I first scanned the space, I stood still and only rotated my head. After scanning the space, I localized it, then launched the app. I started the "planes" example scene and the photos is what I saw. No matter where I walked or how much I changed my angle or position, a plane was never detected in the dark carpet area.
Unfortunately IR time of flight (depth) sensors struggle with getting trackable features on dark carpeted surfaces. This is a pretty common issue in computer vison because the carpet does not reflect enough of the infrared light for the sensor to pick it up. If you could explain a bit of the use case you are working on we might be able to give you some suggestions.