Scene Understanding for AR
Scene understanding for AR maps floors, walls, and occluders so virtual chairs sit on floors and hide correctly behind real sofas.
Why Does This Exist?
Unanchored AR floats: chairs hover, labels swim, hands pass through tables. Rooms vary in light and clutter while phones vary in sensors. One frame depth jitters too much to trust.
Scene understanding for AR exists to stabilize the world model. Input is RGB plus depth or motion frames. Output is planes, mesh, lighting, and anchors. The headset frame is AR and VR; depth is depth estimation. Pixel labels are semantic segmentation.
Use it when virtual content must sit, hide, and light like real objects. Use face filters alone when playfulness outranks placement truth.
Think of It Like This
Taping a poster with a level and stud finder
You find the stud, level the poster, check the door swing will not tear it, and note window light so colors match. Skipping one step leaves a crooked poster torn by Friday.
Planes are the level line. Mesh is the stud map. Lighting is the window note. The analogy stops at motion: posters stay put while users pace, so anchors must survive relocalization that tape never faces.
How It Actually Works
Fit dominant planes with robust regression over depth points, keep those with residual under cm and wide support. Build a coarse mesh for occlusion, estimate one directional light plus ambient for shading match, then attach anchors to planes, not raw camera poses. Contract is frames in, planes plus mesh plus light out. A floor fit at cm residual holds a chair within cm across a walk. A cm fit lets it sink cm and slide.
Worked example
A living room scan gives floor points. Robust fit finds a plane with cm root mean residual and percent inliers. A virtual chair leg at that plane stays planted while the user circles m. A competing fit on rug plus floor mixes heights to cm residual; the same chair sinks cm into the rug and drifts cm sideways. Occlusion test against the sofa mesh hides percent of the chair correctly when viewed from the door.
Watch Out For
Textureless floors that invent planes
Blank rugs return sparse depth with cm noise. The fitter hallucinates tilt. The symptom is chairs leaning like tired tourists. Fix it with wider baselines, inertial priors, and by refusing anchors when inliers fall short.
Lighting ignored until compositing looks fake
A noon estimate used at dusk paints noon shading on dusk rooms. The symptom is glowing objects users call stickers. Fix it by re estimating light per session and dimming with exposure.
The Quick Version
- AR scene models hold planes, mesh, light, and anchors.
- Robust fits under cm residual make sittable floors.
- The fixture holds at cm and sinks at cm residual.
- Occlusion mesh hides virtual parts behind real ones.
- Blank floors and stale light are the first failures to gate.