3d geometry coding using mixture models and the estimation quantization algorithm sridhar lavu...

Post on 13-Jan-2016

214 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

3D Geometry Coding using

Mixture Models andthe Estimation Quantization

AlgorithmSridhar Lavu

Masters DefenseElectrical & Computer Engineering

DSP Group Rice UniversitySeptember 2002

3D Surfaces

• Video games

• Animations - Bug’s Life, Toy Story 2• 3D object modeling - CAD• e-commerce

3D Surfaces

• Geometry, color, texture• 3D scanning• Polygon meshes• Problem - large data sets• Geometry compression

100,000 triangles

Contribution

• 3D geometry coder• Multilevel representation

– Normal meshes

• EQ algorithm– Estimation-Quantization (EQ)– Local context information

• RD optimization

Related Work

• Zerotree coder for the wavelet coefficients of normal meshes

• RD optimization based quantization algorithm for the wavelet coefficients of meshes

Outline

• 3D surface data• Multilevel representation• Normal meshes• Wavelet transform• EQ algorithm• Error metrics• Results

3D geometry data

• Geometry• Polygon meshes• Geometry & connectivity

Geometry0.0 0.0 0.01.0 0.0 0.01.0 1.0 0.00.0 1.0 0.00.5 0.5 1.0

Connectivity0 1 22 3 10 1 41 2 42 3 43 0 4

Multilevel Representations

Original Coarse Multilevel triangular meshes

Original Normal meshes

Normal meshes

• Multilevel representation• Base mesh• Successively refine the mesh

– Subdivision

Subdivision

• Linear subdivision• Butterfly subdivision• Loop subdivision

Butterfly Subdivision

Normal Meshes

• Predict b and n• Find intersection• Store offset• 1 number per vertex

Wavelet Transforms

• Irregular data• Lifting scheme – predict and

update• Subdivision – predict step• Wavelet transforms

– Butterfly wavelet transform– Loop wavelet transform

Wavelet Transforms and Normal Meshes

Wavelet coefficients Non-normal vertices

Related Work - Zerotree

ZerotreesZerotree coding

Mesh zerotree

Meshzerotreecoding

EQ coding

Review

• Multilevel representations for meshes

• Normal meshes• Wavelet transforms

– Subdivision– Lifting

• Related work - ZT based algorithm• Contribution – EQ based algorithm

3D EQ Coder

• Local context information• Model for wavelet coefficients

– Generalized Gaussian distribution

• EQ Algorithm– Estimate Step– Quantize Step– RD Optimization

Wavelet Coefficient Model

• Generalized Gaussian distribution

Wavelet Coefficient Model

• Generalized Gaussian (GGD) Shape Fixed at each level Variance Local neighborhood Mean Zero

EQ Algorithm

• Scan the vertices– Estimate, quantize, encode

• Estimate step - variance– Local neighborhood– Causal neighborhood– Quantized neighbors

• Quantize step– Deadzone quantizer– RD optimization

EQ Algorithm (cont.)

• RD optimization– Rate = -log(probability)– Distortion = MSE of coefficients

• Entropy coding– Arithmetic coder

Normal vs. Tangential

• Smooth surfaces• Global error contribution

– Normal Higher– Tangential Lower

• Precision

– Normal Higher Lower – Tangential Lower Higher

• Most tangential components are zero– Single quantizer per level

Neighborhood

Ordering - Base Triangles

Ordering - Vertices

Summary of EQ Algorithm

• Pick • Determine ordering

– Ordering of base triangles– Ordering inside each base triangle

• Local causal neighborhood

• Estimate • Quantize using RD optimization• Normal vs. tangential

• Error metrics• MSE ?• Hausdorff distance

• Min, max, mean, mean squared

Performance Measure

Results• Metric - PSNR • Bits-per-vertex (bpv)• Reconstructed mesh vs. original mesh• Metro and MeshDev software tools

Results - EQ vs. ZT

Results EQ vs. ZT(Lifted Butterfly)

Results - EQ vs. ZT(Loop Wavelets)

Results (Bounds)

• Upper bound– Complete context

• Lower bound– No context

Summary

• Multilevel representations• Normal meshes• Wavelet transforms• GGD model• Local context based coder• EQ vs. ZT

Conclusion & Future Work

• Conclusions– GGD model + EQ algorithm– 0.5 – 1 dB gain

• Future work– Vertex based error for RD optimization

• New algorithms– Space-Frequency quantization (SFQ)

Scaling Coefficients andConnectivity

• Scaling coefficients– Vertices of base mesh– Uniform quantization

• Connectivity– Semi-regular connectivity– Base mesh connectivity– TG Coder (lossless)

Lifting (Predict, Update)

Forward

Inverse

Lifting - Haar

• Split• Predict• Update

Loop Wavelet Transform

Causal Neighborhoods

EQ – Unpredictable sets

• Empty causal neighborhood• Zero estimate• Classify as unpredictable (U) set• Model U set as zero-mean GGD• Use a single and for U set

EQ – Threshold step

• Iteration of E and Q steps• First iteration• Threshold coefficients• Partition U and P sets• Estimate and • Use estimates in next iteration

Normal Predictable Set

Normal Unpredictable Set

Tangential Set

Hausdorff Distance

Mesh Zerotree Coding

Results – Venus PSNR

BPV 0.25 0.5 1.0 2.0 3.0 4.0

EQ lifted BW 63.7 68.6 74.2 79.2 81.7 83.2

ZT lifted BW 63.0 68.2 73.7 78.9 81.7 81.9

EQ unlifted BW 63.5 68.6 74.1 78.9 81.4 83.0

ZT unlifted BW 62.4 67.8 73.0 78.4 81.2 81.5

EQ Loop Wavelet 60.0 65.3 71.3 76.4 79.4 81.4

ZT Loop Wavelet 60.9 66.1 71.8 77.1 79.7 79.7

Results – Rabbit PSNR

BPV 0.25 0.5 1.0 2.0 2.5 3.0

EQ lifted BW 70.3 75.7 80.9 84.2 85.1 85.6

ZT lifted BW 69.3 75.1 80.9 84.0 84.1 84.1

EQ unlifted BW 70.0 75.3 80.6 84.0 85.0 85.5

EQ unlifted BW 68.7 74.7 80.4 83.6 83.6 83.6

top related