Scheduling Level of Detail with guaranteed Quality and Cost W. Pasman, F. W. Jansen Delft University of Technology
UbiCom mobile AR
Latency Layering Optical AR -> Low latency (10ms target for our system) on low-power headset -> Latency layering
Low-Latency Rendering Render just ahead of rasterbeam Voodoo2 3D game card measured latency 8.5ms
Dynamic Simplification Dynamic LoD generation in backbone Maximize perf/cost ratio in headset.
Mathematical model Estimate link and CPU load, memory usage, lifetime of objects, etc Est screenspace error derived from geometric distortions D=0.001 R=1m
Overview Mathematical model only for single objects -> complex scenes require resource scheduling Accuracy Curves VRML Integration Measurements
Scheduling of resources Funkhouser,Séquin (1992), Mason,Blake (1997) Goal: maximize benefit within a cost budget.
Mason showed this is NP complete.. - Iterative approx giving in worst case half the maximum possible quality - Quality only known after iteration - Only feedback loop with application possible
Accuracy Curves
Each node in scene graph is assigned a curve: Accuracy curve required resources as function of accuracy target monotonically increasing. R->#polygons
Measurement of geometric distortion d as function of number of polygons n d~ C/n. Accuracy a =1/d Resource usage r = K a + R 0 -> piecewise linear function
Propagating accuracy curves Leaf nodes: accuracy curve from (1) mathematical model or (2) measurements Other nodes: propagate curve upwards through scenegraph
Resource Usage LoD node behaviour
Different end points curve 1 curve 2 Accuracy Resource usage incorrect extension incorrect minimum 2050
Complexity Target Accuracy -> Resources required Idem R -> A (so not NP-complete)
Optimizing curve updates Upto now: screenspace error=visual accuracy Refresh required if user moves Optimizations: (1) Determine range where a curve is ‘accurate enough’ as long as viewer is within the range. (2) Visual accuracy is derived from geometric distortion - which is viewpoint independent Relative acc = geometric accuracy object radius
Using relative accuracy curves Slight changes in algorithms: grouping -> 'object' diameter changes. Conversion to visual accuracy needed. Group's bbox is much closer to viewer than the individual bboxes -> switch to absolute accuracy at reasonable distance.
VRML Integration
ConicRange Accuracy curves & simplified objects: valid only in part of space. Efficient checking. d
Imposter nodes Replace children with image. Automatic refresh & calc of accuracy curve SimpleImposter { MFNodechildren[ ] SFVec2fsize2 2 SFBoolautosizetrue SFVec3fcenter0 0 0 SFBoolautocentertrue }
LOD LOD picks valid level requiring least resources
Measurements
Prototype limitations -> simple testscene Target #polygons, accuracy Measure also SNR
Constant polygon budget Constant accuracy target
Conclusions Efficient scheduling of resources Fits all simplification methods Rendering to target quality or budget driven Comes close to budget, never exceeds it. Hierarchical approach fits with VRML Many optimization possibilities
Future work Limited prototype: part of UbiCom AR system Many representations can change at once. This causes peak datarates. Extension to multiple resources Conic ranges quickly degenerate Animated objects