本章为大家带来高斯模糊的实现
2d-sprite-gaussian-blur-v1
首先,来点简单的,比如:高斯模糊的英文名叫 Gaussian Blur。
关于高斯模糊的原理,在我学习过程中,下面两篇文章是我觉得最能通俗易懂的介绍其工作原理的
十分建议先阅读以上文章,对高斯模糊有个认识。
一、 高斯模糊复习
阅读完高斯模糊,我自己的简单理解,一个像素点要计算出其模糊后的值,那么要执行下面几步:
采样周边像素值
根据被采样像素点和当前点的距离,计算出对应的权重值
求出周边像素值的加权平均值
当然,这里面有两个问题:
Q1:什么才是周边像素值?
A1:这个范围可以很大,比如周边就是全图,每计算一个点,都要收集全图像素点参与计算。也可以很小,只收集某个范围内的像素点,那么选哪个呢?
Q2:权重值怎么定义?
A2:高斯模糊实际上也叫高斯分布,不同距离的采用的加权值,实际是按照高斯分布(也叫正态分布)去计算的:
正态分布,来自百度百科图片
从上图,我们可以知道,大于 3σ(σ读标准差,英文术语 Stdev) 距离之外的点就几乎可以忽略,可以不参与模糊计算。而这一点在之前的 维基百科引文 中