{'fraction_non_alphanumeric': 0.01718213058419244, 'fraction_numerical': 0.002577319587628866, 'mean_word_length': 5.4010989010989015, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Matrix Bidirectional Path Tracing

Sampled paths in Monte Carlo ray tracing can be arbitrarily close to each other due to its stochastic nature. Such clumped samples in the path space tend to contribute little toward an accurate estimate of each pixel. Bidirectional light transport methods make this issue further complicated since connecting paths of sampled subpaths can be arbitrarily clumped again. We propose a matrix formulation of bidirectional light transport that enables stratification (and low-discrepancy sampling) in this connection space. This stratification allows us to distribute computation evenly across contributing paths in the image, which is not possible with standard bidirectional or Markov chain solutions. Each element in our matrix formulation represents a pair of connected eye- and light-subpaths. By carefully reordering these elements, we build a 2D space where equally contributing paths are distributed coherently. We devise an unbiased rendering algorithm that leverages this coherence to effectively sample path space, consistently achieving a 2 − 3 x speedup in radiometrically complex scenes compared to the state-of-the-art.