next up previous [pdf]

Next: Conclusions and Future Work Up: Ray tracing modeling and Previous: Ray Representation

Ray-Tracing Inversion

As shown earlier, ray tracing with binning can give a quick but crude approximation of the light intensity field at the pool floor. If we have a ray count for light intensity created using the exploding surface model, we can use a simple geometric approach for inversion. In two dimensions, the ray count in a single bin corresponds to the number of surface segments whose normal vectors point to that bin. If no rays hit the side-walls of the pool, the surface can be reconstructed by assigning each surface segment to one unit of ray count in the intensity field; every assignment means the starting and the ending points of a refracted ray. However, there are many permutations of assignments that can produce the same intensity field. With this formulation, the inversion becomes a combinatorial optimization problem which could be implemented using a heuristic search method. The right panel of Figure 10 shows one possible surface obtained using simulated annealing. Although the obtained solution might be physically inaccurate, the ray counts produced by the two surfaces in the figure are identical. This numerical non-uniqueness is the result of simplified implementation of the theory - finite ray tracing with binning.

fig-subcaustics
fig-subcaustics
Figure 10.
Left: ray tracing forward modeling for a surface. Right: One of the many surfaces obtained by inversion using ray-count. The upper graphs are the surface function, middle plots are the ray tracing of light under the surface, and the bottom plots show the ray count at the bottom of the pool. [CR]
[pdf] [png]

fig-precaustics
fig-precaustics
Figure 11.
Left: ray tracing forward modeling of pre-caustics intensity field. Right: The inversion result by minimizing distances traveled by rays. [CR]
[pdf] [png]

Despite the large null space, a large number of solutions can be tested at a minimal cost because the full forward modeling is not needed. The desired solution lies within the null space. Most of the solutions in the null space are physically impossible. Therefore, these solutions can be discarded using an energy function. For example, for a pre-caustic slice the energy function can be the sum of distances traveled by the rays:

$\displaystyle E($solution$\displaystyle )=\sum_i^N{\vert\vec p_i\vert}\quad.$ (9)

Minimizing the energy function proposed yields the correct solution if given enough iterations (see Figure 11). In fact, simulated annealing can be reduced to the greedy algorithm, which moves only toward better solutions. Inversion for intensity fields below caustics needs a more elaborate energy function. The resolution that binning provides is insufficient to resolve the caustics, especially where the caustics overlap. In three dimensions, there are more constraints on the solutions because neighboring quads of the surface must match for the surface to be continuous. Therefore, I expect that the search space reduces radically, and it can be traversed using a tree search algorithm to find a good approximate solution. Using this geometric search for a solution might not obtain the result but it can provide very cheaply a good approximation that can be used as a starting model for other inversion of real function.


next up previous [pdf]

Next: Conclusions and Future Work Up: Ray tracing modeling and Previous: Ray Representation

2009-04-13