3.8 屏幕后处理(8) - 高斯模糊

1.高斯模糊简介

2.高斯模糊效果的优化

3.高斯模糊基础版实现

4.高斯模糊进阶版本实现


1.高斯模糊简介

1).高斯模糊
高斯模糊是利用高斯函数计算出高斯滤波核中每个元素并进行归一化处理后, 再和目标像素颜色通过卷积计算得到最终的结果

a.高斯函数计算出高斯滤波核中每个元素这个步骤相当于计算权重值
    
b.归一化处理是避免像素的亮度超过原来像素的亮度

在这里插入图片描述

a.σ是标准方差, 一般取值为1即可

b.x和y是相对于高斯核中心的整数距离

c.e是自然对数的底 ≈ 2.71828

d.π是圆周率 ≈ 3.14159
2).高斯滤波核
高斯滤波核被称为高斯核, 它其实是一个n * n的卷积核, 它的大小可以自定义, 但是一般会是奇数 * 奇数的大小, 通常会

是一个 3 * 3, 5 * 5, 7 * 7, 9 * 9的大小
"滤波核越大, 模糊效果越明显"

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

我们通常会使用"5 * 5"的大小, 高斯滤波核中的权重值, 我们通过"二维高斯函数"来确定

在这里插入图片描述
在这里插入图片描述

3).归一化处理

在这里插入图片描述

注: "高斯滤波核中的数值是定死的规则, 可以直接写死参与计算, 不用在代码中用高斯函数计算,会浪费性能"

3.高斯模糊效果的计算公式优化

3.1.引出问题

如果我们直接基于它的基本原理进行计算, 计算效率比较低, 因为对于一张长W, 宽H的图像, 会进行 "5 * 5 * W * H" 次纹

理采样的颜色计算

在这里插入图片描述

为了降低计算次数, 利用二维高斯函数的数学特性(可分离性), 二维高斯函数可以表示为两个一维高斯函数的乘积, 从而大

幅减少计算量

在这里插入图片描述

高斯滤波在图像的实现可以用两个一维高斯核分别两次加权实现, 也就是先一维X方向卷积, 得到的结果再一维Y方向卷积

在这里插入图片描述

在这里插入图片描述

通过对计算公式的优化, 我们将原本需要N * N * W * H的计算次数(N为高斯核大小)优化为了 

2 * N * W * H, 相当于将时间复杂度从O(n²)降低到了O(n)
"注: 一个5×5的二维高斯核可以拆分成两个大小为5的一维高斯核, 因此我们只需要计算5个纹理坐标即可"

3.高斯模糊基础版实现

在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


3.高斯模糊进阶版本实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值