这篇文章中主要介绍锐化(sharpening)效果。如果说模糊是一种去中心化,使得像素边缘及灰度跳变的部分趋于平滑,而锐化则是恰恰相反。
在百度百科,对锐化的描述如下:
图像锐化(image sharpening)是补偿图像的轮廓,增强图像的边缘及灰度跳变的部分,使图像变得清晰,分为空域处理和频域处理两类。 图像锐化是为了突出图像上地物的边缘、轮廓,或某些线性目标要素的特征。 这种滤波方法提高了地物边缘与周围像元之间的反差,因此也被称为边缘增强。
我们的实现也是颇为简单,在上一篇中我们事先高斯模糊的时候,定义了一个滤波器数组以及一个用来做权重的平滑矩阵,如下:
1 | float4 doFilter(float3x3 fil , float2 texSize , float2 uv) { |
在 main
方法里定义的 fil
使得我们单个像素的颜色与周围颜色权值叠加,给一种模糊的效果,而锐化则是将 fil
改为:
1 | float3x3 fil = float3x3( |
效果如下:
源代码:Post Processing