Lab3(CSE782 in AU06)
Teng-Yok Lee
Context
Introduction
In this lab I am trying to answer the Question 7.1 in the textbook. I implemented the multijittering algorithm as a plugin in PBRT and compared the result with those obtained by using stratified jittering under different sceneraios. The detail of the algorithm could be seen in Chiu et al (1994).
The test cases include textute mapping (case 1), depth of field (case 2)and illumination under are light (case 3).
The test datasets I used and the output images were archied in .zip format, which could be downloaded from the links below:
Case 1: Antialiasing for Texture Mapping
To test the effect of jittering in texture mapping, I generated images from a plane with checkerboard texture. The result is shown in the following table. It could been seen that the image without jittering has largest variance in upper area, while multijittering method could generate least variance than other methods in the area with higher variation.
Compasison of Stratfied Jittering and Multi Jittering for texture mapping. (M=4, N=4)
| Without Jittering
| Stratified Jittering
| Multijittering
|
|
|
|
Case 2: Depth of Field
In this section the effect of jittering to depth of field is examined. It still could be seen that images generated without jittering still has largest variation than others. However, for this dataset, the difference between stratified jittering and multijittering is not obvious. One reason might be that there is no high frequency patter in this image, so the benefit of multijittering becomes small.
NOTE: the blue points in the left picture and the blue circles in other pictures were the side effect created after converting the image from TIF format to PNG format. (I used the utility CONVERT in the freeware ImageMagik to do this). There is no such a pattern in the original .TIimages in .TIF format. But it does not affect the conclusion. The archie pf the images could be downloaded from this link.
Compasison of Stratfied Jittering and Multi Jittering for depth of field. (M=4, N=4)
| Without Jittering
| Stratified Jittering
| Multijittering
|
|
|
|
Case 3: Illumination and Shadow under Area Light
Here the effect of different jittering method to the intergrator is examined. There are two ways to distribute the samples. As what the stratified plugin in PBRT does, one is to use LatinHyperCuber method to generate integrator samples for each image sample. The other one is to uniformly distrubte all integrator samples for a pixel in 2D space in order to sample more information. I used multijittering to generate the 2D samples. The detail of my implementation could be seen in the sumitted README file.
One test result is shown in the table below. Here both generate the same number of integrator samples and the same number of image samples. I used 16 integrator samples and 2 x 2 image samples. Similarly to what is described in Section 7.2, the second method should generate images in better quality since the first meothod could not guarantee that all shadow rays from the image samples in a pixel are uniformly distributed.
Compasison of LHC and Multi Jittering for illuimination and shadow.
|
| LHC
| Mulitjittering
|
| Whole Image
|
|
|
| Lit Area
|
|
|
| Shadow Area
|
|
|
Conclusion
From the above test, we could find out that the multijittering could work better than the stratified jittering for textures with high variation. Besides, If the distribution of shadow rays inside a pixel could be more uniformly distributed in the 2D space, more information could be revealed with less noise in the same number of shadow rays.
- [Chiu er al. (1994)] Kenneth Chiu, Peter Shirley, and Changyaw Wang. Multi-Jittered Sampling, In Graphics Gems IV. Academic Press, 1994.
teng-yok lee
Last modified: Sat Nov 11 22:02:02 EST 2006