7491S06 Final

 

Individual, open books. Due as MS Word or PDF files via Email on Tuesday May 2, at 4pm. Please include your name in the file. The answer to each question should not significantly exceed 500 words. Images and references to class projects, lectures, papers will appreciated.

 

1) Virtual Express

Company C3D provides virtual tours. You send them a 3D model of a proposed development, hotel, factory, airplane, amusement park, campusÉ and they build a virtual tour which customers, sponsors, politicians, inspectors, or public can use to evaluate the proposed construction. The guests of a virtual tour sit in a fixed golf cart and use the golf cart steering wheel and pedals to move its virtual position and orientation in the 3D model. All passengers wear head-mounted displays with head orientation tracking (no position tracking) so that the images rendered are rendered as if each passenger was at the center of the golf cart. The golf cart is free to drive on the Òdrivable surfaceÓ (streets, corridors, alleys) and is prevented by the software from running into walls or objects (this collision prevention uses a hand-painted image indicating drivable surface as black pixels on a white background). To produce realtime rendering, C3D uses off-the-shelf simplification (collapse edges of triangle meshes) and automatic levels of detail selection (so that distant models are rendered at lower resolution). The simplification offers one parameter of overall quality that they play with to ensure a compromise between frame rate and image quality. They need close to 60 frames per second for the head-mounted displays, otherwise passengers get sick quickly, which increase cleaning cost and reduces the benefit of the whole experience. They just got a model of a very complex power plant. The rendering is far too slow. They have cranked the simplification up to the limit of acceptable image quality. Yet, they get at best 5 frames per second. The main room of the power plant is huge and filled with all sorts of machines which are filters connected by ducts. A large fraction of these are visible from most places because there are no walls or obvious occluders. Hence identifying the hidden models from the viewpoint will not be sufficient (even if you had the software to do this). They have only 48 hours to increase the frame rate to 60 frames a second. They told you that this model has roughly the same number of triangles as some other models for which they get close to 60 frames a second. They have a small team of good programmers who know graphics (hardware and software) and geometry, but are unwilling to invent new stuff or rewrite complex modules (such as a custom simplification) in this short amount of time. You are hired as an expert to tell them what to do. Please provide a short description of the problem (why simplification is no helping and what exactly causes the problem). Then provide a brief outline of the essence of what needs to be done, followed by a detailed plan of what they should implement first, how they should test and debug it, including details for implementing the more complex parts. If you are unsure of what the best solution is, suggest some tests that could be performed quickly, discuss what the different outcomes of the tests would imply, and then assume one interesting outcome to continue the development of your strategy. Remember that the coding, testing, and preprocessing (if any) must be finished in 48 hours. Also remember that I am expecting about 500 words and that there are 4 more questions, just as exciting as this oneÉ if not more!

 

2) Board Walk in the Sand

You are asked to review a short abstract (below) submitted to a major conference. You want to do a great job at this review so that you get invited to the program committee next year. So you want to show that you have understood the approach better than the autors by providing the missing details and fixing the problems if any. First provide the missing details about the algorithms implied here. Then, for each claim, state whether it is correct or not and justify your conclusion (with a detailed proof or clear counterexample figure and explanation). Then conclude on the validity of the whole approach. If the approach is always correct, indicate how it compares to prior results and state its merits/drawbacks. If incorrect, try to characterize the situations (models) for which the approach will not work and estimate how often they occur. Then suggest one or more research venues for extending this approach so that it is guaranteed to work for all planar triangle graphs.

ÒWe present a new approach for compressing the connectivity of planar triangle graphs (which represent the incidence in triangle meshes that are homeomorphic to a sphere). The approach initializes the board walk B with a single seed triangle (marking it and its 3 vertices as visited) and grows B by adding one triangle T at a time. T must be connected to B by an edge and its tip (third vertex) must not have yet been visited (we mark T and its tip vertex as visited). Assume that the mesh has n vertices. The remaining (not marked) triangles form the sand S not yet covered by the board walk. We compress the sand using Edgebreaker.

Claims:

a - B has n-2 triangles.

b - We can always encode the connectivity of B using 2n-4 bits.

c - S is a simply connected triangle graph with no interior vertices.

d - S has n-2 triangles.

e - We can always encode the connectivity of S using 2n-4 bits.

f - The whole connectivity may be encoded using 2 bits per triangle.

The approach proposed here for compressing the connectivity of triangle meshes is simpler to implement than and competitive with previously proposed ones.Ó

 

3) Disoriented Compressor

Assume that you have a triangle mesh represented by the V table of our Corner Table. The triangles are not consistently oriented. We want to try and use Edgebreaker compression without having to build a consistent orientation. First, explain how to build the O table without changing the original orientation of the triangles. Then, explain whether it is possible to perform the Edgebreaker traversal on such a Corner Table and to use the corresponding CLERS symbols as a compressed version of the connectivity. If not, explain clearly why not. If yes, suggest a variation of Edgebreaker where you would chose the orientation of each triangle so that no L symbols are necessary and discuss the resulting guaranteed compression results.

 

4) Crashing edges

Consider that at time t=0, a triangle mesh is free from self-intersection. You know that the magnitude of the velocity of each vertex of the mesh is bounded by M. (I.e., no vertex will travel further than distance M per unit of time.) Assume that M is small compared to the minimum edge length. Suggest an exact conservative test (except for numeric round-off errors) that will tell you whether at t=1 the mesh may self-intersect or not. Of course, we want a useful test, so it should not say ÒmaybeÓ too often. Formulate your test in terms of simple geometric primitives and geometric operations and provide enough details to guide an implementation.

 

5) Tracking waters

The US government has a detailed map of the coast (land/water borders with sea, ocean, lakes) and of the rivers with their tributaries, including even the small streams. Lots of data. They want to post in compressed format  on the Internet (really!). Please suggest a compression scheme and argue how many bits the whole thing will take. (If needed, base your argument on realistic statistics of the length of the coast and rivers and on the desired accuracy that one may need when using this data to track environmental changes or to resolve property disputes.) You do not need to provide the detailed algorithms or coding schemes, but you should make sure that your description of the overall approach will be understood by experts in this domain and that these experts will be able to follow and verify your estimates (so state your assumptions and the logic clearly).