image quality-driven level of detail selection on a triangle budget · 2018. 6. 8. · motivation...
TRANSCRIPT
Image Quality-Driven Level of Detail Selection on a Triangle Budget
Ludvig ArlebrinkFredrik Linde
What is Level of Detail?
Level of detail (LOD) is an optimization technique [1]
From a distance the user will not be able to tell the difference between a more or less complex triangular mesh
The most common LOD technique is discrete LOD (DLOD)
Motivation
The common criterias for DLOD is often the distance from the camera or space the object occupies on the screen
Unity’s built-in approach decides LOD version based on threshold values for screen relative heights to use for the transition [2]
Our approach uses perceptual metrics to only lower the LOD version for the objects with least impact on the image quality
Research Question
How does the SSIM quality of rendered images, from a free moving camera, compare between Unity's built-in
approach to LOD and the proposed pre-computed approach?
Framework
Create a grid with four cameras in every corner in the grid
Each camera stores LOD settings for each mesh within its view frustum
Using SSIM index [3] to determine which LOD version to be used for a given camera
Models - LOD versions and triangle count
Armadillo Dragon LucyBunny Sphere
LOD 0 LOD 1 LOD 2 LOD 3 LOD 4
Armadillo 64860 32430 16214 8106 4052
Bunny 69666 34832 17416 8708 4354
Dragon 55000 27500 13750 6874 3436
Lucy 59998 29998 17120 14452 13898
Sphere 28560 14380 7140 3570 1784
Results - Pre-Processing Time
Time Unique Meshes Cameras
Scene 1 13h 25min 5 404
Scene 2 30h 11min 10 378
Scene 3 15h 39min 25 284
Scene 1 Scene 2 Scene 3
Results - Average SSIM quality
Framework Unity
Scene 1 0.999916 0.999579
Scene 2 0.989877 0.995292
Scene 3 0.988706 0.988967
Scene 1 Scene 2 Scene 3
Unity Framework
Similarity (Index) Similarity (Index) Similarity (Index)0.9
1
0.9
1
0.9
1
Imperceivable difference example
Framework: 0.999998 Unity: 0.998946
Reference
Perceivable difference example
Framework: 0.924151 Unity: 0.989815
Reference
Results - Average perceptual pixel difference
Framework Unity
Scene 1 346 px 354 px
Scene 2 29134 px 11483 px
Scene 3 32052 px 31668 px
Scene 1 Scene 2 Scene 3
Unity Framework
0
600 000
Error (Pixels)0
600 000
0
600 000
Error (Pixels)Error (Pixels)
[4]
Analysis - Scene 1 (N, N + 1) AverageFramework
Reference
Framework
Difference
0
8000
0.9
1
Error (Pixels)
Similarity (Index)
Analysis - Scene 2 (N, N + 1) AverageFramework
Reference
Framework
Difference
0
600 000
0.9
1
Error (Pixels)
Similarity (Index)
Analysis - Scene 3 (N, N + 1) AverageFramework
Reference
Framework
Difference
Error (Pixels)
Similarity (Index)
0
600 000
0.9
1
Analysis - Pearson correlation coefficient
Pearson correlation Magnitude
Scene 1 - 0.746 86%
Scene 2 - 0.761 87%
Scene 3 - 0.854 92%
Scene 1 Scene 2 Scene 3
SSIM Quality SSIM Quality SSIM QualityPix
el D
iffer
ence
Pix
el D
iffer
ence
Pix
el D
iffer
ence
[5]
Conclusions & Future Work
● Unity's built-in approach generally performed better in terms of SSIM
● Long pre-processing time, the process could be more parallel
● Improvements to our approach could be made
○ Fine-tuning of picking reference camera
References[1] David P Luebke. Level of detail for 3D graphics. Morgan Kaufmann. 2003.
[2] Unity - Manual: LOD Group. [Online; accessed 25-May-2018].
[3] Zhou Wang, Alan C Bovik, Hamid R Sheikh, and Eero P Simoncelli. Image quality
assessment: from error visibility to structural similarity.
IEEE transactions on image processing, 13(4):600–612, 2004.
[4] Hector Yee. Perceptual metric for production testing.
Journal of Graphics Tools, 9(4):33–40, 2004.
[5] SPSS Tutorials: Pearson Correlation. [Online; accessed 25-May-2018]