Realistic Image Synthesis Using Photon Mapping
Henrik Wann Jensen
In his well presented and very well researched book, Henrik Wann Jensen demonstrates the technique of photon mapping. In the field of computer graphics, realistic images are the results of physical simulations of light transport programmed and run on digital computers. The photon mapping algorithm is a method of simulating light transport through dense materials like marble or materials with participating media such as smoke in air. I found the book to be well written and thorough, although it should be noted that photon mapping is a highly specialized topic in the field of computer graphics.
The primary audience for this book will be computer graphics researchers in either industry or academia interested in creating highly realistic images, and computer graphics students at the graduate or advanced undergraduate level. The introduction and background chapters are particularly well written, making this a useful text for a graduate-level course in image synthesis. The author assumes a working knowledge of computer programming and of mathematics, including advanced calculus and linear algebra. A familiarity with current computer graphics issues and techniques is also assumed.
The book is divided into three sections. The first section combines background, introduction, and review, and as noted above, it is very well written and presented. Chapter 2 of the bookcovers the physics and mathematics of light transport and the interaction of light with surfaces. Chapter 3 introduces the Monte Carlo ray tracing algorithm (MCRT). The MCRT is a point sampling method used to determine pixel color values in a digital image. The MCRT is then extended to include photon path tracing, a method of tracing photons from light sources to surfaces.
The second section is a description of and details for implementing the photon map algorithm. Computer graphics researchers tend to be very visual learners, and I believe that, like me, they will appreciate the large number of highly detailed figures in this section of the book. Every aspect of photon mapping is accompanied by a useful figure. Pseudocode is provided for all of the algorithms discussed in the implementation sections. Chapters 4, 5, and 6 cover the path tracing algorithm and a computer data structure used to hold precomputed photon path information. Chapters 7, 8, and 9 cover the implementation of the photon map algorithm itself and aid the reader in the development of intuition for the photon mapping process. It is worth noting that this bookcovers all computer graphics surface material models, from pure lambertion to an enhanced Bidirectional Reflectance Distribution Function. The third section of the book is an advanced discussion of participating media and a chapter on optimizations of the basic photon map algorithm. Appended to the bookare a discussion of noise reduction in the MCRT, C++ code for a complete implementation of the photon map algorithm, and CAD model data for the cognac glass pictured on the book's cover.Bruce Gooch