在渲染中我们在做各种up sampling的时候,会常常使用poisson disk distribution。 常常来说,我们就知道这个东东效果很好,就作为一个“黑盒”工具来使用,和高斯blur有点像,反正就用了。
那这个poisson disk distribution到底是什么,为何有这样的特性呢?
简单人话
poisson disk distribution就受灵长类的视网膜细胞的分布启发得来的一种分布。 在做up sample的时候,以这样的方式来分布,正好契合视网膜细胞的特点,会被视觉系统感受最“自然”。 算是一个对症下药的得来。
details
采样(sample)
在数字信号处理中,采样就是:
In signal processing, sampling is the reduction of a continuous-time signal to a discrete-time signal
在视觉系统中,我们做的采样就是把连续的(相对视觉系统来说,不谈光子的理论)光信号,变成离散的视网膜细胞脉冲的过程,进而来完成视觉感知。
视网膜细胞的分布
这里就是视网膜细胞的分布,它满足这样的特点:
最后呈现这样的结果:
- 会把低频的走样(aliasing)变成高频的noise,也就是我们视觉上觉得更少的瑕疵;
上面这个高频noise也叫作 blue noise power spectrum(高频noise为主的);
这里的关于noise可以看wikipedia这里color of noise; blur noise power spectrum就是高频为主的noise;
poisson disk distribution
Poisson-disc sampling produces points that are tightly-packed,
but no closer to each other than a specified minimum distance,
resulting in a more natural pattern.
用途
各种up sampling,尤其是现在越来越多的raytracing的denoise系列的技术中心;
另外其自然分布的属性,也带来了树的分布以及树叶分布等;
referernce
- https://medium.com/@hemalatha.psna/implementation-of-poisson-disc-sampling-in-javascript-17665e406ce1
- Multi-ClassPoissonDiskSampling
- super sampling
- https://www.jasondavies.com/poisson-disc/
|