Sobol QMC sampler (sobol)

sobol_a.png sobol_b.png
(a) A projection of the first 1024 points onto the first two dimensions. (b) A projection of the first 1024 points onto the 32 and 33th dimension.

This plugin implements a Quasi-Monte Carlo (QMC) sample generator based on the Sobol sequence.
QMC number sequences are designed to reduce sample clumping across integration dimensions,
which can lead to a higher order of convergence in renderings. Because of the deterministic
character of the samples, errors willmanifest as grid ormoiré patterns rather than randomnoise, but
these diminish as the number of samples is increased.
The Sobol sequence in particular provides a relatively good point set that can be computed extremely
efficiently. One downside is the susceptibility to pattern artifacts in the generated image. To
minimize these artifacts, it is advisable to use a number of samples per pixel that is a power of two.
Because everything that happens inside this sampler is completely deterministic and independent
of operating system scheduling behavior, subsequent runs of Mitsuba will always compute the same
image, and this even holds when rendering with multiple threads and/or machines.
The plugin relies on a fast implementation of the Sobol sequence by Leonhard Grünschloß using
direction numbers provided by Joe and Kuo [24]. These direction numbers are given up to a dimension
of 1024. Because of this upper bound, themaximum path depth of the integratormust be limited
(e.g. to 100), or rendering might fail with the following error message: Lookup dimension exceeds the
direction number table size! You may have to reduce the ’maxDepth’ parameter of your integrator.
Note that this sampler generates a (0, 2)-sequence in the first two dimensions, and therefore the
point plot shown in (a) happens to match the corresponding plots of ldsampler. In higher dimensions,
however, they behave rather differently.
When this sampler is used to perform parallel block-based renderings, the sequence is internally
enumerated using a scheme proposed and implemented by Grünschloß et al. [12].

• This sampler is incompatible with Metropolis Light Transport (all variants).

Parameter Type Description
sampleCount integer Number of samples per pixel (Default: 4)
scramble integer This parameter can be used to set a scramble value to break
up temporally coherent noise patterns. For stills, this is irrelevant.
When rendering an animation, simply set it to the
current frame index. (Default: 0)

  • 最終更新:2014-07-25 11:07:50