Extended Quadric Error Function for Surface Simplification

Deepak Bandyopadhyay

Line

End-Semester Final Report (12/16/00)

The final project presentation is here (PPT, 850k)

CAVEAT: This page is best viewed with Internet Explorer 4.0 and above. If you view on Netscape 4.0x or another browser, some of the math symbols won't show properly, but otherwise you should be fine.

REDEFINITION OF GOALS

As happens with many projects, what was initially proposed did not work out to be a viable solution to get good results, and the goals were amended somewhat. Details:

STUFF DONE

RESULTS

Here are a few images demonstrating what we observed:
original cow model 
 
original bunny model
 
cow, 3000 triangles, spheres x1000, original QEM
 
cow, 3000 triangles, Variant 1 (QVEP)
 
3000 triangles, Variant 2 (DF/VEP QNV Hybrid)
 
3000 triangles, Variant 3 (DF All the Way)
 
1000 triangles, spheres x100, original QEM
 
1000 triangles, Variant 1 (QVEP)
 
1000 triangles, Variant 2 (DF/VEP QNV Hybrid)
 
1000 triangles, Variant 3 (DF All the Way)
 
250 triangles, original QEM
 
250 triangles, Variant 1 (QVEP)
 
250 triangles, Variant 2 (DF/VEP QNV Hybrid)
 
250 triangles, Variant 3 (DF All the Way)
 
1000 triangles tail view, original QEM
 
1000 triangles tail view, Variant 1 (QVEP)
 
1000 triangles tail view, Variant 2 (DF/VEP QNV Hybrid)
 
1000 triangles tail view, Variant 3 (DF All the Way)
 
bunny, 1000 triangles, spheres x1000, original
 
bunny, 1000 triangles, Variant 3 (DF all the way)
 

DISCUSSION OF RESULTS

  1. Variant 1 is just a proof of concept of vertex error propagation. So we don't discuss its properties other than that it behaves surprisingly similar to the original QEM, from the plane sphere diagrams we can see that almost all the vertices picked for simplification are the same. This seems to indicate that having vertex error propagation does not alter the QEM substantially, since maybe it has this error inherent in the merge error of each vertex. To illustrate, when 2 merged vertices x and y formed out of unmerged vertices (p,q) and (r,s), E(x) = E(p) + E(q) + xT(Qp+Qq)x and E(y) = E(r) + E(s) + yT(Qr+Qs)y are merged to z, the error is now E(z) = zT(Qp+Qq+Qr+Qs)z + E(x) + E(y). This now has some terms depending on x and y, though the z term has all the 4 quadrics and z itself depended on the quadrics of x and y, so it is conceivable that this term still dominates as is seen to happen.
  2. Variant 2 is sort of the best of both worlds - its results are pretty good (except for fidelity to the model at low triangle counts). Using QEM to position the new vertex does bring an improvement of quality over variant 3 which is mostly perceptible from the plane spheres though it is hard to tell by looking at the simplified model.
  3. Variant 3 is our most significant finding - here we have kept the backbone of the QSlim code but apart from maintaining quadrics for calculating the distance function easily, we don't use them at all. In particular there is no quadric optimization at any stage of the algorithm. Still the quality is very similar to that attained by the original at most high to average (not very low) triangle counts.
  4. The weird black spots seen in some of the demos and some non-manifold surfaces in simplified models of the cow are nothing but flipped triangles drawn with the back face facing the viewer. QSlim, possibly due to some clever properties of the QEM, manages to avoid showing too many of these at high enough triangle counts, though in the DF-based variants they do show up over time, for example in the Happy Buddha demonstration when 407k triangles are compressed to 4k.
  5. The spurious geometry that one saw in the models for the midterm report went away when we stopped using the Euclidean part of the distance function, or alternatively when we constrained the new vertex to lie on the edge instead of anywhere in space. So we got rid of the Euclidean term, though this may have been a premature termination of this route in the heat of the deadline, a route which could yield interesting results if we take it up again after solving the spurious geometry problem another way.
  6. Disconnection or spurious connection near the cow's tail was improved quite a lot at moderately low triangle counts (eg. 1000) by eliminating the Euclidean distance term in the DF.